[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [Bug 1813307] [NEW] util/path.c/follow_path() does not hand
From: |
Christophe Lyon |
Subject: |
[Qemu-devel] [Bug 1813307] [NEW] util/path.c/follow_path() does not handle "/" well |
Date: |
Fri, 25 Jan 2019 14:17:10 -0000 |
Public bug reported:
Hello,
I noticed that qemu does not handle "/" very well in follow_path().
Specifically, I was trying to run gdbserver under qemu, and it failed
inside its implementation of __getcwd.
Indeed it does something like
if (__lstat ("/", &st) < 0)
.....
and then loops from current dir toward the top using lstat("..")
On qemu side, lstat forwards the request to follow_path() in util/path.c, and
when passed "/", it returns the path in QEMU_LD_PREFIX (which was the top of my
sysroot).
OTHT, the series of lstat("..") finally reaches the real device root because
it's not recognized as "/" in follow_path(), so this is inconsistent and
__getcwd fails.
I suppose there's a good reason for returning QEMU_LD_PREFIX when asking
for "/", but why is it so?
If there's no good reason, maybe the behaviour could be changed to map
"/" to "/" ?
Thanks
** Affects: qemu
Importance: Undecided
Status: New
--
You received this bug notification because you are a member of qemu-
devel-ml, which is subscribed to QEMU.
https://bugs.launchpad.net/bugs/1813307
Title:
util/path.c/follow_path() does not handle "/" well
Status in QEMU:
New
Bug description:
Hello,
I noticed that qemu does not handle "/" very well in follow_path().
Specifically, I was trying to run gdbserver under qemu, and it failed
inside its implementation of __getcwd.
Indeed it does something like
if (__lstat ("/", &st) < 0)
.....
and then loops from current dir toward the top using lstat("..")
On qemu side, lstat forwards the request to follow_path() in util/path.c, and
when passed "/", it returns the path in QEMU_LD_PREFIX (which was the top of my
sysroot).
OTHT, the series of lstat("..") finally reaches the real device root because
it's not recognized as "/" in follow_path(), so this is inconsistent and
__getcwd fails.
I suppose there's a good reason for returning QEMU_LD_PREFIX when
asking for "/", but why is it so?
If there's no good reason, maybe the behaviour could be changed to map
"/" to "/" ?
Thanks
To manage notifications about this bug go to:
https://bugs.launchpad.net/qemu/+bug/1813307/+subscriptions
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Qemu-devel] [Bug 1813307] [NEW] util/path.c/follow_path() does not handle "/" well,
Christophe Lyon <=