All of lore.kernel.org
 help / color / mirror / Atom feed
* running pygrub on split-partition disk layouts.
@ 2014-11-21 14:18 Ian Campbell
  2014-11-21 19:05 ` M A Young
  2014-12-13 18:22 ` Konrad Rzeszutek Wilk
  0 siblings, 2 replies; 3+ messages in thread
From: Ian Campbell @ 2014-11-21 14:18 UTC (permalink / raw)
  To: M A Young, Ian Jackson, Wei Liu, Andrew Cooper; +Cc: xen-devel

An absolute age ago Michael posted a patch to allow pygrub to work with
split-partition layouts (i.e. those where the guests disk cfg refers to
xvda1, xvda2, etc rather than an xvda with a partition table). See
http://lists.xen.org/archives/html/xen-devel/2011-01/msg02076.html
(patch itself is below).

Apparently at the time I was of the opinion that this was a reasonable
workaround for the underlying issue (although I seem to have thought I
had a better solution, not so sure right now...).

I'm not sure why it didn't go in (in the likely event I just dropped the
ball -- sorry!).

Anyway, this resurfaced recently in the context of Debian bug #745419:
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=745419#27

#745419 seems to be unrelated to Michael's issue, it is a full disk
image case with an MBR etc.

Michael, are you still carrying this patch to the Fedora packages? If so
presumably it is without issue in the field so to speak?

Should the patch be resurrected for either 4.5 or 4.6? Or does anyone
have any other insights into the various issues?

Ian.

--- xen-4.1.0/tools/pygrub/src/pygrub.orig	2010-12-31 15:24:11.000000000 +0000
+++ xen-4.1.0/tools/pygrub/src/pygrub	2011-01-30 18:58:17.000000000 +0000
@@ -96,6 +96,7 @@
 
     fd = os.open(file, os.O_RDONLY)
     buf = os.read(fd, 512)
+    offzerocount = 0
     for poff in (446, 462, 478, 494): # partition offsets
 
         # MBR contains a 16 byte descriptor per partition
@@ -105,6 +106,7 @@
         
         # offset == 0 implies this partition is not enabled
         if offset == 0:
+            offzerocount += 1
             continue
 
         if type == FDISK_PART_SOLARIS or type == FDISK_PART_SOLARIS_OLD:
@@ -123,6 +125,9 @@
         else:
             part_offs.append(offset)
 
+    if offzerocount == 4:
+        # Might be a grub boot sector pretending to be an MBR
+        part_offs.append(0)
     return part_offs
 
 class GrubLineEditor(curses.textpad.Textbox):

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: running pygrub on split-partition disk layouts.
  2014-11-21 14:18 running pygrub on split-partition disk layouts Ian Campbell
@ 2014-11-21 19:05 ` M A Young
  2014-12-13 18:22 ` Konrad Rzeszutek Wilk
  1 sibling, 0 replies; 3+ messages in thread
From: M A Young @ 2014-11-21 19:05 UTC (permalink / raw)
  To: Ian Campbell; +Cc: Wei Liu, xen-devel, Ian Jackson, Andrew Cooper

On Fri, 21 Nov 2014, Ian Campbell wrote:

> An absolute age ago Michael posted a patch to allow pygrub to work with
> split-partition layouts (i.e. those where the guests disk cfg refers to
> xvda1, xvda2, etc rather than an xvda with a partition table). See
> http://lists.xen.org/archives/html/xen-devel/2011-01/msg02076.html
> (patch itself is below).
>
> Apparently at the time I was of the opinion that this was a reasonable
> workaround for the underlying issue (although I seem to have thought I
> had a better solution, not so sure right now...).
>
> I'm not sure why it didn't go in (in the likely event I just dropped the
> ball -- sorry!).
>
> Anyway, this resurfaced recently in the context of Debian bug #745419:
> https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=745419#27
>
> #745419 seems to be unrelated to Michael's issue, it is a full disk
> image case with an MBR etc.
>
> Michael, are you still carrying this patch to the Fedora packages? If so
> presumably it is without issue in the field so to speak?

Yes, it is still in Fedora (with a minor change to get it to apply as a 
line was added in the surrounding code). I haven't seen any bug reports 
relating to this patch.

 	Michael Young

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: running pygrub on split-partition disk layouts.
  2014-11-21 14:18 running pygrub on split-partition disk layouts Ian Campbell
  2014-11-21 19:05 ` M A Young
@ 2014-12-13 18:22 ` Konrad Rzeszutek Wilk
  1 sibling, 0 replies; 3+ messages in thread
From: Konrad Rzeszutek Wilk @ 2014-12-13 18:22 UTC (permalink / raw)
  To: Ian Campbell; +Cc: Wei Liu, xen-devel, Andrew Cooper, Ian Jackson, M A Young

On Fri, Nov 21, 2014 at 02:18:26PM +0000, Ian Campbell wrote:
> An absolute age ago Michael posted a patch to allow pygrub to work with
> split-partition layouts (i.e. those where the guests disk cfg refers to
> xvda1, xvda2, etc rather than an xvda with a partition table). See
> http://lists.xen.org/archives/html/xen-devel/2011-01/msg02076.html
> (patch itself is below).
> 
> Apparently at the time I was of the opinion that this was a reasonable
> workaround for the underlying issue (although I seem to have thought I
> had a better solution, not so sure right now...).
> 
> I'm not sure why it didn't go in (in the likely event I just dropped the
> ball -- sorry!).
> 
> Anyway, this resurfaced recently in the context of Debian bug #745419:
> https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=745419#27
> 
> #745419 seems to be unrelated to Michael's issue, it is a full disk
> image case with an MBR etc.
> 
> Michael, are you still carrying this patch to the Fedora packages? If so
> presumably it is without issue in the field so to speak?

ping?
> 
> Should the patch be resurrected for either 4.5 or 4.6? Or does anyone
> have any other insights into the various issues?
> 
> Ian.
> 
> --- xen-4.1.0/tools/pygrub/src/pygrub.orig	2010-12-31 15:24:11.000000000 +0000
> +++ xen-4.1.0/tools/pygrub/src/pygrub	2011-01-30 18:58:17.000000000 +0000
> @@ -96,6 +96,7 @@
>  
>      fd = os.open(file, os.O_RDONLY)
>      buf = os.read(fd, 512)
> +    offzerocount = 0
>      for poff in (446, 462, 478, 494): # partition offsets
>  
>          # MBR contains a 16 byte descriptor per partition
> @@ -105,6 +106,7 @@
>          
>          # offset == 0 implies this partition is not enabled
>          if offset == 0:
> +            offzerocount += 1
>              continue
>  
>          if type == FDISK_PART_SOLARIS or type == FDISK_PART_SOLARIS_OLD:
> @@ -123,6 +125,9 @@
>          else:
>              part_offs.append(offset)
>  
> +    if offzerocount == 4:
> +        # Might be a grub boot sector pretending to be an MBR
> +        part_offs.append(0)
>      return part_offs
>  
>  class GrubLineEditor(curses.textpad.Textbox):
> 
> 
> 
> _______________________________________________
> Xen-devel mailing list
> Xen-devel@lists.xen.org
> http://lists.xen.org/xen-devel

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2014-12-13 18:22 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-11-21 14:18 running pygrub on split-partition disk layouts Ian Campbell
2014-11-21 19:05 ` M A Young
2014-12-13 18:22 ` Konrad Rzeszutek Wilk

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.