diff options
author | Greg Kurz <gkurz@linux.vnet.ibm.com> | 2016-06-06 11:52:34 +0200 |
---|---|---|
committer | Greg Kurz <gkurz@linux.vnet.ibm.com> | 2016-06-06 11:52:34 +0200 |
commit | 635324e83e238598e86628dba5ab62ce910e6f72 (patch) | |
tree | 959af05a3fb65f914171fa2c343f8b3fef9130b6 /hw/9pfs/codir.c | |
parent | 7cde47d4a89d5efefcc805788bc29133f4f3c5c7 (diff) | |
download | qemu-635324e83e238598e86628dba5ab62ce910e6f72.tar.gz qemu-635324e83e238598e86628dba5ab62ce910e6f72.tar.bz2 qemu-635324e83e238598e86628dba5ab62ce910e6f72.zip |
9p: switch back to readdir()
This patch changes the 9p code to use readdir() again instead of
readdir_r(), which is deprecated in glibc 2.24.
All the locking was put in place by a previous patch.
Reviewed-by: Eric Blake <eblake@redhat.com>
Signed-off-by: Greg Kurz <gkurz@linux.vnet.ibm.com>
Diffstat (limited to 'hw/9pfs/codir.c')
-rw-r--r-- | hw/9pfs/codir.c | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/hw/9pfs/codir.c b/hw/9pfs/codir.c index 8e3ba17bae..d91f9ad6eb 100644 --- a/hw/9pfs/codir.c +++ b/hw/9pfs/codir.c @@ -17,8 +17,7 @@ #include "qemu/coroutine.h" #include "coth.h" -int v9fs_co_readdir_r(V9fsPDU *pdu, V9fsFidState *fidp, struct dirent *dent, - struct dirent **result) +int v9fs_co_readdir(V9fsPDU *pdu, V9fsFidState *fidp, struct dirent **dent) { int err; V9fsState *s = pdu->s; @@ -28,11 +27,14 @@ int v9fs_co_readdir_r(V9fsPDU *pdu, V9fsFidState *fidp, struct dirent *dent, } v9fs_co_run_in_worker( { + struct dirent *entry; + errno = 0; - err = s->ops->readdir_r(&s->ctx, &fidp->fs, dent, result); - if (!*result && errno) { + entry = s->ops->readdir(&s->ctx, &fidp->fs); + if (!entry && errno) { err = -errno; } else { + *dent = entry; err = 0; } }); |