diff options
author | Andi Kleen <ak@linux.intel.com> | 2011-08-01 21:38:08 -0700 |
---|---|---|
committer | root <root@serles.lst.de> | 2011-10-28 14:58:58 +0200 |
commit | ba253fbf6d3502c54e1ac8792e7ac8290a1f5b8d (patch) | |
tree | 08bfd191e714b53ed44ec185f890cc5113e6dafd /fs/gfs2/aops.c | |
parent | 18772641dbe2c89c6122c603f81f6a9574aee556 (diff) | |
download | op-kernel-dev-ba253fbf6d3502c54e1ac8792e7ac8290a1f5b8d.zip op-kernel-dev-ba253fbf6d3502c54e1ac8792e7ac8290a1f5b8d.tar.gz |
direct-io: inline the complete submission path
Add inlines to all the submission path functions. While this increases
code size it also gives gcc a lot of optimization opportunities
in this critical hotpath.
In particular -- together with some other changes -- this
allows gcc to get rid of the unnecessary clearing of
sdio at the beginning and optimize the messy parameter passing.
Any non inlining of a function which takes a sdio parameter
would break this optimization because they cannot be done if the
address of a structure is taken.
Note that benefits are only seen with CONFIG_OPTIMIZE_INLINING
and CONFIG_CC_OPTIMIZE_FOR_SIZE both set to off.
This gives about 2.2% improvement on a large database benchmark
with a high IOPS rate.
Signed-off-by: Andi Kleen <ak@linux.intel.com>
Signed-off-by: Christoph Hellwig <hch@lst.de>
Diffstat (limited to 'fs/gfs2/aops.c')
0 files changed, 0 insertions, 0 deletions