Message ID | 20230823153412.832081-6-david@redhat.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | memory-backend-file related improvements and VM templating support | expand |
On Wed, Aug 23, 2023 at 05:34:05PM +0200, David Hildenbrand wrote: > fallocate() will fail, let's print a nicer error message. > > Suggested-by: Peter Xu <peterx@redhat.com> > Signed-off-by: David Hildenbrand <david@redhat.com> Reviewed-by: Peter Xu <peterx@redhat.com>
diff --git a/softmmu/physmem.c b/softmmu/physmem.c index c09eda6303..32d641754b 100644 --- a/softmmu/physmem.c +++ b/softmmu/physmem.c @@ -3457,6 +3457,16 @@ int ram_block_discard_range(RAMBlock *rb, uint64_t start, size_t length) * so a userfault will trigger. */ #ifdef CONFIG_FALLOCATE_PUNCH_HOLE + /* + * fallocate() will fail with readonly files. Let's print a + * proper error message. + */ + if (rb->flags & RAM_READONLY_FD) { + error_report("ram_block_discard_range: Discarding RAM" + " with readonly files is not supported"); + goto err; + + } /* * We'll discard data from the actual file, even though we only * have a MAP_PRIVATE mapping, possibly messing with other
fallocate() will fail, let's print a nicer error message. Suggested-by: Peter Xu <peterx@redhat.com> Signed-off-by: David Hildenbrand <david@redhat.com> --- softmmu/physmem.c | 10 ++++++++++ 1 file changed, 10 insertions(+)