From b59d72af868e4a0f426537cf3e012fabcca53d713e75a89f0534c5e3e162ffee Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Adrian=20Schr=C3=B6ter?= Date: Wed, 30 Oct 2024 16:17:03 +0100 Subject: [PATCH] Sync from SUSE:SLFO:Main virtiofsd revision dd1b96f8d15be807d383992ca43a1ffe --- 50-virtiofsd.json | 9 ++++ _service | 6 +-- cargo_config | 5 -- vendor.tar.xz | 4 +- virtiofsd-1.10.1.tar.xz | 3 -- virtiofsd-1.12.0.tar.xz | 3 ++ virtiofsd.changes | 112 +++++++++++++++++++++++++++++++++++++++- virtiofsd.spec | 32 ++++++++---- 8 files changed, 149 insertions(+), 25 deletions(-) create mode 100644 50-virtiofsd.json delete mode 100644 cargo_config delete mode 100644 virtiofsd-1.10.1.tar.xz create mode 100644 virtiofsd-1.12.0.tar.xz diff --git a/50-virtiofsd.json b/50-virtiofsd.json new file mode 100644 index 0000000..9eec755 --- /dev/null +++ b/50-virtiofsd.json @@ -0,0 +1,9 @@ +{ + "description": "virtiofsd vhost-user-fs", + "type": "fs", + "binary": "@@LIBEXECDIR@@/virtiofsd", + "features": [ + "migrate-precopy", + "separate-options" + ] +} diff --git a/_service b/_service index 48f1ca1..f7afa24 100644 --- a/_service +++ b/_service @@ -3,7 +3,7 @@ https://gitlab.com/virtio-fs/virtiofsd.git git virtiofsd - v1.10.1 + v1.12.0 @PARENT_TAG@ [v]?([^\+]+)(.*) \1 @@ -19,10 +19,6 @@ xz - - virtiofsd - - virtiofsd xz diff --git a/cargo_config b/cargo_config deleted file mode 100644 index 6fb4ff4..0000000 --- a/cargo_config +++ /dev/null @@ -1,5 +0,0 @@ -[source.crates-io] -replace-with = "vendored-sources" - -[source.vendored-sources] -directory = "vendor" \ No newline at end of file diff --git a/vendor.tar.xz b/vendor.tar.xz index 20fa4e9..b780b1c 100644 --- a/vendor.tar.xz +++ b/vendor.tar.xz @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:fa57f009ab7ede4768ac53646917e49bb831decb78a3a050de34063dc02f7ea0 -size 12339184 +oid sha256:2b7b97407e428a651c32f6056fefd623de6c2be4c3bed3a8eb7b9cc07d34e7b5 +size 14894944 diff --git a/virtiofsd-1.10.1.tar.xz b/virtiofsd-1.10.1.tar.xz deleted file mode 100644 index 5925667..0000000 --- a/virtiofsd-1.10.1.tar.xz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:b52b3d59f43140dca7d56e6dc8d88a0f894eeb0de69d0003b72115be71627154 -size 97376 diff --git a/virtiofsd-1.12.0.tar.xz b/virtiofsd-1.12.0.tar.xz new file mode 100644 index 0000000..4b02812 --- /dev/null +++ b/virtiofsd-1.12.0.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:213df73a935768ce863362dd4ad5b3abe4b8676883820ec559abbb54e196b611 +size 129248 diff --git a/virtiofsd.changes b/virtiofsd.changes index b3da64c..fb8706b 100644 --- a/virtiofsd.changes +++ b/virtiofsd.changes @@ -1,3 +1,113 @@ +------------------------------------------------------------------- +Wed Oct 16 17:24:41 UTC 2024 - caleb.crane@suse.com + +- Update to version 1.12.0: + * Bump version to v1.12.0 + * Add file-handles migration mode + * Serialize mount FD map + * Deserialize file handles + * Build mount FD map on deserialization + * Add MigrationMode::FileHandles + * PassthroughFsV2 + * Allow deserializing serializable file handles + * Extract serialized::Inode.deserialize_root_node() + +------------------------------------------------------------------- +Thu Oct 3 18:55:20 UTC 2024 - Caleb Crane + +- Spec: Add direct dependency on cargo in addition to cargo-packaging. + This fixes build errors on 15SP7 where the inherited version of Rust + is too old + +------------------------------------------------------------------- +Thu Aug 8 19:57:34 UTC 2024 - Caleb Crane + +- Service: Remove deprecated cargo_config and cargo_audit services, both + are now handled by the cargo_vendor service +- Add new upstream features for the libvirt/virtiofsd interop config + +------------------------------------------------------------------- +Thu Aug 08 08:13:17 UTC 2024 - Xiaoguang Wang + +- Fix build failure after update to Rust 1.80 (bsc#1228972) +- Update to version 1.11.1: + * Changes since 1.11.0: + * Add "separate-options" capability + * Force-call DESTROY on INIT + * Do not require --shared-dir to print capabilities + * Enable notification on vring failure + * Bump version to v1.11.0 + * deps: Update to the latest rust-vmm crates + * deps: Update to the latest libc + * Note migration capability + * README: Document new migration switches + * Introduce --migration-mode switch + * Introduce --migration-confirm-paths + * PassthroughFs::init: Point to NegotiatedOpts + * Implement device state deserialization + * Add get_path_by_fd()/printable_fd() functions + * Implement device state serialization + * Implement preserialization/premigration + * Define our serialized device state + * Introduce serializable file handles + * Introduce --migration-verify-handles + * Introduce --migration-on-error switch + * Allow explicitly invalid inodes and handles + * Split try_lookup() off of do_lookup() + * Add ReadDir::new_no_seek() + * Put open_root_node() into own function + * Add type for strong inode references + * Hide InodeStore locking + * Remove `&Inode` indirection + * Add device state infrastructure + * Add ErrorContext, ResultErrorContext traits + * Add other_io_error() utility function + * Add support for dirty memory logging + * opt: Introduce --allow-mmap flag + * fuse: Enable DIRECT_IO_ALLOW_MMAP with --allow-mmap + * Add '--shared-dir' as required if '-o' is missing + * Close the listener in the parent process + * Check if the socket parent directory exists + * Check if the shared directory exists + * deps: Bump syslog version + * Increase maximum virtqueue size to 32768 + * Allow multiple uid/gid maps + * Hide clippy warning in readdir + * Shorten `std::result::Result` where possible + * Remove redundant Result imports + * deps: Bump vhost and vhost-user-backend versions + * Remove virtio-bindings feature + * Directly write uid/gidmap where possible + * Fix clippy warning: Complicated `match` condition + * Fix clippy warning: Skip converting to owned + * Fix clippy warning: Make use of `.cloned()` + * Fix new compiler warnings + +------------------------------------------------------------------- +Thu Mar 7 14:03:20 UTC 2024 - Ben Greiner + +- Fix libexecdir move: rpm cannot replace a directory with a single + file on upgrades -- boo#1220592 + * Add pre scriptlet removing the directory on Tumbleweed during + upgrades + * Don't own plain %_libexecdir on Tumbleweed + +------------------------------------------------------------------- +Wed Feb 28 15:08:19 UTC 2024 - Caleb Crane + +- Spec: More tweaks to libexecdir path issues on SLE and Tumbleweed + +------------------------------------------------------------------- +Mon Feb 26 14:16:30 UTC 2024 - Caleb Crane + +- Spec: We don't want /usr/libexec to be namespaced like it is with /usr/lib (bsc#1220304) + +------------------------------------------------------------------- +Thu Feb 22 03:02:23 UTC 2024 - Caleb Crane + +- Spec: Adjust libvirt/virtiofsd interop config file to handle differences in + the definition of libexecdir macro on SLE and Tumbleweed (bsc#1219772) + ------------------------------------------------------------------- Tue Jan 30 17:09:25 UTC 2024 - caleb.crane@suse.com @@ -15,7 +125,7 @@ Tue Jan 30 17:09:25 UTC 2024 - caleb.crane@suse.com ------------------------------------------------------------------- Thu Aug 31 20:28:08 UTC 2023 - Caleb Crane -- Update to upstream version v1.7.2 (jsc#4980) +- Update to upstream version v1.7.2 (jsc#PED-4980) - Add supplementary group extension support - Prevent EPERM failures with O_NOATIME - Fix cache timeouts diff --git a/virtiofsd.spec b/virtiofsd.spec index bae6214..ab2d7a8 100644 --- a/virtiofsd.spec +++ b/virtiofsd.spec @@ -16,16 +16,23 @@ # +%if 0%{?suse_version} > 1500 + %define _virtiofsd_libexecdir %{_libexecdir} +%else + %define _virtiofsd_libexecdir %{_libexecdir}/%{name} +%endif + Name: virtiofsd -Version: 1.10.1 +Version: 1.12.0 Release: 0 -Summary: vhost-user virtio-fs device backend written in Rust +Summary: A vhost-user virtio-fs device backend written in Rust Group: Development/Libraries/Rust License: Apache-2.0 URL: https://gitlab.com/virtio-fs/virtiofsd Source0: %{name}-%{version}.tar.xz Source1: vendor.tar.xz -Source2: cargo_config +Source2: 50-virtiofsd.json +BuildRequires: cargo BuildRequires: cargo-packaging BuildRequires: libcap-ng-devel BuildRequires: libseccomp-devel @@ -33,24 +40,31 @@ Conflicts: qemu-tools < 8 ExcludeArch: %ix86 %arm %description -vhost-user virtio-fs device backend written in Rust +A vhost-user virtio-fs device backend written in Rust %prep %autosetup -a1 -mkdir .cargo -cp %{SOURCE2} .cargo/config +# Adjust libvirt/virtiofsd interop config file to handle differences in +# the definition of libexecdir macro on SLE and Tumbleweed (bsc#1219772) +sed -i 's#@@LIBEXECDIR@@#%{_virtiofsd_libexecdir}#' %{SOURCE2} %build %{cargo_build} %install -mkdir -p %{buildroot}%{_libexecdir} -install -D -p -m 0755 %{_builddir}/%{name}-%{version}/target/release/virtiofsd %{buildroot}%{_libexecdir}/virtiofsd -install -D -p -m 0644 %{_builddir}/%{name}-%{version}/50-virtiofsd.json %{buildroot}%{_datadir}/qemu/vhost-user/50-virtiofsd.json +mkdir -p %{buildroot}%{_virtiofsd_libexecdir} +install -D -p -m 0755 %{_builddir}/%{name}-%{version}/target/release/virtiofsd %{buildroot}%{_virtiofsd_libexecdir}/virtiofsd +install -D -p -m 0644 %{SOURCE2} %{buildroot}%{_datadir}/qemu/vhost-user/50-virtiofsd.json %check %{cargo_test} +%if 0%{?suse_version} > 1500 +# transition from old subdirectory to single file: rpm can't replace a directory on upgrades, force delete +%pre +[ ! -d %{_libexecdir}/%{name} ] || rm -r %{_libexecdir}/%{name} +%endif + %files %doc README.md %{_libexecdir}/virtiofsd