[Date Prev][Date Next] [Thread Prev][Thread Next]
[Thread Index]
[Date Index]
[Author Index]
Re: [dm-devel] hunt for 2.6.37 dm-crypt+ext4 corruption? (was: Re: dm-crypt barrier support is effective)
- From: Chris Mason <chris mason ORACLE COM>
- To: Jon Nelson <jnelson jamponi net>
- Cc: htejun <htejun gmail com>, Matt <jackdachef gmail com>, Mike Snitzer <snitzer redhat com>, Linux Kernel <linux-kernel vger kernel org>, dm-devel <dm-devel redhat com>, Andi Kleen <andi firstfloor org>, htd <htd fancy-poultry org>, linux-ext4 <linux-ext4 vger kernel org>, linux-btrfs <linux-btrfs vger kernel org>, Milan Broz <mbroz redhat com>
- Subject: Re: [dm-devel] hunt for 2.6.37 dm-crypt+ext4 corruption? (was: Re: dm-crypt barrier support is effective)
- Date: Tue, 07 Dec 2010 13:52:33 -0500
Excerpts from Jon Nelson's message of 2010-12-07 13:45:14 -0500:
> On Tue, Dec 7, 2010 at 12:22 PM, Mike Snitzer <snitzer redhat com> wrote:
> > On Tue, Dec 07 2010 at 1:10pm -0500,
> > Jon Nelson <jnelson jamponi net> wrote:
> >
> >> I finally found some time to test this out. With 2.6.37-rc4 (openSUSE
> >> KOTD kernel) I easily encounter the issue.
> >>
> >> Using a virtual machine, I created a stock, minimal openSUSE 11.3 x86_64
> >> install, installed all updates, installed postgresql and the 'KOTD'
> >> (Kernel of the Day)
> >> kernel, and ran the following tests (as postgres user because I'm
> >> lazy).
> >>
> >> 1. create a database (from bash):
> >>
> >> createdb test
> >>
> >> 2. place the following contents in a file (I used 't.sql'):
> >>
> >> begin;
> >> create temporary table foo as select x as a, ARRAY[x] as b FROM
> >> generate_series(1, 10000000 ) AS x;
> >> create index foo_a_idx on foo (a);
> >> create index foo_b_idx on foo USING GIN (b);
> >> rollback;
> >>
> >> 3. execute that sql:
> >>
> >> psql -f t.sql --echo-all test
> >>
> >>
> >> With 2.6.34.7 I can re-run [3] all day long, as many times as I want,
> >> without issue.
> >>
> >> With 2.6.37-rc4-13 (the currently-installed KOTD kernel) if tails
> >> pretty frequently.
> >
> > How does it fail? postgres errors? kernel errors?
>
> postgresql errors. Typically, header corruption but from the limited
> visibility I've had into this via strace, what I see is zeroed pages
> where there shouldn't be.
This sounds a lot like a bug higher up than dm-crypt. Zeros tend to
come from some piece of code explicitly filling a page with zeros, and
that often happens in the corner cases for O_DIRECT and a few other
places in the filesystem.
Have you tried triggering this with a regular block device?
-chris
[Date Prev][Date Next] [Thread Prev][Thread Next]
[Thread Index]
[Date Index]
[Author Index]