[PATCH] hfsplus: Add record offset check
From: Naohiro Aota
Date: Mon Jul 11 2011 - 14:46:29 EST
Recently I have general protection fault when I'm using hfsplus. This
fault seems to be caused by "record offset" which is larger than "node
size".
I've verified this with setting probe and look value of recoff using
perf like this:
perf probe -m hfsplus -a 'hfsplus_brec_keylen:13 recoff node->tree->node_size'
it printed following line showing recoff get larger than node_size
mplayer-18734 [003] 21506.855550: hfsplus_brec_keylen: (hfsplus_brec_keylen+0x5d/0xc0 [hfsplus]) recoff=3333 node_size=2000
Though this fault doesn't stop kernel entirely, it stop filesystem and
suspend to work (because user process is blocked and so it cannot
freeze any more), so it's really annoying.