General fixes to the vfs clustring code:

1) Make cluster buffer list be a non-malloced chain.  This eliminates
yet another 'evil' M_WAITOK and generally cleans up the code.
2) Fix write clustering for ext2fs.  It was just broken.  Also, ffs
clustering had an efficiency problem that more bawrites were happening
than should have been.
3) Make changes to buf.h to support the above, plus remove b_pfcent
at the request of David Greenman.

Note that the reallocblocks code is disabled pending rewrite for
the cluster buffer list changes.
This commit is contained in:
John Dyson 1995-11-19 19:55:26 +00:00
parent 5fe17eeb8a
commit aa3960192e

View file

@ -31,7 +31,7 @@
* SUCH DAMAGE.
*
* @(#)ffs_alloc.c 8.8 (Berkeley) 2/21/94
* $Id: ffs_alloc.c,v 1.17 1995/09/08 17:16:32 davidg Exp $
* $Id: ffs_alloc.c,v 1.18 1995/11/14 09:40:04 phk Exp $
*/
#include <sys/param.h>
@ -336,6 +336,9 @@ ffs_reallocblks(ap)
struct cluster_save *a_buflist;
} */ *ap;
{
#if 1
return (ENOSPC);
#else
struct fs *fs;
struct inode *ip;
struct vnode *vp;
@ -476,6 +479,7 @@ fail:
if (sbap != &ip->i_db[0])
brelse(sbp);
return (ENOSPC);
#endif
}
/*