linux-btrace.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [patch 3/5] blktrace: add back conversion
@ 2009-12-15 17:47 Edward Shishkin
  0 siblings, 0 replies; only message in thread
From: Edward Shishkin @ 2009-12-15 17:47 UTC (permalink / raw)
  To: linux-btrace

[-- Attachment #1: Type: text/plain, Size: 1 bytes --]



[-- Attachment #2: blktrace-fix-502889.patch --]
[-- Type: text/plain, Size: 1184 bytes --]

Fixup for bz 502889.

Problem:
when executing with /dev/cciss/foo (long path names)
btreplay complains (No such file or directory).

Bug: 
Missed back conversion of erscores to slashes.

Solution:
Convert underscores to slashes to restore device
names that have larger paths.

Signed-off-by: Edward Shishkin <edward@redhat.com>
---
 btreplay/btreplay.c |   13 +++++++++++--
 1 file changed, 11 insertions(+), 2 deletions(-)

--- blktrace.orig/btreplay/btreplay.c
+++ blktrace/btreplay/btreplay.c
@@ -1314,6 +1314,8 @@ static void reset_input_file(struct thr_
  */
 static void *replay_sub(void *arg)
 {
+        int i;
+	char *mdev;
 	char path[MAXPATHLEN];
 	struct io_bunch bunch;
 	struct thr_info *tip = arg;
@@ -1321,8 +1323,15 @@ static void *replay_sub(void *arg)
 
 	pin_to_cpu(tip);
 
-	sprintf(path, "/dev/%s", map_dev(tip->devnm));
-
+	mdev = map_dev(tip->devnm);
+	sprintf(path, "/dev/%s", mdev);
+	/*
+	 * convert underscores to slashes to
+	 * restore device names that have larger paths
+	 */
+	for (i = 0; i < strlen(mdev); i++)
+	        if (path[strlen("/dev/") + i] == '_')
+		        path[strlen("/dev/") + i] = '/';
 #ifdef O_NOATIME
 	oflags = O_NOATIME;
 #else

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2009-12-15 17:47 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-12-15 17:47 [patch 3/5] blktrace: add back conversion Edward Shishkin

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).