[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [Nbd] Hibernate and qemu-nbd
From: |
Stefan Hajnoczi |
Subject: |
Re: [Qemu-devel] [Nbd] Hibernate and qemu-nbd |
Date: |
Tue, 15 Oct 2013 17:17:54 +0200 |
On Thu, Oct 10, 2013 at 11:15 AM, Stefan Hajnoczi <address@hidden> wrote:
> On Fri, Oct 04, 2013 at 07:30:45AM -0700, Mark Trumpold wrote:
>>
>>
>> On 9/26/13 10:18 PM, "Stefan Hajnoczi" <address@hidden> wrote:
>>
>> >
>> >Try the qemu-nbd --persistent option. That should prevent it from
>> >shutting down when nbd-client is disconnected.
>> >
>> >Stefan
>> >
>>
>>
>> Hi Stefan,
>>
>> Sorry for the delay..
>> I tried the following per your suggestion:
>>
>> 920 qemu-nbd --persistent -p 2000 /root/qemu/q1.img &
>> 921 nbd-client -persist localhost 2000 /dev/nbd0
>> 922 fsck /dev/nbd0
>> 923 mount /dev/nbd0 /mnt
>> 924 ls /mnt
>> 925 umount /dev/nbd0
>> ::
>>
>> 927 echo reboot >/sys/power/disk
>> 928 echo disk >/sys/power/state
>> 929 mount /dev/nbd0 /mnt
>>
>> This seems to work; that is both sides (client and server) persist
>> after the hibernate cycle.
>>
>> However, if I don't 'umount' '/dev/nbd0' before the hibernate
>> cycle, and try to 'ls /mnt' after, the 'ls' hangs indefinitely.
>>
>> For my real use case we have the root filesystem mounted,
>> so unmounting is not an option (at least I don't think so).
>>
>> I also tried remounting readonly, and also 'blockdev --flushbufs ..'
>> before the hibernate cycle -- either or both did not help.
>>
>> I had thought about trying a 'chroot' and then a 'umount', but
>> have not yet tried this.
>>
>> This one was so close..
Could you try drop the umount/mount and capture the following straces:
strace -p $(pgrep nbd-client) -o /var/tmp/nbd-client.strace
strace -p $(pgrep qemu-nbd) -o /var/tmp/qemu-nbd.strace
In particular, let's find out what happens when you run ls /mnt after
resuming the machine. The nbd-client should reconnect to qemu-nbd and
I/O requests would flow to qemu-nbd again. But something is stuck;
the problem might be clear from the strace output.
Stefan