On Fri, Mar 05, 2021 at 04:44:36PM +0100, David Hildenbrand wrote:
> On 05.03.21 16:42, Peter Xu wrote:
> > On Fri, Mar 05, 2021 at 11:16:33AM +0100, David Hildenbrand wrote:
> > > +#define OVERCOMMIT_MEMORY_PATH "/proc/sys/vm/overcommit_memory"
> > > +static bool map_noreserve_effective(int fd, bool readonly, bool shared)
> > > +{
> > 
> > [...]
> > 
> > > @@ -184,8 +251,7 @@ void *qemu_ram_mmap(int fd,
> > >       size_t offset, total;
> > >       void *ptr, *guardptr;
> > > -    if (noreserve) {
> > > -        error_report("Skipping reservation of swap space is not 
> > > supported");
> > > +    if (noreserve && !map_noreserve_effective(fd, shared, readonly)) {
> > 
> > Need to switch "shared" & "readonly"?
> 
> Indeed, interestingly it has the same effect (as we don't have anonymous
> read-only memory in QEMU :) )

But note there is still a "g_assert(!shared || fd >= 0);" inside.. :)

> 
> (wouldn't have happened with flags  ... hmm)

Right.

-- 
Peter Xu


Reply via email to