Fix the device number calculation for /dev/hd* device names; ide device numbering works differently to scsi Signed-off-by: Jody Belka <knew-xen@pimb.org> diffstat: blkif.py | 7 +++++-- 1 files changed, 5 insertions(+), 2 deletions(-) diff -durN xen.orig/tools/python/xen/xend/server/blkif.py xen/tools/python/xen/xend/server/blkif.py --- xen.orig/tools/python/xen/xend/server/blkif.py 2005-01-30 00:46:29.000000000 +0100 +++ xen/tools/python/xen/xend/server/blkif.py 2005-01-31 22:08:52.410420992 +0100 @@ -66,8 +66,11 @@ if re.match( ''/dev/sd[a-p]([0-9]|1[0-5])'', n): return 8 * 256 + 16 * (ord(n[7:8]) - ord(''a'')) + int(n[8:]) - if re.match( ''/dev/hd[a-p]([0-9]|[1-5][0-9]|6[0-3])'', n): - return 3 * 256 + 16 * (ord(n[7:8]) - ord(''a'')) + int(n[8:]) + if re.match( ''/dev/hd[a-t]([1-9]|[1-5][0-9]|6[0-3])?'', n): + ide_majors = [ 3, 22, 33, 34, 56, 57, 88, 89, 90, 91 ] + major = ide_majors[(ord(n[7:8]) - ord(''a'')) / 2] + minor = ((ord(n[7:8]) - ord(''a'')) % 2) * 64 + int(n[8:] or 0) + return major * 256 + minor # see if this is a hex device number if re.match( ''^(0x)?[0-9a-fA-F]+$'', name ): ------------------------------------------------------- This SF.Net email is sponsored by: IntelliVIEW -- Interactive Reporting Tool for open source databases. Create drag-&-drop reports. Save time by over 75%! Publish reports on the web. Export to DOC, XLS, RTF, etc. Download a FREE copy at http://www.intelliview.com/go/osdn_nl _______________________________________________ Xen-devel mailing list Xen-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/xen-devel