Gentoo Archives: gentoo-commits

From: "Daniel Drake (dsd)" <dsd@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] linux-patches r1294 - genpatches-2.6/trunk/2.6.25
Date: Fri, 18 Apr 2008 19:27:36
Message-Id: E1JmwFB-0000Dc-Og@stork.gentoo.org
1 Author: dsd
2 Date: 2008-04-18 19:27:32 +0000 (Fri, 18 Apr 2008)
3 New Revision: 1294
4
5 Modified:
6 genpatches-2.6/trunk/2.6.25/4300_squashfs-3.3.patch
7 Log:
8 fix for 2.6.25
9
10 Modified: genpatches-2.6/trunk/2.6.25/4300_squashfs-3.3.patch
11 ===================================================================
12 --- genpatches-2.6/trunk/2.6.25/4300_squashfs-3.3.patch 2008-04-18 11:17:59 UTC (rev 1293)
13 +++ genpatches-2.6/trunk/2.6.25/4300_squashfs-3.3.patch 2008-04-18 19:27:32 UTC (rev 1294)
14 @@ -1,7 +1,12 @@
15 -diff -x .gitignore -Nurp linux-2.6.24/fs/Kconfig linux-2.6.24-squashfs3.3/fs/Kconfig
16 ---- linux-2.6.24/fs/Kconfig 2007-10-25 17:41:45.000000000 +0100
17 -+++ linux-2.6.24-squashfs3.3/fs/Kconfig 2007-11-01 05:06:25.000000000 +0000
18 -@@ -1396,6 +1396,56 @@ config CRAMFS
19 +
20 +iget changes for 2.6.25 by Daniel Drake <dsd@g.o>
21 +https://bugs.gentoo.org/show_bug.cgi?id=218169
22 +
23 +Index: linux-2.6.25-gentoo/fs/Kconfig
24 +===================================================================
25 +--- linux-2.6.25-gentoo.orig/fs/Kconfig
26 ++++ linux-2.6.25-gentoo/fs/Kconfig
27 +@@ -1367,6 +1367,56 @@ config CRAMFS
28
29 If unsure, say N.
30
31 @@ -58,10 +63,11 @@
32 config VXFS_FS
33 tristate "FreeVxFS file system support (VERITAS VxFS(TM) compatible)"
34 depends on BLOCK
35 -diff -x .gitignore -Nurp linux-2.6.24/fs/Makefile linux-2.6.24-squashfs3.3/fs/Makefile
36 ---- linux-2.6.24/fs/Makefile 2007-10-25 17:41:45.000000000 +0100
37 -+++ linux-2.6.24-squashfs3.3/fs/Makefile 2007-11-01 05:08:09.000000000 +0000
38 -@@ -72,6 +72,7 @@ obj-$(CONFIG_JBD) += jbd/
39 +Index: linux-2.6.25-gentoo/fs/Makefile
40 +===================================================================
41 +--- linux-2.6.25-gentoo.orig/fs/Makefile
42 ++++ linux-2.6.25-gentoo/fs/Makefile
43 +@@ -73,6 +73,7 @@ obj-$(CONFIG_JBD) += jbd/
44 obj-$(CONFIG_JBD2) += jbd2/
45 obj-$(CONFIG_EXT2_FS) += ext2/
46 obj-$(CONFIG_CRAMFS) += cramfs/
47 @@ -69,10 +75,11 @@
48 obj-y += ramfs/
49 obj-$(CONFIG_HUGETLBFS) += hugetlbfs/
50 obj-$(CONFIG_CODA_FS) += coda/
51 -diff -x .gitignore -Nurp linux-2.6.24/fs/squashfs/inode.c linux-2.6.24-squashfs3.3/fs/squashfs/inode.c
52 ---- linux-2.6.24/fs/squashfs/inode.c 1970-01-01 01:00:00.000000000 +0100
53 -+++ linux-2.6.24-squashfs3.3/fs/squashfs/inode.c 2007-11-01 05:05:00.000000000 +0000
54 -@@ -0,0 +1,2192 @@
55 +Index: linux-2.6.25-gentoo/fs/squashfs/inode.c
56 +===================================================================
57 +--- /dev/null
58 ++++ linux-2.6.25-gentoo/fs/squashfs/inode.c
59 +@@ -0,0 +1,2186 @@
60 +/*
61 + * Squashfs - a compressed read only filesystem for Linux
62 + *
63 @@ -107,12 +114,12 @@
64 +#include <linux/vmalloc.h>
65 +#include <linux/smp_lock.h>
66 +#include <linux/exportfs.h>
67 ++#include <linux/sched.h>
68 +
69 +#include "squashfs.h"
70 +
71 +int squashfs_cached_blks;
72 +
73 -+static void vfs_read_inode(struct inode *i);
74 +static struct dentry *squashfs_get_parent(struct dentry *child);
75 +static int squashfs_read_inode(struct inode *i, squashfs_inode_t inode);
76 +static int squashfs_statfs(struct dentry *, struct kstatfs *);
77 @@ -158,7 +165,6 @@
78 + .destroy_inode = squashfs_destroy_inode,
79 + .statfs = squashfs_statfs,
80 + .put_super = squashfs_put_super,
81 -+ .read_inode = vfs_read_inode
82 +};
83 +
84 +static struct export_operations squashfs_export_ops = {
85 @@ -706,28 +712,21 @@
86 + return SQUASHFS_INVALID_BLK;
87 +}
88 +
89 -+
90 -+static void vfs_read_inode(struct inode *i)
91 -+{
92 -+ struct squashfs_sb_info *msblk = i->i_sb->s_fs_info;
93 -+ squashfs_inode_t inode = squashfs_inode_lookup(i->i_sb, i->i_ino);
94 -+
95 -+ TRACE("Entered vfs_read_inode\n");
96 -+
97 -+ if(inode != SQUASHFS_INVALID_BLK)
98 -+ (msblk->read_inode)(i, inode);
99 -+}
100 -+
101 -+
102 +static struct dentry *squashfs_get_parent(struct dentry *child)
103 +{
104 + struct inode *i = child->d_inode;
105 -+ struct inode *parent = iget(i->i_sb, SQUASHFS_I(i)->u.s2.parent_inode);
106 ++ unsigned long ino = SQUASHFS_I(i)->u.s2.parent_inode;
107 ++ squashfs_inode_t inode = squashfs_inode_lookup(i->i_sb, ino);
108 ++ struct inode *parent;
109 + struct dentry *rv;
110 +
111 + TRACE("Entered squashfs_get_parent\n");
112 +
113 -+ if(parent == NULL) {
114 ++ if (inode == SQUASHFS_INVALID_BLK)
115 ++ return ERR_PTR(-EINVAL);
116 ++
117 ++ parent = squashfs_iget(i->i_sb, inode, ino);
118 ++ if (IS_ERR(parent)) {
119 + rv = ERR_PTR(-EACCES);
120 + goto out;
121 + }
122 @@ -740,7 +739,7 @@
123 + return rv;
124 +}
125 +
126 -+
127 ++
128 +SQSH_EXTERN struct inode *squashfs_iget(struct super_block *s,
129 + squashfs_inode_t inode, unsigned int inode_number)
130 +{
131 @@ -748,8 +747,10 @@
132 + struct inode *i = iget_locked(s, inode_number);
133 +
134 + TRACE("Entered squashfs_iget\n");
135 ++ if (!i)
136 ++ return ERR_PTR(-ENOMEM);
137 +
138 -+ if(i && (i->i_state & I_NEW)) {
139 ++ if (i->i_state & I_NEW) {
140 + (msblk->read_inode)(i, inode);
141 + unlock_new_inode(i);
142 + }
143 @@ -2265,9 +2266,10 @@
144 +MODULE_DESCRIPTION("squashfs 3.2-r2-CVS, a compressed read-only filesystem");
145 +MODULE_AUTHOR("Phillip Lougher <phillip@××××××××××××××××.uk>");
146 +MODULE_LICENSE("GPL");
147 -diff -x .gitignore -Nurp linux-2.6.24/fs/squashfs/Makefile linux-2.6.24-squashfs3.3/fs/squashfs/Makefile
148 ---- linux-2.6.24/fs/squashfs/Makefile 1970-01-01 01:00:00.000000000 +0100
149 -+++ linux-2.6.24-squashfs3.3/fs/squashfs/Makefile 2005-11-20 14:31:00.000000000 +0000
150 +Index: linux-2.6.25-gentoo/fs/squashfs/Makefile
151 +===================================================================
152 +--- /dev/null
153 ++++ linux-2.6.25-gentoo/fs/squashfs/Makefile
154 @@ -0,0 +1,7 @@
155 +#
156 +# Makefile for the linux squashfs routines.
157 @@ -2276,9 +2278,10 @@
158 +obj-$(CONFIG_SQUASHFS) += squashfs.o
159 +squashfs-y += inode.o
160 +squashfs-y += squashfs2_0.o
161 -diff -x .gitignore -Nurp linux-2.6.24/fs/squashfs/squashfs2_0.c linux-2.6.24-squashfs3.3/fs/squashfs/squashfs2_0.c
162 ---- linux-2.6.24/fs/squashfs/squashfs2_0.c 1970-01-01 01:00:00.000000000 +0100
163 -+++ linux-2.6.24-squashfs3.3/fs/squashfs/squashfs2_0.c 2007-10-25 00:43:59.000000000 +0100
164 +Index: linux-2.6.25-gentoo/fs/squashfs/squashfs2_0.c
165 +===================================================================
166 +--- /dev/null
167 ++++ linux-2.6.25-gentoo/fs/squashfs/squashfs2_0.c
168 @@ -0,0 +1,740 @@
169 +/*
170 + * Squashfs - a compressed read only filesystem for Linux
171 @@ -3020,9 +3023,10 @@
172 +
173 + return 1;
174 +}
175 -diff -x .gitignore -Nurp linux-2.6.24/fs/squashfs/squashfs.h linux-2.6.24-squashfs3.3/fs/squashfs/squashfs.h
176 ---- linux-2.6.24/fs/squashfs/squashfs.h 1970-01-01 01:00:00.000000000 +0100
177 -+++ linux-2.6.24-squashfs3.3/fs/squashfs/squashfs.h 2007-08-19 04:23:16.000000000 +0100
178 +Index: linux-2.6.25-gentoo/fs/squashfs/squashfs.h
179 +===================================================================
180 +--- /dev/null
181 ++++ linux-2.6.25-gentoo/fs/squashfs/squashfs.h
182 @@ -0,0 +1,86 @@
183 +/*
184 + * Squashfs - a compressed read only filesystem for Linux
185 @@ -3110,9 +3114,10 @@
186 + return 0;
187 +}
188 +#endif
189 -diff -x .gitignore -Nurp linux-2.6.24/include/linux/squashfs_fs.h linux-2.6.24-squashfs3.3/include/linux/squashfs_fs.h
190 ---- linux-2.6.24/include/linux/squashfs_fs.h 1970-01-01 01:00:00.000000000 +0100
191 -+++ linux-2.6.24-squashfs3.3/include/linux/squashfs_fs.h 2007-11-01 03:50:57.000000000 +0000
192 +Index: linux-2.6.25-gentoo/include/linux/squashfs_fs.h
193 +===================================================================
194 +--- /dev/null
195 ++++ linux-2.6.25-gentoo/include/linux/squashfs_fs.h
196 @@ -0,0 +1,935 @@
197 +#ifndef SQUASHFS_FS
198 +#define SQUASHFS_FS
199 @@ -4049,9 +4054,10 @@
200 +
201 +#endif
202 +#endif
203 -diff -x .gitignore -Nurp linux-2.6.24/include/linux/squashfs_fs_i.h linux-2.6.24-squashfs3.3/include/linux/squashfs_fs_i.h
204 ---- linux-2.6.24/include/linux/squashfs_fs_i.h 1970-01-01 01:00:00.000000000 +0100
205 -+++ linux-2.6.24-squashfs3.3/include/linux/squashfs_fs_i.h 2007-08-19 04:24:08.000000000 +0100
206 +Index: linux-2.6.25-gentoo/include/linux/squashfs_fs_i.h
207 +===================================================================
208 +--- /dev/null
209 ++++ linux-2.6.25-gentoo/include/linux/squashfs_fs_i.h
210 @@ -0,0 +1,45 @@
211 +#ifndef SQUASHFS_FS_I
212 +#define SQUASHFS_FS_I
213 @@ -4098,9 +4104,10 @@
214 + struct inode vfs_inode;
215 +};
216 +#endif
217 -diff -x .gitignore -Nurp linux-2.6.24/include/linux/squashfs_fs_sb.h linux-2.6.24-squashfs3.3/include/linux/squashfs_fs_sb.h
218 ---- linux-2.6.24/include/linux/squashfs_fs_sb.h 1970-01-01 01:00:00.000000000 +0100
219 -+++ linux-2.6.24-squashfs3.3/include/linux/squashfs_fs_sb.h 2007-08-19 04:24:26.000000000 +0100
220 +Index: linux-2.6.25-gentoo/include/linux/squashfs_fs_sb.h
221 +===================================================================
222 +--- /dev/null
223 ++++ linux-2.6.25-gentoo/include/linux/squashfs_fs_sb.h
224 @@ -0,0 +1,76 @@
225 +#ifndef SQUASHFS_FS_SB
226 +#define SQUASHFS_FS_SB
227 @@ -4178,9 +4185,10 @@
228 + int (*read_fragment_index_table)(struct super_block *s);
229 +};
230 +#endif
231 -diff -x .gitignore -Nurp linux-2.6.24/init/do_mounts_rd.c linux-2.6.24-squashfs3.3/init/do_mounts_rd.c
232 ---- linux-2.6.24/init/do_mounts_rd.c 2007-10-25 17:41:49.000000000 +0100
233 -+++ linux-2.6.24-squashfs3.3/init/do_mounts_rd.c 2007-11-01 05:06:25.000000000 +0000
234 +Index: linux-2.6.25-gentoo/init/do_mounts_rd.c
235 +===================================================================
236 +--- linux-2.6.25-gentoo.orig/init/do_mounts_rd.c
237 ++++ linux-2.6.25-gentoo/init/do_mounts_rd.c
238 @@ -5,6 +5,7 @@
239 #include <linux/ext2_fs.h>
240 #include <linux/romfs_fs.h>
241
242 --
243 gentoo-commits@l.g.o mailing list