mbox series

[v2,0/5] 9pfs: macOS host fixes

Message ID cover.1650553693.git.qemu_oss@crudebyte.com (mailing list archive)
Headers show
Series 9pfs: macOS host fixes | expand

Message

Christian Schoenebeck April 21, 2022, 3:08 p.m. UTC
A bunch of fixes for recently added (QEMU 7.0) 9p support on macOS hosts.

Note: there are still issues to address with case-insensitive file systems
on macOS hosts. But I'll send a separate RFC on that issue.

v1 -> v2:

  * Close open file descriptor and return 0 on success instead of descriptor.
    [patch 1], [patch 2]

  * Compare res == -1 instead of res < 0. [patch 1], [patch 2]

  * Move dev_t and errno translation functions from 9p.c to 9p-util.h
    [patch 3], [patch 4]

  * Extend in-code comment that dev_t conversion is actually in glibc format.
    [patch 3]

  * Make it clear from the commit log that not having translated errnos
    before actually violated 9p2000.L protocol. [patch 4]

  * Simply compare against ENOATTR only, instead of comparing against both
    ENOATTR and ENODATA and describe in commit log and in-code comment why
    that is fine. [patch 5]

Christian Schoenebeck (5):
  9pfs: fix qemu_mknodat(S_IFREG) on macOS
  9pfs: fix qemu_mknodat(S_IFSOCK) on macOS
  9pfs: fix wrong encoding of rdev field in Rgetattr on macOS
  9pfs: fix wrong errno being sent to Linux client on macOS host
  9pfs: fix removing non-existent POSIX ACL xattr on macOS host

 hw/9pfs/9p-posix-acl.c   | 12 +++++--
 hw/9pfs/9p-util-darwin.c | 36 ++++++++++++++++++++-
 hw/9pfs/9p-util.h        | 69 ++++++++++++++++++++++++++++++++++++++++
 hw/9pfs/9p.c             |  4 ++-
 4 files changed, 117 insertions(+), 4 deletions(-)