void lafs_refile(struct block *b, int dec)
{
struct block *next = NULL, *next_parent = NULL;
- struct fs *fs;
+ struct fs *fs = NULL;
struct inode *in;
u64 physref = 0;
if (!b)
return;
- fs = fs_from_inode(b->inode);
/* sanity tests.
* 1/ make sure pincnt is right
|| test_bit(B_Realloc, &LAFSI(b->inode)->dblock->b.flags))
)) {
/* Don't need to be Pinned any more */
+ fs = fs_from_inode(b->inode);
lafs_checkpoint_lock(fs);
if (test_and_clear_bit(B_Pinned, &b->flags)) {
if (onlru) {
/* unlock */
/* FIXME was that ref counted?? */
}
+ fs = fs_from_inode(b->inode);
spin_lock(&fs->lock);
if (list_empty(&b->lru)) {
if (test_bit(B_Realloc, &b->flags))
(1<<B_Dirty)))
) {
int credits;
+ fs = fs_from_inode(b->inode);
/* Don't need ->parent any more */
if (next_parent == &b->parent->b) {
if (atomic_dec_and_test(&next_parent