Message ID | 20221024045759.448014-1-bin.meng@windriver.com (mailing list archive) |
---|---|
Headers | show |
Series | hw/9pfs: Add 9pfs support for Windows | expand |
Hi Christian, On Mon, Oct 24, 2022 at 1:16 PM Bin Meng <bin.meng@windriver.com> wrote: > > At present there is no Windows support for 9p file system. > This series adds initial Windows support for 9p file system. > > 'local' file system backend driver is supported on Windows, > including open, read, write, close, rename, remove, etc. > All security models are supported. The mapped (mapped-xattr) > security model is implemented using NTFS Alternate Data Stream > (ADS) so the 9p export path shall be on an NTFS partition. > > 'synth' driver is adapted for Windows too so that we can now > run qtests on Windows for 9p related regression testing. > > Example command line to test: > > "-fsdev local,path=c:\msys64,security_model=mapped,id=p9 -device virtio-9p-pci,fsdev=p9,mount_tag=p9fs" > > > Bin Meng (5): > qemu/xattr.h: Exclude <sys/xattr.h> for Windows > hw/9pfs: Drop unnecessary *xattr wrapper API declarations > hw/9pfs: Replace the direct call to xxxat() APIs with a wrapper > hw/9pfs: Introduce an opaque type 9P_FILE_ID > hw/9pfs: Update P9_FILE_ID to support Windows > > Guohuai Shi (11): > hw/9pfs: Add missing definitions for Windows > hw/9pfs: Implement Windows specific utilities functions for 9pfs > hw/9pfs: Handle current directory offset for Windows > hw/9pfs: Disable unsupported flags and features for Windows > hw/9pfs: Update the local fs driver to support Windows > hw/9pfs: Add Linux error number definition > hw/9pfs: Translate Windows errno to Linux value > fsdev: Disable proxy fs driver on Windows > hw/9pfs: Update synth fs driver for Windows > tests/qtest: virtio-9p-test: Adapt the case for win32 > meson.build: Turn on virtfs for Windows > With the latest 9p test case refactoring in the mainline, I will have to cherry-pick the following 2 patches in this series, to v6 of "tests/qtest: Enable running qtest on Windows" series [1], in order to get qtest on Windows build successfully. [06/16] hw/9pfs: Add missing definitions for Windows [15/16] tests/qtest: virtio-9p-test: Adapt the case for win32 I will include the above 2 patches in the v6 qtest windows support series. [1] http://patchwork.ozlabs.org/project/qemu-devel/list/?series=321695 Regards, Bin
On Thursday, October 27, 2022 6:19:27 PM CEST Bin Meng wrote: > Hi Christian, > > On Mon, Oct 24, 2022 at 1:16 PM Bin Meng <bin.meng@windriver.com> wrote: > > > > At present there is no Windows support for 9p file system. > > This series adds initial Windows support for 9p file system. > > > > 'local' file system backend driver is supported on Windows, > > including open, read, write, close, rename, remove, etc. > > All security models are supported. The mapped (mapped-xattr) > > security model is implemented using NTFS Alternate Data Stream > > (ADS) so the 9p export path shall be on an NTFS partition. > > > > 'synth' driver is adapted for Windows too so that we can now > > run qtests on Windows for 9p related regression testing. > > > > Example command line to test: > > > > "-fsdev local,path=c:\msys64,security_model=mapped,id=p9 -device virtio-9p-pci,fsdev=p9,mount_tag=p9fs" > > > > > > Bin Meng (5): > > qemu/xattr.h: Exclude <sys/xattr.h> for Windows > > hw/9pfs: Drop unnecessary *xattr wrapper API declarations > > hw/9pfs: Replace the direct call to xxxat() APIs with a wrapper > > hw/9pfs: Introduce an opaque type 9P_FILE_ID > > hw/9pfs: Update P9_FILE_ID to support Windows > > > > Guohuai Shi (11): > > hw/9pfs: Add missing definitions for Windows > > hw/9pfs: Implement Windows specific utilities functions for 9pfs > > hw/9pfs: Handle current directory offset for Windows > > hw/9pfs: Disable unsupported flags and features for Windows > > hw/9pfs: Update the local fs driver to support Windows > > hw/9pfs: Add Linux error number definition > > hw/9pfs: Translate Windows errno to Linux value > > fsdev: Disable proxy fs driver on Windows > > hw/9pfs: Update synth fs driver for Windows > > tests/qtest: virtio-9p-test: Adapt the case for win32 > > meson.build: Turn on virtfs for Windows > > > > With the latest 9p test case refactoring in the mainline, I will have > to cherry-pick the following 2 patches in this series, to v6 of > "tests/qtest: Enable running qtest on Windows" series [1], in order to > get qtest on Windows build successfully. > > [06/16] hw/9pfs: Add missing definitions for Windows > [15/16] tests/qtest: virtio-9p-test: Adapt the case for win32 > > I will include the above 2 patches in the v6 qtest windows support series. No need to add those patches as they are already being queued separately. Just add appropriate tag(s) to the first patch: Based-on: <MESSAGE-ID> I already had a quick look on this version, will try to give feedback tomorrow. This feature won't make it into 7.2 release anyway, so patience please. ;-) Best regards, Christian Schoenebeck > [1] http://patchwork.ozlabs.org/project/qemu-devel/list/?series=321695 > > Regards, > Bin >
On Fri, Oct 28, 2022 at 12:31 AM Christian Schoenebeck <qemu_oss@crudebyte.com> wrote: > > On Thursday, October 27, 2022 6:19:27 PM CEST Bin Meng wrote: > > Hi Christian, > > > > On Mon, Oct 24, 2022 at 1:16 PM Bin Meng <bin.meng@windriver.com> wrote: > > > > > > At present there is no Windows support for 9p file system. > > > This series adds initial Windows support for 9p file system. > > > > > > 'local' file system backend driver is supported on Windows, > > > including open, read, write, close, rename, remove, etc. > > > All security models are supported. The mapped (mapped-xattr) > > > security model is implemented using NTFS Alternate Data Stream > > > (ADS) so the 9p export path shall be on an NTFS partition. > > > > > > 'synth' driver is adapted for Windows too so that we can now > > > run qtests on Windows for 9p related regression testing. > > > > > > Example command line to test: > > > > > > "-fsdev local,path=c:\msys64,security_model=mapped,id=p9 -device virtio-9p-pci,fsdev=p9,mount_tag=p9fs" > > > > > > > > > Bin Meng (5): > > > qemu/xattr.h: Exclude <sys/xattr.h> for Windows > > > hw/9pfs: Drop unnecessary *xattr wrapper API declarations > > > hw/9pfs: Replace the direct call to xxxat() APIs with a wrapper > > > hw/9pfs: Introduce an opaque type 9P_FILE_ID > > > hw/9pfs: Update P9_FILE_ID to support Windows > > > > > > Guohuai Shi (11): > > > hw/9pfs: Add missing definitions for Windows > > > hw/9pfs: Implement Windows specific utilities functions for 9pfs > > > hw/9pfs: Handle current directory offset for Windows > > > hw/9pfs: Disable unsupported flags and features for Windows > > > hw/9pfs: Update the local fs driver to support Windows > > > hw/9pfs: Add Linux error number definition > > > hw/9pfs: Translate Windows errno to Linux value > > > fsdev: Disable proxy fs driver on Windows > > > hw/9pfs: Update synth fs driver for Windows > > > tests/qtest: virtio-9p-test: Adapt the case for win32 > > > meson.build: Turn on virtfs for Windows > > > > > > > With the latest 9p test case refactoring in the mainline, I will have > > to cherry-pick the following 2 patches in this series, to v6 of > > "tests/qtest: Enable running qtest on Windows" series [1], in order to > > get qtest on Windows build successfully. > > > > [06/16] hw/9pfs: Add missing definitions for Windows > > [15/16] tests/qtest: virtio-9p-test: Adapt the case for win32 > > > > I will include the above 2 patches in the v6 qtest windows support series. > > No need to add those patches as they are already being queued separately. Just > add appropriate tag(s) to the first patch: > > Based-on: <MESSAGE-ID> Sure, but I really want to get the qtest windows support patch series merged first. I will disable the 9p test for Windows in my v6 then. We will enable the 9p test later when it lands on the mainline. > > I already had a quick look on this version, will try to give feedback > tomorrow. > > This feature won't make it into 7.2 release anyway, so patience please. ;-) > > Best regards, > Christian Schoenebeck > > > [1] http://patchwork.ozlabs.org/project/qemu-devel/list/?series=321695 Regards, Bin