tag rc6
[openwrt/svn-archive/openwrt.git] / target / linux / linux-2.4 / patches / generic / 203-hfsplus_fix.patch
diff --git a/target/linux/linux-2.4/patches/generic/203-hfsplus_fix.patch b/target/linux/linux-2.4/patches/generic/203-hfsplus_fix.patch
new file mode 100644 (file)
index 0000000..695a2d3
--- /dev/null
@@ -0,0 +1,23 @@
+diff -urN linux-2.4.30.old/fs/hfsplus/super.c linux-2.4.30.dev/fs/hfsplus/super.c
+--- linux-2.4.30.old/fs/hfsplus/super.c        2003-08-25 13:44:43.000000000 +0200
++++ linux-2.4.30.dev/fs/hfsplus/super.c        2005-04-27 19:54:40.000000000 +0200
+@@ -240,8 +240,7 @@
+       if (!(*flags & MS_RDONLY)) {
+               struct hfsplus_vh *vhdr = HFSPLUS_SB(sb).s_vhdr;
+-              if ((vhdr->attributes & cpu_to_be32(HFSPLUS_VOL_INCNSTNT)) ||
+-                  !(vhdr->attributes & cpu_to_be32(HFSPLUS_VOL_UNMNT))) {
++              if (!(vhdr->attributes & cpu_to_be32(HFSPLUS_VOL_UNMNT))) {
+                       printk("HFS+-fs warning: Filesystem was not cleanly unmounted, "
+                              "running fsck.hfsplus is recommended.  leaving read-only.\n");
+                       sb->s_flags |= MS_RDONLY;
+@@ -343,8 +342,7 @@
+       /* Set up operations so we can load metadata */
+       sb->s_op = &hfsplus_sops;
+-      if ((vhdr->attributes & cpu_to_be32(HFSPLUS_VOL_INCNSTNT)) ||
+-          !(vhdr->attributes & cpu_to_be32(HFSPLUS_VOL_UNMNT))) {
++      if (!(vhdr->attributes & cpu_to_be32(HFSPLUS_VOL_UNMNT))) {
+               if (!silent)
+                       printk("HFS+-fs warning: Filesystem was not cleanly unmounted, "
+                              "running fsck.hfsplus is recommended.  mounting read-only.\n");