From: Jens Axboe Date: Fri, 5 Dec 2008 15:10:29 +0000 (+0100) Subject: block: don't create bio_vec slabs of less than the inline number X-Git-Tag: v2.6.30-rc1~660^2~16 X-Git-Url: https://git.karo-electronics.de/?a=commitdiff_plain;h=a7fcd37cdcb47806fb8a9070f006ee34061defa6;p=karo-tx-linux.git block: don't create bio_vec slabs of less than the inline number If we don't have CONFIG_BLK_DEV_INTEGRITY set, then we don't have any external dependencies on the bio_vec slabs. So don't create the ones that we will inline anyway. Signed-off-by: Jens Axboe --- diff --git a/fs/bio.c b/fs/bio.c index cef6258b8943..9cc1430b4495 100644 --- a/fs/bio.c +++ b/fs/bio.c @@ -1589,6 +1589,13 @@ static void __init biovec_init_slabs(void) int size; struct biovec_slab *bvs = bvec_slabs + i; +#ifndef CONFIG_BLK_DEV_INTEGRITY + if (bvs->nr_vecs <= BIO_INLINE_VECS) { + bvs->slab = NULL; + continue; + } +#endif + size = bvs->nr_vecs * sizeof(struct bio_vec); bvs->slab = kmem_cache_create(bvs->name, size, 0, SLAB_HWCACHE_ALIGN|SLAB_PANIC, NULL);