public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH] Support HFS+ not filling its device completely
@ 2012-06-01  1:00 Vladimir 'φ-coder/phcoder' Serbinenko
  0 siblings, 0 replies; only message in thread
From: Vladimir 'φ-coder/phcoder' Serbinenko @ 2012-06-01  1:00 UTC (permalink / raw)
  To: Christoph Hellwig, Seth Forshee, linux-kernel, linux-fsdevel

[-- Attachment #1: Type: text/plain, Size: 1065 bytes --]

Hello, all. My HFS+ previously was on slightly smaller partition
and was subsequently dd'ed to its current location. Mac OS X doesn't
mind and I don't mind losing a little space. However Linux fails to
locate second superblock and hence to mount it. This patch uses
the size field from the first superblock to locate the second.


Signed-off-by: Vladimir Serbinenko <phcoder@gmail.com>
---
 fs/hfsplus/wrapper.c |    3 +++
 1 file changed, 3 insertions(+)

diff --git a/fs/hfsplus/wrapper.c b/fs/hfsplus/wrapper.c
index 7daf4b8..a7e1268 100644
--- a/fs/hfsplus/wrapper.c
+++ b/fs/hfsplus/wrapper.c
@@ -206,6 +206,9 @@ reread:
 		set_bit(HFSPLUS_SB_HFSX, &sbi->flags);
 		/*FALLTHRU*/
 	case cpu_to_be16(HFSPLUS_VOLHEAD_SIG):
+		part_size = (((u64) be32_to_cpu(sbi->s_vhdr->blocksize)
+			      * (u64) be32_to_cpu(sbi->s_vhdr->total_blocks))
+			     >> HFSPLUS_SECTOR_SHIFT);
 		break;
 	case cpu_to_be16(HFSP_WRAP_MAGIC):
 		if (!hfsplus_read_mdb(sbi->s_vhdr, &wd))
-- 
1.7.10

-- 
Regards
Vladimir 'φ-coder/phcoder' Serbinenko


[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 294 bytes --]

^ permalink raw reply related	[flat|nested] only message in thread

only message in thread, other threads:[~2012-06-01  1:00 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-06-01  1:00 [PATCH] Support HFS+ not filling its device completely Vladimir 'φ-coder/phcoder' Serbinenko

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox