block: reorder cfq_queue to save space on 64bit builds
authorRichard Kennedy <richard@rsk.demon.co.uk>
Fri, 23 May 2008 04:52:00 +0000 (06:52 +0200)
committerJens Axboe <jens.axboe@oracle.com>
Wed, 28 May 2008 12:49:27 +0000 (14:49 +0200)
saves 8 bytes of padding & increases objects/slab from 30 to 32 on my
AMD64 config

Signed-off-by: Richard Kennedy <richard@rsk.demon.co.uk>
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
block/cfq-iosched.c

index b399c62936e01a503715273ffef29ac2fafef8a4..4df3f052243586c12670e6d09de359f8b055700b 100644 (file)
@@ -124,6 +124,8 @@ struct cfq_data {
 struct cfq_queue {
        /* reference count */
        atomic_t ref;
+       /* various state flags, see below */
+       unsigned int flags;
        /* parent cfq_data */
        struct cfq_data *cfqd;
        /* service_tree member */
@@ -138,14 +140,14 @@ struct cfq_queue {
        int queued[2];
        /* currently allocated requests */
        int allocated[2];
-       /* pending metadata requests */
-       int meta_pending;
        /* fifo list of requests in sort_list */
        struct list_head fifo;
 
        unsigned long slice_end;
        long slice_resid;
 
+       /* pending metadata requests */
+       int meta_pending;
        /* number of requests that are on the dispatch list or inside driver */
        int dispatched;
 
@@ -153,8 +155,6 @@ struct cfq_queue {
        unsigned short ioprio, org_ioprio;
        unsigned short ioprio_class, org_ioprio_class;
 
-       /* various state flags, see below */
-       unsigned int flags;
 };
 
 enum cfqq_state_flags {