[openib-general] Re: [PATCH 10 of 20] ipath - support for userspace apps using core driver
Andrew Morton
akpm at osdl.org
Thu Mar 9 16:37:40 PST 2006
"Bryan O'Sullivan" <bos at pathscale.com> wrote:
>
> On Thu, 2006-03-09 at 16:01 -0800, Roland Dreier wrote:
> > Bryan> Any idea what I should be using instead?
> >
> > It depends what you're trying to do. Hence my original question: why
> > are you doing SetPageReserved?
>
> We're mapping some memory that the chip DMAs to into userspace, so that
> user processes can spin on memory locations without going through the
> kernel. The SetPageReserved hack is an attempt to stop the VM from
> reclaiming those pages from us once a user process exits.
If your driver allocated these pages and never added them to the LRU then
the VM won't touch them.
If your driver owns the pages and has a ref on them then they won't get
freed at task exit-time.
If the app owns the pages and you're using get_user_pages() then your
driver owns the last ref on the pages.
> I realise that it's surely bogus, and I'd be thrilled to do something
> correct instead. We've tried doing both SetPageReserved and get_page,
> but it hasn't work out too well so far.
We'd need to see a halfway decent description of the problem first ;)
More information about the general
mailing list