Hi On Tue, Nov 27, 2018 at 3:56 PM Ilya Maximets <i.maxim...@samsung.com> wrote: > > On 27.11.2018 14:49, Marc-André Lureau wrote: > > Hi > > On Tue, Nov 27, 2018 at 3:11 PM Ilya Maximets <i.maxim...@samsung.com> > > wrote: > >> > >> If seals are not supported, memfd_create() will fail. > >> Furthermore, there is no way to disable it in this case because > >> '.seal' property is not registered. > >> > >> This issue leads to vhost-user-test failures on RHEL 7.2: > >> > >> qemu-system-x86_64: -object memory-backend-memfd,id=mem,size=2M,: \ > >> failed to create memfd: Invalid argument > >> > >> Signed-off-by: Ilya Maximets <i.maxim...@samsung.com> > > > > > > This will change the default behaviour of memfd backend, and may thus > > me considered a break. > > This will change the default behaviour only on systems without sealing > support. But current implementation is broken there anyway and does not > work. > > > > > Instead, memfd vhost-user-test should skipped (or tuned with > > sealed=false if unsupported) > > vhost-user-test is just an example here. In fact memfd could not be > used at all on system without sealing support. And there is no way > to disable seals.
which system supports memfd without sealing? > > > > >> --- > >> backends/hostmem-memfd.c | 4 ++-- > >> 1 file changed, 2 insertions(+), 2 deletions(-) > >> > >> diff --git a/backends/hostmem-memfd.c b/backends/hostmem-memfd.c > >> index b6836b28e5..ee39bdbde6 100644 > >> --- a/backends/hostmem-memfd.c > >> +++ b/backends/hostmem-memfd.c > >> @@ -129,8 +129,8 @@ memfd_backend_instance_init(Object *obj) > >> { > >> HostMemoryBackendMemfd *m = MEMORY_BACKEND_MEMFD(obj); > >> > >> - /* default to sealed file */ > >> - m->seal = true; > >> + /* default to sealed file if supported */ > >> + m->seal = qemu_memfd_check(MFD_ALLOW_SEALING); > >> } > >> > >> static void > >> -- > >> 2.17.1 > >> > > > > > -- Marc-André Lureau