diff options
author | Richard Kennedy <richard@rsk.demon.co.uk> | 2010-02-22 13:49:24 +0100 |
---|---|---|
committer | Jens Axboe <jens.axboe@oracle.com> | 2010-02-22 13:49:24 +0100 |
commit | c4081ba5c9f6f7bdffe49e501a8604a2c0797ef9 (patch) | |
tree | 2c2f59a61dc7a68088ff36262de3834b46334477 | |
parent | f11cbd74c5ff3614f6390b4de67a6ffdc614c378 (diff) | |
download | op-kernel-dev-c4081ba5c9f6f7bdffe49e501a8604a2c0797ef9.zip op-kernel-dev-c4081ba5c9f6f7bdffe49e501a8604a2c0797ef9.tar.gz |
cfq: reorder cfq_queue removing padding on 64bit
This removes 8 bytes of padding from struct cfq_queue on 64 bit builds,
shrinking it's size to 256 bytes, so fitting into 1 fewer cachelines and
allowing 1 more object/slab in it's kmem_cache.
Signed-off-by: Richard Kennedy <richard@rsk.demon.co.uk>
Reviewed-by: Jeff Moyer <jmoyer@redhat.com>
----
patch against 2.6.33-rc8
tested on x86_64 AMDX2
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
-rw-r--r-- | block/cfq-iosched.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/block/cfq-iosched.c b/block/cfq-iosched.c index 023f4e6..e3dedfd 100644 --- a/block/cfq-iosched.c +++ b/block/cfq-iosched.c @@ -115,11 +115,11 @@ struct cfq_queue { /* time when queue got scheduled in to dispatch first request. */ unsigned long dispatch_start; unsigned int allocated_slice; + unsigned int slice_dispatch; /* time when first request from queue completed and slice started. */ unsigned long slice_start; unsigned long slice_end; long slice_resid; - unsigned int slice_dispatch; /* pending metadata requests */ int meta_pending; @@ -130,13 +130,13 @@ struct cfq_queue { unsigned short ioprio, org_ioprio; unsigned short ioprio_class, org_ioprio_class; + pid_t pid; + unsigned int seek_samples; u64 seek_total; sector_t seek_mean; sector_t last_request_pos; - pid_t pid; - struct cfq_rb_root *service_tree; struct cfq_queue *new_cfqq; struct cfq_group *cfqg; |