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 ---