Re: [PATCH] Add compability for kernels >=2.6.27-rc1

Chris Mason
2008-07-31T19:37:38Z

On Thu, 2008-07-31 at 20:27 +0100, David Woodhouse wrote:
> On Wed, 2008-07-30 at 16:43 -0400, Chris Mason wrote:
> > On Wed, 2008-07-30 at 22:13 +0200, Jens Axboe wrote:
> >
> > [ rcu page cache ]
> >
> > > > > For btrfs's usage, it should be safe with a simple rcu_read_lock(), if
> > > > > the return is referenced safely.
> > > > >
> > > >
> > > > This btrfs code is basically a find_get_page without the get. It should
> > > > only be called when I know I already have a reference on the page.
> > >
> > > Then it's definitely safe ;-)
> > >
> >
> > Yeah, I'm testing on the latest git now and it all seems ok. I'll push
> > this out, thanks Sven.
>
> Seems to crash for me with Linus' current tree. I thought it was
> something to do with my fixes for NFS export, but now I've hooked up a
> serial console and managed to catch it, I suspect not...
>
> BUG: unable to handle kernel paging request at ffff880107c2aa00
> IP: [<ffffffffa03e73bc>] end_bio_extent_writepage+0x1f4/0x29c [btrfs]

If you can reliably reproduce this, please try with the spin locks
instead of rcu read locks. What were you doing at the time?

-chris