[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [RFC PATCH v1 00/25] error: Automatic error concatenati
From: |
Eric Blake |
Subject: |
Re: [Qemu-devel] [RFC PATCH v1 00/25] error: Automatic error concatenation and prefixing |
Date: |
Fri, 11 Sep 2015 09:53:58 -0600 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.2.0 |
On 09/11/2015 12:42 AM, Markus Armbruster wrote:
> Quick initial high-level feedback, since I'm afraid real review will
> take a while (series is long, and I'm still swamped).
>
>>
>> So the net result for these ARM machines, is error behaviour that is
>> something like a compiler. If any one thing fails, then machine-init
>> (compilation) fails. But an early fail does not stop machine-init
>> (compilation), instead it proceeds to the end collecting subsequent
>> errors as it goes.
>
> Simple compilers stop on first error. Not as bad as it may sound when
> your machine gets from running "make" to compiler dying on the first
> error real fast.
>
> More ambitious compilers continue to diagnose more errors. This isn't
> trivial. The compiler has to satisfy post conditions even after an
> error, typically by synthesizing suitable error values. It has to take
> pains to avoid error cascades. Experienced users recognize when that
> effort fails, and typically ignore the remaining errors wholesale then.
>
> In QEMU, error cascades might be less of a problem than with compilers.
> To tell for sure, we'd have to try.
>
> However, satisfying post conditions is at least as much of a problem.
> More so since they're generally unstated. Can you explain your strategy
> for solving this one?
And that's why I'm arguing that error chaining has to be an explicit
opt-in, and not the default. Code that has been audited to be safe
against cascading errors can use error chaining to reduce boilerplate,
but the default behavior should continue to be treating the first error
as fatal rather than getting the system into a worse state due to failed
postconditions.
--
Eric Blake eblake redhat com +1-919-301-3266
Libvirt virtualization library http://libvirt.org
signature.asc
Description: OpenPGP digital signature
- [Qemu-devel] [RFC PATCH v1 17/25] i386: pc: Update error API usages, (continued)
- [Qemu-devel] [RFC PATCH v1 17/25] i386: pc: Update error API usages, Peter Crosthwaite, 2015/09/11
- [Qemu-devel] [RFC PATCH v1 18/25] monitor: update error API usages, Peter Crosthwaite, 2015/09/11
- [Qemu-devel] [RFC PATCH v1 19/25] qdev: Update error API usages, Peter Crosthwaite, 2015/09/11
- [Qemu-devel] [RFC PATCH v1 20/25] block: Update error API usages, Peter Crosthwaite, 2015/09/11
- [Qemu-devel] [RFC PATCH v1 21/25] tests: Update error API usages, Peter Crosthwaite, 2015/09/11
- [Qemu-devel] [RFC PATCH v1 22/25] usb: bus: Update error API usages, Peter Crosthwaite, 2015/09/11
- [Qemu-devel] [RFC PATCH v1 23/25] scsi: Update error API usages, Peter Crosthwaite, 2015/09/11
- [Qemu-devel] [RFC PATCH v1 24/25] migration: savevm: Update error API usages, Peter Crosthwaite, 2015/09/11
- [Qemu-devel] [RFC PATCH v1 25/25] core: Update error API usages, Peter Crosthwaite, 2015/09/11
- Re: [Qemu-devel] [RFC PATCH v1 00/25] error: Automatic error concatenation and prefixing, Markus Armbruster, 2015/09/11
- Re: [Qemu-devel] [RFC PATCH v1 00/25] error: Automatic error concatenation and prefixing,
Eric Blake <=
- Re: [Qemu-devel] [RFC PATCH v1 00/25] error: Automatic error concatenation and prefixing, Eric Blake, 2015/09/11