block: remove padding from io_context on 64bit builds
authorRichard Kennedy <richard@rsk.demon.co.uk>
Fri, 26 Feb 2010 13:00:43 +0000 (14:00 +0100)
committerJens Axboe <jens.axboe@oracle.com>
Fri, 26 Feb 2010 13:00:43 +0000 (14:00 +0100)
On 64 bit builds when CONFIG_BLK_CGROUP=n (the default) this removes 8
bytes of padding from structure io_context and drops its size from 72 to
64 bytes, so needing one fewer cachelines and allowing more objects per
slab in it's kmem_cache.

Signed-off-by: Richard Kennedy <richard@rsk.demon.co.uk>
----
patch against 2.6.33
compiled & test on x86_64 AMDX2
regards
Richard
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
include/linux/iocontext.h

index 78ef023227d4bbcabc5e5d72d3126462c9b9ca26..1195a806fe0cd7eec9915e616141c76db564d538 100644 (file)
@@ -49,8 +49,8 @@ struct io_context {
        /*
         * For request batching
         */
-       unsigned long last_waited; /* Time last woken after wait for request */
        int nr_batch_requests;     /* Number of requests left in the batch */
+       unsigned long last_waited; /* Time last woken after wait for request */
 
        struct radix_tree_root radix_root;
        struct hlist_head cic_list;