On Tue, Mar 29 2011 at 2:59am -0400, Jens Axboe <jaxboe@xxxxxxxxxxxx> wrote: > On 2011-03-29 01:03, Mike Snitzer wrote: > > On Mon, Mar 28 2011 at 6:43pm -0400, > > Thomas Gleixner <tglx@xxxxxxxxxxxxx> wrote: > > > >> Forgot to cc Jens and fixed up the borked mail address of Mike which > >> I took from the changelog :( > >> > >> On Tue, 29 Mar 2011, Thomas Gleixner wrote: > >> > >>> Out of the blue all my perfectly fine working test machines which use > >>> RAID stopped working with the very helpful error message: > >>> > >>> md/raid1:md1: active with 2 out of 2 mirrors > >>> md: pers->run() failed ... > >>> > >>> Reverting a91a2785b20 fixes the problem. > >>> > >>> Neither the subject line: > >>> > >>> block: Require subsystems to explicitly allocate bio_set integrity mempool > >>> > >>> nor the changelog have any hint why that wreckage is in any way > >>> sensible. > >>> > >>> The wreckage happens due to: > >>> > >>> - md_integrity_register(mddev); > >>> - return 0; > >>> + return md_integrity_register(mddev); > > > > Right, a kernel.org BZ was filed on this here: > > https://bugzilla.kernel.org/show_bug.cgi?id=32062 > > > > Martin is working to "conjure up a patch" to fix the common case where > > no devices in the MD have DIF/DIX capabilities. > > And I see that has been merged now. So all is good? Yes, commit 89078d572e clearly addresses the immediate concern. But I think we have a related issue that needs discussion, given that an integrity profile mismatch will cause MD's assemble to fail (rather than warn and continue to assemble without integrity support). DM doesn't fail to load a DM device due to a integrity profile mismatch; it just emits a warning and continues. In contrast, MD will now disallow adding a normal disk (without integrity support) to an array that has historically had a symmetric integrity profile across all members. So this begs the question: what is the correct approach? At the moment I prefer the more forgiving approach that DM provides. But I can appreciate the other school of thought where a mismatch is a hard failure during device assembly (avoids possibility of falling back to not using integrity capabilities). Mike -- dm-devel mailing list dm-devel@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/dm-devel