Re: 2.6.39-rc1 nouveau(?) regression (bisected)

From: Marcin Slusarz
Date: Tue Apr 19 2011 - 17:49:52 EST


On Mon, Apr 18, 2011 at 01:27:10PM -0700, Linus Torvalds wrote:
> On Mon, Apr 18, 2011 at 1:02 PM, Marcin Slusarz
> <marcin.slusarz@xxxxxxxxx> wrote:
> >
> > It's some nasty corruption:
>
> Looks like something wrote 0xffffffff to free'd memory.
>
> Enabling DEBUG_PAGEALLOC *might* show where it happens.
>
> >
> > [ Â Â6.523867] =============================================================================
> > [ Â Â6.523916] BUG sysfs_dir_cache: Poison overwritten
> > [ Â Â6.523949] -----------------------------------------------------------------------------
> > [ Â Â6.523950]
> > [ Â Â6.524016] INFO: 0xffff8801bb47df4c-0xffff8801bb47df4f. First byte 0xff instead of 0x6b
> > [ Â Â6.524061] INFO: Slab 0xffffea00060f7b58 objects=22 used=21 fp=0xffff8801bb47df18 flags=0x80000000000000c1
> > [  Â6.524110] INFO: Object 0xffff8801bb47df18 @offset=3864 fp=0x     Â(null)
> > [ Â Â6.524111]
> > [ Â Â6.524170] Bytes b4 0xffff8801bb47df08: Â00 00 00 00 00 00 00 00 5a 5a 5a 5a 5a 5a 5a 5a ........ZZZZZZZZ
> > [ Â Â6.524516] Â Object 0xffff8801bb47df18: Â6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk
> > [ Â Â6.524862] Â Object 0xffff8801bb47df28: Â6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk
> > [ Â Â6.525208] Â Object 0xffff8801bb47df38: Â6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b kkkkkkkkkkkkkkkk
> > [ Â Â6.525556] Â Object 0xffff8801bb47df48: Â6b 6b 6b 6b ff ff ff ff 6b 6b 6b 6b 6b 6b 6b 6b kkkk<FF><FF><FF><FF>kkkkkkkk
>
> So here the 0xffffffff is pretty obvious.
>
> > and in another boot:
> >
> > [ Â Â6.704786] BUG: unable to handle kernel paging request at ffffffffbc70b058
>
> Here it is less obvious, but it was _probably_ a regular kernel
> pointer of the type 0xffff8801bc70b058 before the high bits were
> overwritten by a 0xffffffff.
>
> So then sysfs_refresh_inode() follows that pointer, and crashes.
>
> Just a guess, obviously, but it looks rather likely.

Thanks. It helped a bit.
I'll send two patches in response to this message, one of which fixes this bug.

Marcin

--
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/