Mailing List Archive

[xen-unstable] pvgrub: Allow to work with a partitionless virtual disc.
# HG changeset patch
# User Keir Fraser <keir.fraser@citrix.com>
# Date 1221730988 -3600
# Node ID 2e8ad0c35792d1961c17d37f073e85b863519a92
# Parent 79459028af3991d15ee03d2702a2f4358b1dd8f5
pvgrub: Allow to work with a partitionless virtual disc.

From: Bastian Blank <bastian@waldi.eu.org>
Acked-by: Samuel Thibault <samuel.thibault@ens-lyon.org>
Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
---
stubdom/grub.patches/50fs_fulldisk.diff | 60 ++++++++++++++++++++++++++++++++
1 files changed, 60 insertions(+)

diff -r 79459028af39 -r 2e8ad0c35792 stubdom/grub.patches/50fs_fulldisk.diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/stubdom/grub.patches/50fs_fulldisk.diff Thu Sep 18 10:43:08 2008 +0100
@@ -0,0 +1,72 @@
+diff -urN grub-0.97.orig/stage2/fsys_ext2fs.c grub-0.97/stage2/fsys_ext2fs.c
+--- grub-0.97.orig/stage2/fsys_ext2fs.c 2004-08-08 18:19:18.000000000 +0000
++++ grub-0.97/stage2/fsys_ext2fs.c 2008-09-16 19:31:15.000000000 +0000
+@@ -254,7 +254,7 @@
+ {
+ int retval = 1;
+
+- if ((((current_drive & 0x80) || (current_slice != 0))
++ if ((((current_slice != 0))
+ && (current_slice != PC_SLICE_TYPE_EXT2FS)
+ && (current_slice != PC_SLICE_TYPE_LINUX_RAID)
+ && (! IS_PC_SLICE_TYPE_BSD_WITH_FS (current_slice, FS_EXT2FS))
+diff -urN grub-0.97.orig/stage2/fsys_fat.c grub-0.97/stage2/fsys_fat.c
+--- grub-0.97.orig/stage2/fsys_fat.c 2005-03-15 16:52:00.000000000 +0000
++++ grub-0.97/stage2/fsys_fat.c 2008-09-16 19:31:26.000000000 +0000
+@@ -70,7 +70,7 @@
+ __u32 magic, first_fat;
+
+ /* Check partition type for harddisk */
+- if (((current_drive & 0x80) || (current_slice != 0))
++ if (((current_slice != 0))
+ && ! IS_PC_SLICE_TYPE_FAT (current_slice)
+ && (! IS_PC_SLICE_TYPE_BSD_WITH_FS (current_slice, FS_MSDOS)))
+ return 0;
+diff -urN grub-0.97.orig/stage2/fsys_ffs.c grub-0.97/stage2/fsys_ffs.c
+--- grub-0.97.orig/stage2/fsys_ffs.c 2003-07-09 11:45:52.000000000 +0000
++++ grub-0.97/stage2/fsys_ffs.c 2008-09-16 19:31:32.000000000 +0000
+@@ -82,7 +82,7 @@
+ {
+ int retval = 1;
+
+- if ((((current_drive & 0x80) || (current_slice != 0))
++ if ((((current_slice != 0))
+ && ! IS_PC_SLICE_TYPE_BSD_WITH_FS (current_slice, FS_BSDFFS))
+ || part_length < (SBLOCK + (SBSIZE / DEV_BSIZE))
+ || !devread (SBLOCK, 0, SBSIZE, (char *) SUPERBLOCK)
+diff -urN grub-0.97.orig/stage2/fsys_minix.c grub-0.97/stage2/fsys_minix.c
+--- grub-0.97.orig/stage2/fsys_minix.c 2003-07-09 11:45:53.000000000 +0000
++++ grub-0.97/stage2/fsys_minix.c 2008-09-16 19:32:01.000000000 +0000
+@@ -160,7 +160,7 @@
+ int
+ minix_mount (void)
+ {
+- if (((current_drive & 0x80) || current_slice != 0)
++ if ((current_slice != 0)
+ && ! IS_PC_SLICE_TYPE_MINIX (current_slice)
+ && ! IS_PC_SLICE_TYPE_BSD_WITH_FS (current_slice, FS_OTHER))
+ return 0; /* The partition is not of MINIX type */
+diff -urN grub-0.97.orig/stage2/fsys_ufs2.c grub-0.97/stage2/fsys_ufs2.c
+--- grub-0.97.orig/stage2/fsys_ufs2.c 2004-06-19 12:17:52.000000000 +0000
++++ grub-0.97/stage2/fsys_ufs2.c 2008-09-16 19:32:32.000000000 +0000
+@@ -87,7 +87,7 @@
+ sblockloc = -1;
+ type = 0;
+
+- if (! (((current_drive & 0x80) || (current_slice != 0))
++ if (! (((current_slice != 0))
+ && ! IS_PC_SLICE_TYPE_BSD_WITH_FS (current_slice, FS_BSDFFS)))
+ {
+ for (i = 0; sblock_try[i] != -1; ++i)
+diff -urN grub-0.97.orig/stage2/fsys_vstafs.c grub-0.97/stage2/fsys_vstafs.c
+--- grub-0.97.orig/stage2/fsys_vstafs.c 2003-07-09 11:45:53.000000000 +0000
++++ grub-0.97/stage2/fsys_vstafs.c 2008-09-16 19:32:39.000000000 +0000
+@@ -47,7 +47,7 @@
+ {
+ int retval = 1;
+
+- if( (((current_drive & 0x80) || (current_slice != 0))
++ if( (((current_slice != 0))
+ && current_slice != PC_SLICE_TYPE_VSTAFS)
+ || ! devread (0, 0, BLOCK_SIZE, (char *) FSYS_BUF)
+ || FIRST_SECTOR->fs_magic != 0xDEADFACE)

_______________________________________________
Xen-changelog mailing list
Xen-changelog@lists.xensource.com
http://lists.xensource.com/xen-changelog