Date: Fri, 23 Feb 2001 17:57:15 -0800 From: Julian Elischer <julian@elischer.org> To: Andrew Gallatin <gallatin@cs.duke.edu> Cc: Vladimir Silyaev <vsilyaev@mindspring.com>, Matt Dillon <dillon@earth.backplane.com>, freebsd-emulation@FreeBSD.ORG Subject: Re: Does vmware2 wire pages? Message-ID: <3A9714FB.185D91F7@elischer.org> References: <3A89B7A0.B47D91E@Lustig.COM> <20010214072943.A365@delta.rc.ny.us> <3A96A29A.3BBF2614@elischer.org> <14998.46507.267723.148767@grasshopper.cs.duke.edu>
next in thread | previous in thread | raw e-mail | index | archive | help
Andrew Gallatin wrote:
>
> Julian Elischer writes:
> > Vladimir Silyaev wrote:
> > >
> > > Thanks, barry.
> > >
> > > For sure vmware is wiring pages. It's about 50% or more percent of pages
> > > allocated for guest memory is wired down (i.e. you can easily notice that
> > > if you will run systat). But those pages is wired down not calling
> > > to mlock by vmware, but it's done inside vmmon driver.
> > >
> > > Regards,
> > > Vladimir
> > >
> >
> > So is there a patch in the works?
So we know what is slowing downn the vmware system so much, we just need to
find the RIGHT answer.
>
> As you might recall, vmware appears to stutter frequently and freeze
> for small periods of time when run on FreeBSD -- this stuttering
> coincides with heavy disk activity and pageouts by the vnode pager.
> The "problem" appears to be that FreeBSD actually tries to keep
> mmap'ed regions clean. Linux apparently only tries to clean them when
> they are unmapped. Linux does not have a MAP_NOSYNC flag to indicate
> that a region should be map'ed nosync & it is apparently not removing
> the file in question, so MAP_NOSYNC is never getting set.
>
> Hacking vmware to set wired pages to PG_NOSYNC doesn't seem to help.
> However, I have my own local hack which seems to help a great deal:
> hacking the Linulator to treat all mmap'ed files as MAP_NOSYNC, in
> combination with my fixes to vm_fault so as to correctly tag a page in
> a MAP_NOSYNC map with PG_NOSYNC on a read fault.
Is this vm_fault patch separatly committable? (i.e. is it a general fix?)
>
> The first part (hacking the Linulator) is unacceptable for general
> consumption & a better way needs to be found. One thing I've thought
> of is adding some functionality to the vmmon kernel module to force
> the vmware app's mmap'ed regions to be MAP_NOSYNC. I don't know
> enough about how vmware works to achieve this & have not had the time
> to look into it further.
>
> Drew
--
__--_|\ Julian Elischer
/ \ julian@elischer.org
( OZ ) World tour 2000-2001
---> X_.---._/
v
To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-emulation" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?3A9714FB.185D91F7>
