summaryrefslogtreecommitdiffstats
path: root/master/debian/btrfs_stat.patch
diff options
context:
space:
mode:
Diffstat (limited to 'master/debian/btrfs_stat.patch')
-rw-r--r--master/debian/btrfs_stat.patch36
1 files changed, 36 insertions, 0 deletions
diff --git a/master/debian/btrfs_stat.patch b/master/debian/btrfs_stat.patch
new file mode 100644
index 0000000..7e162e6
--- /dev/null
+++ b/master/debian/btrfs_stat.patch
@@ -0,0 +1,36 @@
+Description: Cope with btrfs / inside an encrypted block device
+ If / is inside an encrypted block device, then grub-probe can't tell what
+ its filesystem type is. Work around this.
+Author: alexeagar@gmail.com
+Bug-Ubuntu: https://bugs.launchpad.net/bugs/757631
+Forwarded: no
+Last-Update: 2011-06-15
+
+Index: b/util/grub.d/10_linux.in
+===================================================================
+--- a/util/grub.d/10_linux.in
++++ b/util/grub.d/10_linux.in
+@@ -56,7 +56,8 @@
+ LINUX_ROOT_DEVICE=UUID=${GRUB_DEVICE_UUID}
+ fi
+
+-if [ "x`${grub_probe} --device ${GRUB_DEVICE} --target=fs 2>/dev/null || true`" = xbtrfs ]; then
++if [ "x`${grub_probe} --device ${GRUB_DEVICE} --target=fs 2>/dev/null || true`" = xbtrfs ] \
++ || [ "x`stat -f --printf=%T /`" = xbtrfs ]; then
+ rootsubvol="`make_system_path_relative_to_its_root /`"
+ rootsubvol="${rootsubvol#/}"
+ if [ "x${rootsubvol}" != x ]; then
+Index: b/util/grub.d/20_linux_xen.in
+===================================================================
+--- a/util/grub.d/20_linux_xen.in
++++ b/util/grub.d/20_linux_xen.in
+@@ -56,7 +56,8 @@
+ LINUX_ROOT_DEVICE=UUID=${GRUB_DEVICE_UUID}
+ fi
+
+-if [ "x`${grub_probe} --device ${GRUB_DEVICE} --target=fs 2>/dev/null || true`" = xbtrfs ]; then
++if [ "x`${grub_probe} --device ${GRUB_DEVICE} --target=fs 2>/dev/null || true`" = xbtrfs ] \
++ || [ "x`stat -f --printf=%T /`" = xbtrfs ]; then
+ rootsubvol="`make_system_path_relative_to_its_root /`"
+ rootsubvol="${rootsubvol#/}"
+ if [ "x${rootsubvol}" != x ]; then