race between kmap shootdown and cache maintenance

Nicolas Pitre nico at fluxnic.net
Wed Feb 17 23:18:26 EST 2010


On Wed, 17 Feb 2010, Arve Hjønnevåg wrote:

> On Fri, Feb 12, 2010 at 5:08 PM, Gary King <GKing at nvidia.com> wrote:
> > I finally got a chance to test this; it looks like this condition may be common: many (all?) of the various page cache-like things seem to just hand pages to flush_dcache_page blindly, and expect flush_dcache_page to determine whether or not maintenance is required.
> >
> > With your patch, I immediately hit the BUG() when the init process is started; the backtrace is attached as unpinned_maint.log.
> 
> I see the same crash on Nexus One with this patch applied to a
> 2.6.33-rc8 kernel.
> 
> If I change the BUG_ON to WARN_ON, the system boot further, but the
> warning triggers the bug.
> 
> If I also apply the fix from this thread the system boots again, and I
> see several calls that do not have the kmap-high pinned.

OK.  After further considerations, I think the original patch is 
legitimate.


Nicolas


More information about the linux-arm-kernel mailing list