On Fri, Feb 02, 2001 at 03:51:53PM +0000, Alan Cox wrote: > Does this fix the ramfs problem in -ac ? > > --- fs/ramfs/inode.c~ Wed Jan 31 22:02:16 2001 > +++ fs/ramfs/inode.c Fri Feb 2 14:51:47 2001 > @@ -174,7 +174,6 @@ > inode->i_blocks += IBLOCKS_PER_PAGE; > rsb->free_pages--; > SetPageDirty(page); > - UnlockPage(page); > } else { > ClearPageUptodate(page); > ret = 0; > @@ -264,6 +263,7 @@ > > if (! ramfs_alloc_page(inode, page)) > return -ENOSPC; > + UnlockPage(page); > return 0; > } No, so have to unlock it also, if you return -ENOSPC. So the correct fix seems to be: --- linux/fs/ramfs/inode.c~ Wed Jan 31 22:02:16 2001 +++ linux/fs/ramfs/inode.c Fri Feb 2 14:51:47 2001 @@ -174,7 +174,6 @@ inode->i_blocks += IBLOCKS_PER_PAGE; rsb->free_pages--; SetPageDirty(page); - UnlockPage(page); } else { ClearPageUptodate(page); ret = 0; @@ -264,6 +263,9 @@ - if (! ramfs_alloc_page(inode, page)) + if (! ramfs_alloc_page(inode, page)) { + UnlockPage(page); return -ENOSPC; + } + UnlockPage(page); return 0; } This currently works for me (but using 2.4.0 + dwg-ramfs.patch + this patch) Regards Ingo Oeser -- 10.+11.03.2001 - 3. Chemnitzer LinuxTag <http://www.tu-chemnitz.de/linux/tag> <<<<<<<<<<<< come and join the fun >>>>>>>>>>>> - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] Please read the FAQ at http://www.tux.org/lkml/