* [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).