[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH] pygrub: do not overload RuntimeError for "no menu.lst found"
On 10/20/2011 10:32 AM, Ian Campbell wrote: > From:pbonzini@xxxxxxxxxx > > # HG changeset patch > # User Paolo Bonzini<pbonzini@xxxxxxxxxx> > # Date 1319096986 -7200 > # Node ID bd1f7361d3d7f4c767af21317fb4ec7ea1372f42 > # Parent 1b110e895e285f43f14532e14c77597e54a0bcd2 > pygrub will still try the next partition if run_grub exits with a > "real" error, thus hiding the root cause from the trace. Defining > a separate exception for "no bootloader config file found" avoids > this. Are all the other RuntimeError's ok or should we be defining a bunch of more specific exceptions? get_solaris_slice triggers RuntimeErrors which are eaten by the caller. That's not too nice and could also be replaced by NotFoundError, but it does not hide as many possible errors as run_grub. read_config triggers a RuntimeError if it cannot find the file image itself. It is called via run_grub (which calls the Grub constructor), so it will become a hard failure after this patch. This is intended; not finding the file image is very wrong. Grub2ConfigFile triggers RuntimeErrors if it fails to parse the grub.cfg file (wrong menuentry nesting, missing braces, unexpected braces). This is also called via run_grub and will become a hard failure. The new behavior is better than looking for another boot partition, since the actual error is hidden and anyway it's very unlikely that there will be two boot partitions. Other occurrences are only for the case of __name__ == "__main__", so they are unaffected by the patch. We need a signed-off-by for this change, per DCO: http://wiki.xen.org/xenwiki/SubmittingXenPatches Signed-off-by: Paolo Bonzini <pbonzini@xxxxxxxxxx> Shall I resend, or can you add it while applying? Paolo _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |