[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH OSSTEST 1/2] uboot: use "readlink -f"
On Tue, 2015-03-24 at 11:45 +0000, Wei Liu wrote: > If the path is not a symlink, readlink by default returns empty string. > Use "-f" to always return canonical path. This fixes the problem that > xenpolicy file not getting loaded (because it is not a symlink). > > Also change another spot that calls readlink to get xen binary path in > case in the future we decide to not use symlink. Unfortunately this has unexpectedly made things worse. See: http://www.chiark.greenend.org.uk/~xensrcts/logs/36757/ The issue is that readlink -f returns the full absolute path, so given $ ls /boot/xen* xen -> xen-X.Y xen-X.Y Then: $ readlink /boot/xen xen-X.Y $ readlink -f /boot/xen /boot/xen-X.Y This breaks because on these systems /boot is a separate partition, so from the bootloaders point of view we need to be accessing /xen-X.Y not /boot/xen-X.Y. I don't know of an easy way to get the path of a file relative to the filesystem root which contains it. So I would propose to drop the second hunk and the second paragraph of the commit message and to make the first hunk simply "flaskpolicy=$flaskpolicy" (rather than unescaping the usages, this will make it easier to change in the future). I think that resubmission will end up being to the new colo at this point. > > Signed-off-by: Wei Liu <wei.liu2@xxxxxxxxxx> > --- > Osstest/Debian.pm | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/Osstest/Debian.pm b/Osstest/Debian.pm > index 6784024..b829878 100644 > --- a/Osstest/Debian.pm > +++ b/Osstest/Debian.pm > @@ -162,7 +162,7 @@ sub setupboot_uboot ($$$$) { > $flask_commands = <<END; > > setenv flask_policy_addr_r 0x1200000 > -flaskpolicy=`readlink /boot/$flaskpolicy` > +flaskpolicy=`readlink -f /boot/$flaskpolicy` > ext2load scsi 0 \\\${flask_policy_addr_r} \$flaskpolicy > fdt mknod /chosen module\@2 > fdt set /chosen/module\@2 compatible "xen,xsm-policy" "xen,multiboot-module" > @@ -227,7 +227,7 @@ fi > cp -n /boot/boot.xen /boot/boot.xen.bak > cp -n /boot/boot.scr.xen /boot/boot.scr.xen.bak > > -xen=`readlink /boot/$xen` > +xen=`readlink -f /boot/$xen` > > cat >/boot/boot.xen <<EOF > ${load_dtb} _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |