diff options
Diffstat (limited to 'fs/jffs2/gc.c')
-rw-r--r-- | fs/jffs2/gc.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/fs/jffs2/gc.c b/fs/jffs2/gc.c index 477c526d638b..daff3341ff92 100644 --- a/fs/jffs2/gc.c +++ b/fs/jffs2/gc.c | |||
@@ -165,6 +165,7 @@ int jffs2_garbage_collect_pass(struct jffs2_sb_info *c) | |||
165 | D1(printk(KERN_DEBUG "Skipping check of ino #%d with nlink zero\n", | 165 | D1(printk(KERN_DEBUG "Skipping check of ino #%d with nlink zero\n", |
166 | ic->ino)); | 166 | ic->ino)); |
167 | spin_unlock(&c->inocache_lock); | 167 | spin_unlock(&c->inocache_lock); |
168 | jffs2_xattr_delete_inode(c, ic); | ||
168 | continue; | 169 | continue; |
169 | } | 170 | } |
170 | switch(ic->state) { | 171 | switch(ic->state) { |
@@ -275,13 +276,12 @@ int jffs2_garbage_collect_pass(struct jffs2_sb_info *c) | |||
275 | * We can decide whether this node is inode or xattr by ic->class. */ | 276 | * We can decide whether this node is inode or xattr by ic->class. */ |
276 | if (ic->class == RAWNODE_CLASS_XATTR_DATUM | 277 | if (ic->class == RAWNODE_CLASS_XATTR_DATUM |
277 | || ic->class == RAWNODE_CLASS_XATTR_REF) { | 278 | || ic->class == RAWNODE_CLASS_XATTR_REF) { |
278 | BUG_ON(raw->next_in_ino != (void *)ic); | ||
279 | spin_unlock(&c->erase_completion_lock); | 279 | spin_unlock(&c->erase_completion_lock); |
280 | 280 | ||
281 | if (ic->class == RAWNODE_CLASS_XATTR_DATUM) { | 281 | if (ic->class == RAWNODE_CLASS_XATTR_DATUM) { |
282 | ret = jffs2_garbage_collect_xattr_datum(c, (struct jffs2_xattr_datum *)ic); | 282 | ret = jffs2_garbage_collect_xattr_datum(c, (struct jffs2_xattr_datum *)ic, raw); |
283 | } else { | 283 | } else { |
284 | ret = jffs2_garbage_collect_xattr_ref(c, (struct jffs2_xattr_ref *)ic); | 284 | ret = jffs2_garbage_collect_xattr_ref(c, (struct jffs2_xattr_ref *)ic, raw); |
285 | } | 285 | } |
286 | goto release_sem; | 286 | goto release_sem; |
287 | } | 287 | } |