softmmu/physmem: Bail out early in ram_block_discard_range() with readonly files
fallocate() will fail, let's print a nicer error message. Message-ID: <20230906120503.359863-6-david@redhat.com> Suggested-by: Peter Xu <peterx@redhat.com> Reviewed-by: Peter Xu <peterx@redhat.com> Signed-off-by: David Hildenbrand <david@redhat.com>
This commit is contained in:
parent
9e6b9f3791
commit
b2cccb52bd
@ -3481,6 +3481,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
|
||||
|
Loading…
Reference in New Issue
Block a user