Bug#409875: [Pkg-cryptsetup-devel] Bug#409875: bug #409875

David Härdeman david at hardeman.nu
Fri Feb 9 19:13:59 CET 2007


On Fri, February 9, 2007 16:58, Johannes Schlumberger said:
>> Could you please try a new compile, this time, skip the previously
>> mentioned patch and instead do the following changes:
>>
>> In fs/block_dev.c, add the following at the end of the function
>> bd_claim()
>> (just before the return):
>>
>> printk("claim: %d:%d %p -> %d\n",
>>        MAJOR(bdev->bd_dev), MINOR(bdev->bd_dev), holder, res);
>>
>> In the same file, add to the end of the function bd_release():
>>
>> printk("release: %d:%d\n",
>>        MAJOR(bdev->bd_dev), MINOR(bdev->bd_dev));
>>
>> Recompile, install, reboot, try cryptsetup, and then send me the entire
>> dmesg output
>
> It is attached; the way I see it, 9:0 is claimed during the setup of the
> md-device but never released.

Yes, that indeed seems to be the problem (which is why we tried this
debugging output)...and later device-mapper tries to claim md0 again as it
tries to setup the crypto mapping. Which fails. What bothers me though is
that the previous patch that we tried should have allowed such situations,
I might have to take another look at it.

Meanwhile, could you add the following to the above mentioned debugging
output:

printk("dumping stack for %s:\n", current->comm);
dump_stack();

(right after the above printk in bd_claim())

And then send another dmesg this way...this should tell us which
process/kernel thread it is that locks md0...

-- 
David Härdeman





More information about the Pkg-cryptsetup-devel mailing list