block: reorder struct bio to remove padding on 64bit
authorRichard Kennedy <richard@rsk.demon.co.uk>
Wed, 3 Dec 2008 11:41:40 +0000 (12:41 +0100)
committerJens Axboe <jens.axboe@oracle.com>
Mon, 29 Dec 2008 07:28:44 +0000 (08:28 +0100)
Remove 8 bytes of padding from struct bio which also removes 16 bytes from
struct bio_pair to make it 248 bytes.  bio_pair then fits into one fewer
cache lines & into a smaller slab.

Signed-off-by: Richard Kennedy <richard@rsk.demon.co.uk>
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
include/linux/bio.h

index cf132bfbbacf241c341b93221c63d1b2390472f8..3ed714eb54d9201d9c7a6dccc2e0fa69440c413d 100644 (file)
@@ -90,10 +90,11 @@ struct bio {
 
        unsigned int            bi_comp_cpu;    /* completion CPU */
 
+       atomic_t                bi_cnt;         /* pin count */
+
        struct bio_vec          *bi_io_vec;     /* the actual vec list */
 
        bio_end_io_t            *bi_end_io;
-       atomic_t                bi_cnt;         /* pin count */
 
        void                    *bi_private;
 #if defined(CONFIG_BLK_DEV_INTEGRITY)