summaryrefslogtreecommitdiff
path: root/meta/packages/linux/linux-openzaurus-2.6.17/squashfs3.0-2.6.15.patch
diff options
context:
space:
mode:
Diffstat (limited to 'meta/packages/linux/linux-openzaurus-2.6.17/squashfs3.0-2.6.15.patch')
-rw-r--r--meta/packages/linux/linux-openzaurus-2.6.17/squashfs3.0-2.6.15.patch7
1 files changed, 4 insertions, 3 deletions
diff --git a/meta/packages/linux/linux-openzaurus-2.6.17/squashfs3.0-2.6.15.patch b/meta/packages/linux/linux-openzaurus-2.6.17/squashfs3.0-2.6.15.patch
index f88dbbae8..6fec9eba0 100644
--- a/meta/packages/linux/linux-openzaurus-2.6.17/squashfs3.0-2.6.15.patch
+++ b/meta/packages/linux/linux-openzaurus-2.6.17/squashfs3.0-2.6.15.patch
@@ -533,7 +533,7 @@ diff --new-file -urp linux-2.6.15/fs/squashfs/inode.c linux-2.6.15-squashfs3.0/f
+ *s, long long start_block,
+ int length)
+{
-+ int i, n;
++ int i, n, nf;
+ struct squashfs_sb_info *msblk = s->s_fs_info;
+
+ while ( 1 ) {
@@ -543,6 +543,8 @@ diff --new-file -urp linux-2.6.15/fs/squashfs/inode.c linux-2.6.15-squashfs3.0/f
+ msblk->fragment[i].block != start_block; i++);
+
+ if (i == SQUASHFS_CACHED_FRAGMENTS) {
++ nf = (msblk->next_fragment + 1) %
++ SQUASHFS_CACHED_FRAGMENTS;
+ for (i = msblk->next_fragment, n =
+ SQUASHFS_CACHED_FRAGMENTS; n &&
+ msblk->fragment[i].locked; n--, i = (i + 1) %
@@ -562,8 +564,7 @@ diff --new-file -urp linux-2.6.15/fs/squashfs/inode.c linux-2.6.15-squashfs3.0/f
+ &wait);
+ continue;
+ }
-+ msblk->next_fragment = (msblk->next_fragment + 1) %
-+ SQUASHFS_CACHED_FRAGMENTS;
++ msblk->next_fragment = nf;
+
+ if (msblk->fragment[i].data == NULL)
+ if (!(msblk->fragment[i].data = SQUASHFS_ALLOC