Re: Properly stop kernel threads on aic7xxx

Andrea Arcangeli
2004-04-02T01:09:24Z

On Thu, Apr 01, 2004 at 05:04:03PM -0800, Andrew Morton wrote:
> Andrea Arcangeli <andrea@suse.de> wrote:
> >
> > I'm also unsure why _all_ multipage allocations really need this
> > compound thing setup and why can't the owner of the page take care of
> > the refcounting itself by always using the head page. I may actually
> > add a GFP bitflag asking for a multipage but w/o a compound setup. There
> > are million ways to fix this, none of which is obvious.
>
> For direct-io into higher-order pages. When doing direct-io into a hugetlb
> page we need to make sure that get_user_pages() pins the correct pageframe.

we do the same in bigpages 2.4 just fine with a basic math on the page_t
knowing it's 2M naturally aligned, very easy to find the head page on
vmas with VM_HUGETLBFS.

> Possibly we need to turn it on regardless of CONFIG_HUGETLBPAGE for people
> who want to do direct-io or PEEKTEXT/POKETEXT into mmapped soundcard
> buffers, for example. Perhaps there's a race which could permit direct-io
> to write to a freed page via this route..
>
> Davem had some reason why he might want to turn on the compound logic
> permanently - related to TCP access to/from higher-order pages, I think.

currently it's turned on only with HUGTLBFS=y though.