[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

Re: [dm-devel] semop failed for cookie?

On 04/29/2010 11:23 AM, Alasdair G Kergon wrote:
On Wed, Apr 28, 2010 at 10:32:54PM -0500, Douglas McClendon wrote:
case, literally nothing would happen while both instances were 'live',

If you had no data written to the snapshot or origin while both
were loaded, you might have got away with it.  But I think the new handover
code give you a safe and supported mechanism now.


I've got a "BUG" for you-

So, I tried on a nightly soas livecd iso build, booted under qemu (should be the same for a rawhide or fedora13 beta i386 livecd iso, booted to runlevel 1 (for simplicity sake))

I tried to suspend the snapshot device holding the rootfs, thinking that I might be able to do that, then resume the newly created with a new name copy of that device, and then resume the rootfs device after loading a new table of a mirror of the copy device and the destination partition.

But the instant I suspend the snapshot device containing the rootfs (dmsetup suspend live-rw), I get-

BUG: lock held when returning to user space!

dmsetup/865 is leaving the kernel with locks still held!
1 lock held by dmsetup/865:
 #0:   (&journal->j_barrier){+.+...+}, at: [<c056b84d>] jbd2_journal_lock_\

--------------- (manually transcribed) ------------

Now, my first guess as to how to proceed would be to try to get a statically linked dmsetup copied into a tmpfs. Which, given the particular target and my lack of enthusiasm for all of this, may take me some time to try. Any other advice? Note, I could craft some manual dmsetup commands to reproduce what I'm trying to do, that would apply to any fedora-13/soas livecd iso. But for the sake of argument, lets pretend that all I want to do is to run (dmsetup suspend live-rw ; dmsetup resume live-rw) and have the system not fall over dead.

Also, to reiterate again, I got that message in dmesg about a problem with the snapshot handover while trying to use my previously working but not guaranteed to work 100% method. But note that method does not involve snapshot merging at all, which from the documentation I found (perhaps I didn't look in all the right places), is the only place that the snapshot handover is related to.

Note, I'm not complaining, as this is very low priority for me, but rather just doing my best to explain the issue.


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]