From mboxrd@z Thu Jan 1 00:00:00 1970 From: Zhigang Wang Subject: Re: [PATCH] tools/pygrub: fix solaris kernel sniff Date: Fri, 08 Jul 2011 14:45:04 -0400 Message-ID: <4E175030.8090901@oracle.com> References: <19991.15210.345950.186857@mariner.uk.xensource.com> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="------------020104080000000307070600" Return-path: In-Reply-To: <19991.15210.345950.186857@mariner.uk.xensource.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xensource.com Errors-To: xen-devel-bounces@lists.xensource.com To: Ian Jackson Cc: kurt.hackel@oracle.com, xen-devel@lists.xensource.com, frank.che@oracle.com List-Id: xen-devel@lists.xenproject.org This is a multi-part message in MIME format. --------------020104080000000307070600 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit On 07/08/2011 01:16 PM, Ian Jackson wrote: > Zhigang Wang writes ("[Xen-devel] [PATCH] tools/pygrub: fix solaris kernel sniff"): >> tools/pygrub: fix solaris kernel sniff >> >> Solaris 11 build 163+ removes '/platform/i86xpv/kernel/unix' and only the >> 64-bit PV kernel file '/platform/i86xpv/kernel/amd64/unix' exists. > Thanks but I'm not sure this is right. > > Previously, if none of the Solaris files in /platform exist, this code > would unconditionally exit. > > Now you have moved the relevant return inside the > if not cfg["kernel"]: > so that on a non-Solaris platform if cfg["kernel"] is not set we will > always do the "Unpleasant" tweaks. > > I don't think that's correct. > > Ian. Yes. I agree. What about attached patch? zhigang --------------020104080000000307070600 Content-Type: text/plain; name="xen-pygrub-fix-solaris-kernel-sniff" Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename="xen-pygrub-fix-solaris-kernel-sniff" # HG changeset patch # Parent 2f63562df1c4230492a81793dce3672f93c93d9a tools/pygrub: fix solaris kernel sniff Solaris 11 build 163+ removes '/platform/i86xpv/kernel/unix' and only the 64-bit PV kernel file '/platform/i86xpv/kernel/amd64/unix' exists. This patch fixes the detection. Signed-off-by: Zhigang Wang Signed-off-by: Kurt Hackel Signed-off-by: Frank Che diff -r 2f63562df1c4 tools/pygrub/src/pygrub --- a/tools/pygrub/src/pygrub Mon Jun 27 17:37:12 2011 +0100 +++ b/tools/pygrub/src/pygrub Fri Jul 08 14:42:16 2011 -0400 @@ -594,7 +594,8 @@ def supports64bitPVguest(): # If nothing has been specified, look for a Solaris domU. If found, perform the # necessary tweaks. def sniff_solaris(fs, cfg): - if not fs.file_exists("/platform/i86xpv/kernel/unix"): + if not fs.file_exists("/platform/i86xpv/kernel/unix") and \ + not fs.file_exists("/platform/i86xpv/kernel/amd64/unix"): return cfg if not cfg["kernel"]: @@ -602,9 +603,11 @@ def sniff_solaris(fs, cfg): fs.file_exists("/platform/i86xpv/kernel/amd64/unix"): cfg["kernel"] = "/platform/i86xpv/kernel/amd64/unix" cfg["ramdisk"] = "/platform/i86pc/amd64/boot_archive" - else: + elif fs.file_exists("/platform/i86xpv/kernel/unix"): cfg["kernel"] = "/platform/i86xpv/kernel/unix" cfg["ramdisk"] = "/platform/i86pc/boot_archive" + else: + return cfg # Unpleasant. Typically we'll have 'root=foo -k' or 'root=foo /kernel -k', # and we need to maintain Xen properties (root= and ip=) and the kernel --------------020104080000000307070600 Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel --------------020104080000000307070600--