Skip to contentSkip to conversation

Differentiating names by adding a timestamp.

PATCH In review Madper Xie 2 participants 2 messages Oct 28, 2013

Subsystems (2)
lore
Share & tools
lore

Madper Xie

author
#0 lore raw

PATCH 1/1 Differentiating names by adding a timestamp.

pstore denominate dumped file as type-psname-id. it makes many file have the same name if there are many entries in backend have the same id. So adding a timestamp to file name.

---
 fs/pstore/inode.c | 26 ++++++++++++++++----------
 1 file changed, 16 insertions(+), 10 deletions(-)
fs/pstore/inode.c +16 -10
index 1282384..bf6ed3a 100644
@@ -315,32 +315,38 @@ int pstore_mkfile(enum pstore_type_id type, char *psname, u64 id, int count,
 
 	switch (type) {
 	case PSTORE_TYPE_DMESG:
-		sprintf(name, "dmesg-%s-%lld%s", psname, id,
-						compressed ? ".enc.z" : "");
+		sprintf(name, "dmesg-%s-%lld-%lld%s", psname, id,
+			timespec_to_ns(&time), compressed ? ".enc.z" : "");
 		break;
 	case PSTORE_TYPE_CONSOLE:
-		sprintf(name, "console-%s", psname);
+		sprintf(name, "console-%s-%lld", psname, timespec_to_ns(&time));
 		break;
 	case PSTORE_TYPE_FTRACE:
-		sprintf(name, "ftrace-%s", psname);
+		sprintf(name, "ftrace-%s-%lld", psname, timespec_to_ns(&time));
 		break;
 	case PSTORE_TYPE_MCE:
-		sprintf(name, "mce-%s-%lld", psname, id);
+		sprintf(name, "mce-%s-%lld-%lld", psname, id,
+			timespec_to_ns(&time));
 		break;
 	case PSTORE_TYPE_PPC_RTAS:
-		sprintf(name, "rtas-%s-%lld", psname, id);
+		sprintf(name, "rtas-%s-%lld-%lld", psname, id,
+			timespec_to_ns(&time));
 		break;
 	case PSTORE_TYPE_PPC_OF:
-		sprintf(name, "powerpc-ofw-%s-%lld", psname, id);
+		sprintf(name, "powerpc-ofw-%s-%lld-%lld", psname, id,
+			timespec_to_ns(&time));
 		break;
 	case PSTORE_TYPE_PPC_COMMON:
-		sprintf(name, "powerpc-common-%s-%lld", psname, id);
+		sprintf(name, "powerpc-common-%s-%lld-%lld", psname, id,
+			timespec_to_ns(&time));
 		break;
 	case PSTORE_TYPE_UNKNOWN:
-		sprintf(name, "unknown-%s-%lld", psname, id);
+		sprintf(name, "unknown-%s-%lld-%lld", psname, id,
+			timespec_to_ns(&time));
 		break;
 	default:
-		sprintf(name, "type%d-%s-%lld", type, psname, id);
+		sprintf(name, "type%d-%s-%lld-%lld", type, psname, id,
+			timespec_to_ns(&time));
 		break;
 	}
 
Signature · 1 line
1.8.4.1
#1 lore raw

To distinguish all events more precisely, "count" is needed to add to the name. Please see the commit below. 755d4fe46529018ae45bc7c86df682de45ace764

Seiji

Quoted 72 lines

-----Original Message-----
From: Madper Xie [mailto:[email protected]]
Sent: Monday, October 28, 2013 9:22 AM
To: Tony Luck; Seiji Aguchi; Anton Vorontsov; Colin Cross; Kees Cook
Cc: [email protected]; [email protected]
Subject: [PATCH] Differentiating names by adding a timestamp.

pstore denominate dumped file as type-psname-id. it makes many file have the same name if there are many entries in backend have the same id. So adding a timestamp to file name.

---
 fs/pstore/inode.c | 26 ++++++++++++++++----------
 1 file changed, 16 insertions(+), 10 deletions(-)
fs/pstore/inode.c +16 -11
index 1282384..bf6ed3a 100644
@@ -315,32 +315,38 @@ int pstore_mkfile(enum pstore_type_id type, char *psname, u64 id, int count,
 
 	switch (type) {
 	case PSTORE_TYPE_DMESG:
-		sprintf(name, "dmesg-%s-%lld%s", psname, id,
-						compressed ? ".enc.z" : "");
+		sprintf(name, "dmesg-%s-%lld-%lld%s", psname, id,
+			timespec_to_ns(&time), compressed ? ".enc.z" : "");
 		break;
 	case PSTORE_TYPE_CONSOLE:
-		sprintf(name, "console-%s", psname);
+		sprintf(name, "console-%s-%lld", psname, timespec_to_ns(&time));
 		break;
 	case PSTORE_TYPE_FTRACE:
-		sprintf(name, "ftrace-%s", psname);
+		sprintf(name, "ftrace-%s-%lld", psname, timespec_to_ns(&time));
 		break;
 	case PSTORE_TYPE_MCE:
-		sprintf(name, "mce-%s-%lld", psname, id);
+		sprintf(name, "mce-%s-%lld-%lld", psname, id,
+			timespec_to_ns(&time));
 		break;
 	case PSTORE_TYPE_PPC_RTAS:
-		sprintf(name, "rtas-%s-%lld", psname, id);
+		sprintf(name, "rtas-%s-%lld-%lld", psname, id,
+			timespec_to_ns(&time));
 		break;
 	case PSTORE_TYPE_PPC_OF:
-		sprintf(name, "powerpc-ofw-%s-%lld", psname, id);
+		sprintf(name, "powerpc-ofw-%s-%lld-%lld", psname, id,
+			timespec_to_ns(&time));
 		break;
 	case PSTORE_TYPE_PPC_COMMON:
-		sprintf(name, "powerpc-common-%s-%lld", psname, id);
+		sprintf(name, "powerpc-common-%s-%lld-%lld", psname, id,
+			timespec_to_ns(&time));
 		break;
 	case PSTORE_TYPE_UNKNOWN:
-		sprintf(name, "unknown-%s-%lld", psname, id);
+		sprintf(name, "unknown-%s-%lld-%lld", psname, id,
+			timespec_to_ns(&time));
 		break;
 	default:
-		sprintf(name, "type%d-%s-%lld", type, psname, id);
+		sprintf(name, "type%d-%s-%lld-%lld", type, psname, id,
+			timespec_to_ns(&time));
 		break;
 	}
 
--

1.8.4.1