[patch] rd: support XIP (updated)

2007-12-04 Thread Nick Piggin
On Tue, Dec 04, 2007 at 12:06:23PM +, Duane Griffin wrote: > On 04/12/2007, Nick Piggin <[EMAIL PROTECTED]> wrote: > > + gfp_flags = GFP_NOIO | __GFP_ZERO; > > +#ifndef CONFIG_BLK_DEV_XIP > > + gfp_flags |= __GFP_HIGHMEM; > > +#endif > > page = alloc_page(GFP_NOIO | __GFP_HI

Re: [patch] rd: support XIP

2007-12-04 Thread Duane Griffin
On 04/12/2007, Nick Piggin <[EMAIL PROTECTED]> wrote: > + gfp_flags = GFP_NOIO | __GFP_ZERO; > +#ifndef CONFIG_BLK_DEV_XIP > + gfp_flags |= __GFP_HIGHMEM; > +#endif > page = alloc_page(GFP_NOIO | __GFP_HIGHMEM | __GFP_ZERO); I think that should be alloc_page(gfp_flags), no? Ch

Re: [patch] rd: support XIP

2007-12-04 Thread Nick Piggin
On Tue, Dec 04, 2007 at 03:26:20AM -0800, Andrew Morton wrote: > On Tue, 4 Dec 2007 12:21:00 +0100 Nick Piggin <[EMAIL PROTECTED]> wrote: > > > +* > > +* Cannot support XIP and highmem, because our ->direct_access > > +* routine for XIP must return memory that is always addressable. >

Re: [patch] rd: support XIP

2007-12-04 Thread Andrew Morton
On Tue, 4 Dec 2007 12:21:00 +0100 Nick Piggin <[EMAIL PROTECTED]> wrote: > + * > + * Cannot support XIP and highmem, because our ->direct_access > + * routine for XIP must return memory that is always addressable. > + * If XIP was reworked to use pfns and kmap throughout, this

[patch] rd: support XIP

2007-12-04 Thread Nick Piggin
On Tue, Dec 04, 2007 at 11:10:09AM +0100, Nick Piggin wrote: > > > > This is just an idea, I dont know if it is worth the trouble, but have you > > though about implementing direct_access for brd? That would allow > > execute-in-place (xip) on brd eliminating the extra copy. > > Actually that's