grub 0.97-47lenny2
Robert Millan
rmh at aybabtu.com
Fri Jan 16 21:56:46 UTC 2009
Hi,
Please consider unblocking grub 0.97-47lenny2. Debdiff is attached, but
(aside from the changelog entry) is barely readable. I'm including the
new xfs_freeze.diff separately.
--
Robert Millan
The DRM opt-in fallacy: "Your data belongs to us. We will decide when (and
how) you may access your data; but nobody's threatening your freedom: we
still allow you to remove your data and not access it at all."
-------------- next part --------------
diff -u grub-0.97/debian/changelog grub-0.97/debian/changelog
--- grub-0.97/debian/changelog
+++ grub-0.97/debian/changelog
@@ -1,3 +1,12 @@
+grub (0.97-47lenny2) unstable; urgency=high
+
+ * patches/xfs_freeze.diff: Replace with a new patch, which thaws XFS
+ inmediately after freezing it. (Closes: #239111, #243835, #246111,
+ #309218, #425367) hopefully for good this time. Thanks everyone
+ who sent their feedback, too many to list them here.
+
+ -- Robert Millan <rmh at aybabtu.com> Fri, 16 Jan 2009 22:18:45 +0100
+
grub (0.97-47lenny1) unstable; urgency=high
* update-grub: Try to regenerate device.map when grub-probe fails (and
diff -u grub-0.97/debian/patches/xfs_freeze.diff grub-0.97/debian/patches/xfs_freeze.diff
--- grub-0.97/debian/patches/xfs_freeze.diff
+++ grub-0.97/debian/patches/xfs_freeze.diff
@@ -1,39 +1,21 @@
-
-Copyright: rmh
-Upstream: waiting to commit untill known to work
-
-diff -ur svn.old/util/grub-install.in svn/util/grub-install.in
---- svn.old/util/grub-install.in 2004-07-23 00:48:23.000000000 +0200
-+++ svn/util/grub-install.in 2004-07-26 23:25:59.000000000 +0200
-@@ -450,6 +450,20 @@
- # Create a safe temporary file.
+diff -ur grub-0.97.old/util/grub-install.in grub-0.97/util/grub-install.in
+--- grub-0.97.old/util/grub-install.in 2004-07-24 20:57:31.000000000 +0200
++++ grub-0.97/util/grub-install.in 2009-01-16 22:15:46.000000000 +0100
+@@ -422,6 +422,17 @@
+ test -n "$mkimg" && img_file=`$mkimg`
test -n "$mklog" && log_file=`$mklog`
-+# Sync to prevent GRUB from not finding stage files (notably, on XFS)
++# GRUB will try to verify that stage2 is accessible using its own
++# filesystem drivers. Make sure it's committed to disk.
+sync
+
-+# XFS needs special magic
-+xfs_frozen=false
-+if which xfs_freeze > /dev/null ; then
-+ cat << EOF
-+Due to a bug in xfs_freeze, the following command might produce a segmentation
-+fault when ${grubdir} is not in an XFS filesystem. This error is harmless and
-+can be ignored.
-+EOF
-+ if xfs_freeze -f ${grubdir} ; then xfs_frozen=true ; fi
++# On XFS, sync() is not enough.
++if [ `grub-probe -t fs ${grubdir}` = "xfs" ] ; then
++ xfs_freeze -f ${grubdir} && xfs_freeze -u ${grubdir}
++ # We don't have set -e. If xfs_freeze failed, it's worth trying anyway,
++ # maybe we're lucky.
+fi
+
- # Now perform the installation.
- $grub_shell --batch $no_floppy --device-map=$device_map <<EOF >$log_file
- root $root_drive
-@@ -457,6 +471,10 @@
- quit
- EOF
-
-+if ${xfs_frozen} ; then
-+ xfs_freeze -u ${grubdir}
-+fi
-+
- if grep "Error [0-9]*: " $log_file >/dev/null || test $debug = yes; then
- cat $log_file 1>&2
- exit 1
+ for file in ${grubdir}/stage1 ${grubdir}/stage2 ${grubdir}/*stage1_5; do
+ count=5
+ tmp=`echo $file | sed "s|^${grubdir}|${grub_prefix}|"`
-------------- next part --------------
A non-text attachment was scrubbed...
Name: xfs_freeze.diff
Type: text/x-diff
Size: 850 bytes
Desc: not available
Url : http://lists.alioth.debian.org/pipermail/pkg-grub-devel/attachments/20090116/9646b792/attachment.diff
More information about the Pkg-grub-devel
mailing list