Your message dated Sat, 28 Jun 2008 09:47:08 +0000
with message-id <[EMAIL PROTECTED]>
and subject line Bug#476366: fixed in xen-3 3.2.1-2
has caused the Debian Bug report #476366,
regarding xen-utils-3.2-1: pygrub cannot read ext3 files systems with 256 byte 
inodes
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact [EMAIL PROTECTED]
immediately.)


-- 
476366: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=476366
Debian Bug Tracking System
Contact [EMAIL PROTECTED] with problems
--- Begin Message ---
Package: xen-utils-3.2-1
Version: 3.2.0-4
Severity: important
Tags: patch

pygrub uses tools/libfsimage to read a guest filesystem. Unfortunately
the grub derived code does not support 256 byte inodes. Grub itself has
been patched (see #463236 and #463123) and this patch has now been
applied to the upstream Xen tree. See
<http://xenbits.xensource.com/staging/xen-unstable.hg?rev/c777e572a467> and 
attached.

However -- I would recommend that pygrub in Debian should be using the
e2fslibs based backend rather than the grub derived code since
this library is a much more canonical implementation of userspace
ext2/3 and is likely to support newer features more reliably.

This can be achieved with a build-dependency on e2fslibs-dev which will
cause this alternative code to be built. Patch is attached.

If you do not wish to go down this path then I would recommend either
adding a build-conflicts (if such a thing exists) or patching
tools/libfsimage/Makefile to always select the grub code otherwise you
run the risk of the selection changing randomly depending on buildd
configuration.

Two patches are attached -- I guess you want one or the other.

Cheers,
Ian.

-- System Information:
Debian Release: lenny/sid
  APT prefers unstable
  APT policy: (500, 'unstable'), (500, 'stable')
Architecture: amd64 (x86_64)

Kernel: Linux 2.6.18.8-xen (SMP w/1 CPU core)
Locale: LANG=en_GB.UTF-8, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/bash

Versions of packages xen-utils-3.2-1 depends on:
ii  iproute                20080108-1        Professional tools to control the 
ii  libc6                  2.7-10            GNU C Library: Shared libraries
ii  libncurses5            5.6+20080405-1    Shared libraries for terminal hand
ii  libsdl1.2debian        1.2.13-2          Simple DirectMedia Layer
ii  libssl0.9.8            0.9.8g-8          SSL shared libraries
ii  libxenstore3.0         3.2.0-4           Xenstore communications library fo
ii  python                 2.4.4-2           An interactive high-level object-o
ii  python-central         0.6.2             register and build utility for Pyt
ii  udev                   0.114-2           /dev/ and hotplug management daemo
ii  xen-utils-common       3.2.0-2           XEN administrative tools - common 
ii  zlib1g                 1:1.2.3.3.dfsg-12 compression library - runtime

Versions of packages xen-utils-3.2-1 recommends:
ii  bridge-utils                  1.4-1      Utilities for configuring the Linu
ii  xen-hypervisor-3.2-1-amd64 [x 3.2.0-4    The Xen Hypervisor on AMD64

-- no debconf information
Index: xen-3/debian/patches/tools-libfsimage-ext3-256-byte-inodes.diff
===================================================================
--- xen-3/debian/patches/tools-libfsimage-ext3-256-byte-inodes.diff	(revision 0)
+++ xen-3/debian/patches/tools-libfsimage-ext3-256-byte-inodes.diff	(revision 0)
@@ -0,0 +1,106 @@
+# HG changeset patch
+# User Keir Fraser <[EMAIL PROTECTED]>
+# Date 1208335544 -3600
+# Node ID c777e572a4672f1ebddd95e95b94ca1e1e9e01ca
+# Parent  c3efeb3095ac8699d564cdbbe91ca214afe8e4d3
+[LIBFSIMAGE] Support 256 byte inodes on ext3
+
+Patch taken from Debian grub package version 0.97-32.
+See http://bugs.debian.org/463236 & http://bugs.debian.org/463123
+
+Signed-off-by: Ian Campbell <[EMAIL PROTECTED]>
+
+diff -r c3efeb3095ac -r c777e572a467 tools/libfsimage/ext2fs/fsys_ext2fs.c
+--- a/tools/libfsimage/ext2fs/fsys_ext2fs.c	Wed Apr 16 09:32:45 2008 +0100
++++ b/tools/libfsimage/ext2fs/fsys_ext2fs.c	Wed Apr 16 09:45:44 2008 +0100
+@@ -77,7 +77,52 @@ struct ext2_super_block
+     __u32 s_rev_level;		/* Revision level */
+     __u16 s_def_resuid;		/* Default uid for reserved blocks */
+     __u16 s_def_resgid;		/* Default gid for reserved blocks */
+-    __u32 s_reserved[235];	/* Padding to the end of the block */
++    /*
++     * These fields are for EXT2_DYNAMIC_REV superblocks only.
++     *
++     * Note: the difference between the compatible feature set and
++     * the incompatible feature set is that if there is a bit set
++     * in the incompatible feature set that the kernel doesn't
++     * know about, it should refuse to mount the filesystem.
++     *
++     * e2fsck's requirements are more strict; if it doesn't know
++     * about a feature in either the compatible or incompatible
++     * feature set, it must abort and not try to meddle with
++     * things it doesn't understand...
++     */
++    __u32 s_first_ino;		/* First non-reserved inode */
++    __u16 s_inode_size;		/* size of inode structure */
++    __u16 s_block_group_nr;	/* block group # of this superblock */
++    __u32 s_feature_compat;	/* compatible feature set */
++    __u32 s_feature_incompat;	/* incompatible feature set */
++    __u32 s_feature_ro_compat;	/* readonly-compatible feature set */
++    __u8  s_uuid[16];		/* 128-bit uuid for volume */
++    char  s_volume_name[16];	/* volume name */
++    char  s_last_mounted[64];	/* directory where last mounted */
++    __u32 s_algorithm_usage_bitmap; /* For compression */
++    /*
++     * Performance hints.  Directory preallocation should only
++     * happen if the EXT2_FEATURE_COMPAT_DIR_PREALLOC flag is on.
++     */
++    __u8  s_prealloc_blocks;	/* Nr of blocks to try to preallocate*/
++    __u8  s_prealloc_dir_blocks;	/* Nr to preallocate for dirs */
++    __u16 s_reserved_gdt_blocks;/* Per group table for online growth */
++    /*
++     * Journaling support valid if EXT2_FEATURE_COMPAT_HAS_JOURNAL set.
++     */
++    __u8 s_journal_uuid[16];	/* uuid of journal superblock */
++    __u32 s_journal_inum;	/* inode number of journal file */
++    __u32 s_journal_dev;	/* device number of journal file */
++    __u32 s_last_orphan;	/* start of list of inodes to delete */
++    __u32 s_hash_seed[4];	/* HTREE hash seed */
++    __u8  s_def_hash_version;	/* Default hash version to use */
++    __u8  s_jnl_backup_type; 	/* Default type of journal backup */
++    __u16 s_reserved_word_pad;
++    __u32 s_default_mount_opts;
++    __u32 s_first_meta_bg;	/* First metablock group */
++    __u32 s_mkfs_time;		/* When the filesystem was created */
++    __u32 s_jnl_blocks[17]; 	/* Backup of the journal inode */
++    __u32 s_reserved[172];	/* Padding to the end of the block */
+   };
+ 
+ struct ext2_group_desc
+@@ -215,6 +260,9 @@ struct ext2_dir_entry
+ /* linux/ext2_fs.h */
+ #define EXT2_ADDR_PER_BLOCK(s)          (EXT2_BLOCK_SIZE(s) / sizeof (__u32))
+ #define EXT2_ADDR_PER_BLOCK_BITS(s)		(log2(EXT2_ADDR_PER_BLOCK(s)))
++
++#define EXT2_INODE_SIZE(s)		(SUPERBLOCK->s_inode_size)
++#define EXT2_INODES_PER_BLOCK(s)	(EXT2_BLOCK_SIZE(s)/EXT2_INODE_SIZE(s))
+ 
+ /* linux/ext2_fs.h */
+ #define EXT2_BLOCK_SIZE_BITS(s)        ((s)->s_log_block_size + 10)
+@@ -537,7 +585,7 @@ ext2fs_dir (fsi_file_t *ffi, char *dirna
+       gdp = GROUP_DESC;
+       ino_blk = gdp[desc].bg_inode_table +
+ 	(((current_ino - 1) % (SUPERBLOCK->s_inodes_per_group))
+-	 >> log2 (EXT2_BLOCK_SIZE (SUPERBLOCK) / sizeof (struct ext2_inode)));
++	 >> log2 (EXT2_INODES_PER_BLOCK (SUPERBLOCK)));
+ #ifdef E2DEBUG
+       printf ("inode table fsblock=%d\n", ino_blk);
+ #endif /* E2DEBUG */
+@@ -549,13 +597,12 @@ ext2fs_dir (fsi_file_t *ffi, char *dirna
+       /* reset indirect blocks! */
+       mapblock2 = mapblock1 = -1;
+ 
+-      raw_inode = INODE +
+-	((current_ino - 1)
+-	 & (EXT2_BLOCK_SIZE (SUPERBLOCK) / sizeof (struct ext2_inode) - 1));
++      raw_inode = (struct ext2_inode *)((char *)INODE +
++	((current_ino - 1) & (EXT2_INODES_PER_BLOCK (SUPERBLOCK) - 1)) *
++	EXT2_INODE_SIZE (SUPERBLOCK));
+ #ifdef E2DEBUG
+       printf ("ipb=%d, sizeof(inode)=%d\n",
+-	      (EXT2_BLOCK_SIZE (SUPERBLOCK) / sizeof (struct ext2_inode)),
+-	      sizeof (struct ext2_inode));
++	      EXT2_INODES_PER_BLOCK (SUPERBLOCK), EXT2_INODE_SIZE (SUPERBLOCK));
+       printf ("inode=%x, raw_inode=%x\n", INODE, raw_inode);
+       printf ("offset into inode table block=%d\n", (int) raw_inode - (int) INODE);
+       for (i = (unsigned char *) INODE; i <= (unsigned char *) raw_inode;
Index: xen-3/debian/patches/series
===================================================================
--- xen-3/debian/patches/series	(revision 545)
+++ xen-3/debian/patches/series	(working copy)
@@ -11,7 +11,8 @@
 tools-ioemu-config.diff
 tools-pygrub-prefix.diff
 tools-libfsimage-prefix.diff
+tools-libfsimage-ext3-256-byte-inodes.diff
 disable-features.diff
 tools-misc-xend-race.diff
 doc-remove-unused.diff
 CVE-2008-0928

Index: xen-3/debian/templates/control.source.in
===================================================================
--- xen-3/debian/templates/control.source.in    (revision 545)
+++ xen-3/debian/templates/control.source.in    (working copy)
@@ -3,7 +3,7 @@
 Priority: extra
 Maintainer: Debian Xen Team <[EMAIL PROTECTED]>
 Uploaders: Julien Danjou <[EMAIL PROTECTED]>, Jeremy T. Bouse <[EMAIL 
PROTECTED]>, Guido Trotter <[EMAIL PROTECTED]>, Bastian Blank <[EMAIL 
PROTECTED]>
-Build-Depends: debhelper (>= 5.0.37.2), python-dev (>= 2.3), libsdl1.2-dev, 
bcc, lsb-release, python-central (>= 0.5), quilt, zlib1g-dev, libjpeg-dev, 
libncurses5-dev, libssl-dev, libvncserver-dev, gcc-multilib [amd64]
+Build-Depends: debhelper (>= 5.0.37.2), python-dev (>= 2.3), libsdl1.2-dev, 
bcc, lsb-release, python-central (>= 0.5), quilt, zlib1g-dev, libjpeg-dev, 
libncurses5-dev, libssl-dev, libvncserver-dev, gcc-multilib [amd64], 
e2fslibs-dev
 Build-Depends-Indep: graphviz, gs-common, texlive-fonts-recommended, 
texlive-latex-recommended
 Standards-Version: 3.7.2.0
 XS-Python-Version: current

--- End Message ---
--- Begin Message ---
Source: xen-3
Source-Version: 3.2.1-2

We believe that the bug you reported is fixed in the latest version of
xen-3, which is due to be installed in the Debian FTP archive:

libxen-dev_3.2.1-2_amd64.deb
  to pool/main/x/xen-3/libxen-dev_3.2.1-2_amd64.deb
libxenstore3.0_3.2.1-2_amd64.deb
  to pool/main/x/xen-3/libxenstore3.0_3.2.1-2_amd64.deb
xen-3_3.2.1-2.diff.gz
  to pool/main/x/xen-3/xen-3_3.2.1-2.diff.gz
xen-3_3.2.1-2.dsc
  to pool/main/x/xen-3/xen-3_3.2.1-2.dsc
xen-docs-3.2_3.2.1-2_all.deb
  to pool/main/x/xen-3/xen-docs-3.2_3.2.1-2_all.deb
xen-hypervisor-3.2-1-amd64_3.2.1-2_amd64.deb
  to pool/main/x/xen-3/xen-hypervisor-3.2-1-amd64_3.2.1-2_amd64.deb
xen-utils-3.2-1_3.2.1-2_amd64.deb
  to pool/main/x/xen-3/xen-utils-3.2-1_3.2.1-2_amd64.deb
xenstore-utils_3.2.1-2_amd64.deb
  to pool/main/x/xen-3/xenstore-utils_3.2.1-2_amd64.deb



A summary of the changes between this version and the previous one is
attached.

Thank you for reporting the bug, which will now be closed.  If you
have further comments please address them to [EMAIL PROTECTED],
and the maintainer will reopen the bug report if appropriate.

Debian distribution maintenance software
pp.
Bastian Blank <[EMAIL PROTECTED]> (supplier of updated xen-3 package)

(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing [EMAIL PROTECTED])


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Format: 1.8
Date: Sat, 28 Jun 2008 11:30:43 +0200
Source: xen-3
Binary: xen-docs-3.2 libxenstore3.0 libxen-dev xenstore-utils xen-utils-3.2-1 
xen-hypervisor-3.2-1-amd64 xen-hypervisor-3.2-1-i386 
xen-hypervisor-3.2-1-i386-nonpae
Architecture: source all amd64
Version: 3.2.1-2
Distribution: unstable
Urgency: low
Maintainer: Debian Xen Team <[EMAIL PROTECTED]>
Changed-By: Bastian Blank <[EMAIL PROTECTED]>
Description: 
 libxen-dev - Public headers and libs for Xen
 libxenstore3.0 - Xenstore communications library for Xen
 xen-docs-3.2 - Documentation for Xen
 xen-hypervisor-3.2-1-amd64 - The Xen Hypervisor on AMD64
 xen-hypervisor-3.2-1-i386 - The Xen Hypervisor on i386
 xen-hypervisor-3.2-1-i386-nonpae - The Xen Hypervisor on i386 without pae
 xen-utils-3.2-1 - XEN administrative tools
 xenstore-utils - Xenstore utilities for Xen
Closes: 474509 476366 487095
Changes: 
 xen-3 (3.2.1-2) unstable; urgency=low
 .
   * Use e2fslibs based ext2 support for pygrub. (closes: #476366)
   * Fix missing checks in pvfb code.
     See CVE-2008-1952. (closes: #487095)
   * Add support for loading bzImage files. (closes: #474509)
   * Enable TLS support in ioemu code.
   * Drop libcrypto usage because of GPL-incompatibility.
   * Remove AES code from blktap drivers. Considered broken.
Checksums-Sha1: 
 c554a791c3f7dc1bed082192d00e37848a88a947 1599 xen-3_3.2.1-2.dsc
 92388212fee2582b2d62df9b9c05a650a02fb3e3 54201 xen-3_3.2.1-2.diff.gz
 1ddc8e09b1ae2db6467b62ad3a2804dc4ab84aca 1198380 xen-docs-3.2_3.2.1-2_all.deb
 fff42ccf3ab065a531230c8a701017bcbba592c3 418614 
xen-hypervisor-3.2-1-amd64_3.2.1-2_amd64.deb
 ea5b8522c4077c9e2dafecd4eac3a7de379b910e 197660 libxen-dev_3.2.1-2_amd64.deb
 211fb10460b1282e560ddfe036c971091b7f592b 19360 libxenstore3.0_3.2.1-2_amd64.deb
 6465d930425e260e36debdddba07979c0a192084 1070516 
xen-utils-3.2-1_3.2.1-2_amd64.deb
 b358e53c77ede134c0d1c2ab3b4b68fa496792fd 22566 xenstore-utils_3.2.1-2_amd64.deb
Checksums-Sha256: 
 69b20ecc25fef7f04c9547a0608e8a7bce243f27f818280addac979fe1180edd 1599 
xen-3_3.2.1-2.dsc
 63d4117c4171f80babeec1ff28cdd5a48c70e894dcaa3869c30aa9e72b77b86e 54201 
xen-3_3.2.1-2.diff.gz
 3051f89b77cff4be4b0286a90570fb7ff38cac928c8887f4182c7bcf6e519cb0 1198380 
xen-docs-3.2_3.2.1-2_all.deb
 acd6ea5866572979a91924dca7931d2cba7150eb898e5667f447e0769336b227 418614 
xen-hypervisor-3.2-1-amd64_3.2.1-2_amd64.deb
 37b50625df1c020555f885ae1dca56e47fa892a922ac113816cd5655dcb16c13 197660 
libxen-dev_3.2.1-2_amd64.deb
 8f406296db2af09bc595610b5d8cfaa56c858394928255c97becb7544cffbb36 19360 
libxenstore3.0_3.2.1-2_amd64.deb
 4ab689b7bd57b4885b4f131606f34f5b56ad56d5d39d7621eb896657a85cfab7 1070516 
xen-utils-3.2-1_3.2.1-2_amd64.deb
 73ff1e710be16f2732caada6a66c6af90541bd94a9444d8dd24073fbdd7fd61e 22566 
xenstore-utils_3.2.1-2_amd64.deb
Files: 
 e00ffdb6939f517d8d5afed6b418f051 1599 misc extra xen-3_3.2.1-2.dsc
 df6ffb368b0ce6e3723ec823407bfb52 54201 misc extra xen-3_3.2.1-2.diff.gz
 963fd1aab43d22e745de2a93102ce26f 1198380 doc extra xen-docs-3.2_3.2.1-2_all.deb
 6ac0ceb062f16a781eba3dcb4858b16f 418614 misc extra 
xen-hypervisor-3.2-1-amd64_3.2.1-2_amd64.deb
 94df8b325e502ee549611e603ec8dac7 197660 libdevel extra 
libxen-dev_3.2.1-2_amd64.deb
 b85bef2139a4ee76fea154f0edae08b4 19360 libs extra 
libxenstore3.0_3.2.1-2_amd64.deb
 d10f8282dbf0f254a1f26a5f89ac03e9 1070516 misc extra 
xen-utils-3.2-1_3.2.1-2_amd64.deb
 4523b836a00dc3f700662c67d72f9256 22566 admin extra 
xenstore-utils_3.2.1-2_amd64.deb

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (GNU/Linux)

iEYEARECAAYFAkhmBm0ACgkQxWtQqFixGB4ENACeLdidWsyiyy5Gxvs6fSPV+Pbz
57oAnjrl6QRi6xlYQQQBL7b94ulaZ19e
=3U/n
-----END PGP SIGNATURE-----



--- End Message ---

Reply via email to