From: Gerd Hoffmann <kraxel@redhat.com>
To: qemu-devel@nongnu.org
Subject: Re: [Qemu-devel] [PATCH v3] Stop VM on ENOSPC error.
Date: Tue, 20 Jan 2009 10:25:04 +0100 [thread overview]
Message-ID: <49759870.3050305@redhat.com> (raw)
In-Reply-To: <18804.46780.936806.748045@mariner.uk.xensource.com>
Ian Jackson wrote:
> Anthony Liguori writes ("Re: [Qemu-devel] [PATCH v3] Stop VM on ENOSPC error."):
>> Ian Jackson wrote:
>>> Once again, this feature should be optional.
>> Why?
>
> Well, three reasons, one general and theoretical, and two practical
> and rather Xen-specific.
>
> The theoretical reason is that a guest is in a better postion to deal
> with the situation because it knows its access patterns. Often the
> response to a failing write in a mission-critical system will be some
> kind a fallback behaviour, which is likely to work. Stopping the VM
> unconditionally is not something that the guest can cope with.
The fundamental issue is that you can't signal ENOSPC to the guest via
IDE protocol because that is an error condition which simply can't
happen on real hardware. You can only signal EIO, which is something
very different, and the OS likely goes into "Oops, disk broken" mode.
Which probably isn't what you want here ...
It might make sense to signal ENOSPC to the guest with a paravirtual
disk. Then the guest knows what really happened has at least the chance
to do something more reasonable in response, although I suspect most of
the guests out there today wouldn't.
> But in the Xen context, a Xen VM is not a `task' in the same way.
> (Xen users make much less use of the built-in cow formats for this
> reason, often preferring LVM snapshots or even deeper storage magic.)
With LVM volumes as storage you shouldn't run into ENOSPC error
conditions in the first place, and the patch should be a no-op for you.
cheers,
Gerd
next prev parent reply other threads:[~2009-01-20 9:25 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-01-18 11:05 [Qemu-devel] [PATCH v3] Stop VM on ENOSPC error Gleb Natapov
2009-01-19 11:56 ` Ian Jackson
2009-01-19 12:16 ` Gleb Natapov
2009-01-19 16:15 ` Anthony Liguori
2009-01-19 17:22 ` Ian Jackson
2009-01-19 18:38 ` Avi Kivity
2009-01-19 18:41 ` Gleb Natapov
2009-01-20 9:25 ` Gerd Hoffmann [this message]
2009-01-20 9:35 ` Gleb Natapov
2009-01-20 10:44 ` Carl-Daniel Hailfinger
2009-01-20 11:05 ` Gleb Natapov
2009-01-20 11:35 ` Vincent Hanquez
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=49759870.3050305@redhat.com \
--to=kraxel@redhat.com \
--cc=qemu-devel@nongnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).