forked from luck/tmp_suning_uos_patched
NTFS: Fix a nasty runlist merge bug when merging two holes.
Signed-off-by: Anton Altaparmakov <aia21@cantab.net>
This commit is contained in:
parent
d8ec785e0b
commit
37e4c13b98
|
@ -72,9 +72,10 @@ ToDo/Notes:
|
|||
runlist. This allows us to find runlist elements with the runlist
|
||||
lock already held without having to drop and reacquire it around the
|
||||
call. Adapt all callers.
|
||||
- Change time to u64 time.h::ntfs2utc() as it otherwise generates a
|
||||
- Change time to u64 in time.h::ntfs2utc() as it otherwise generates a
|
||||
warning in the do_div() call on sparc32. Thanks to Meelis Roos for
|
||||
the report and analysis of the warning.
|
||||
- Fix a nasty runlist merge bug when merging two holes.
|
||||
|
||||
2.1.22 - Many bug and race fixes and error handling improvements.
|
||||
|
||||
|
|
|
@ -113,8 +113,11 @@ static inline BOOL ntfs_are_rl_mergeable(runlist_element *dst,
|
|||
BUG_ON(!dst);
|
||||
BUG_ON(!src);
|
||||
|
||||
if ((dst->lcn < 0) || (src->lcn < 0)) /* Are we merging holes? */
|
||||
if ((dst->lcn < 0) || (src->lcn < 0)) { /* Are we merging holes? */
|
||||
if (dst->lcn == LCN_HOLE && src->lcn == LCN_HOLE)
|
||||
return TRUE;
|
||||
return FALSE;
|
||||
}
|
||||
if ((dst->lcn + dst->length) != src->lcn) /* Are the runs contiguous? */
|
||||
return FALSE;
|
||||
if ((dst->vcn + dst->length) != src->vcn) /* Are the runs misaligned? */
|
||||
|
|
Loading…
Reference in New Issue
Block a user