Re: Export swapper_space

From: Russell King
Date: Thu Jun 03 2004 - 11:07:50 EST


On Thu, Jun 03, 2004 at 04:37:27PM +0100, Christoph Hellwig wrote:
> On Thu, Jun 03, 2004 at 04:19:10PM +0100, Russell King wrote:
> > swapper_space appears to be needed by modules:
> >
> > Building modules, stage 2.
> > MODPOST
> > *** Warning: "swapper_space" [drivers/block/loop.ko] undefined!
> > *** Warning: "swapper_space" [drivers/scsi/st.ko] undefined!
> > *** Warning: "swapper_space" [drivers/scsi/sg.ko] undefined!
>
> Please not. This seems to be some cache-flushing magic on the stranger
> architectures again :) Can you check how they're using it in the end
> and hopefully fix it by uninlining something?

extern struct address_space swapper_space;
static inline struct address_space *page_mapping(struct page *page)
{
struct address_space *mapping = NULL;

if (unlikely(PageSwapCache(page)))
mapping = &swapper_space;
else if (likely(!PageAnon(page)))
mapping = page->mapping;
return mapping;
}

I'll leave that for someone else to sort out.

--
Russell King
Linux kernel 2.6 ARM Linux - http://www.arm.linux.org.uk/
maintainer of: 2.6 PCMCIA - http://pcmcia.arm.linux.org.uk/
2.6 Serial core
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/