aboutsummaryrefslogtreecommitdiffstats
path: root/fs/bio.c
diff options
context:
space:
mode:
authorTejun Heo <tj@kernel.org>2009-04-15 22:10:25 +0900
committerJens Axboe <jens.axboe@oracle.com>2009-04-22 08:35:09 +0200
commitcd0aca2d550f238d80ba58e7dcade4ea3d0a3aa7 (patch)
tree9581a77ce54247a18963c9d827063923a667add7 /fs/bio.c
parentblock: fix SG_IO vector request data length handling (diff)
downloadlinux-dev-cd0aca2d550f238d80ba58e7dcade4ea3d0a3aa7.tar.xz
linux-dev-cd0aca2d550f238d80ba58e7dcade4ea3d0a3aa7.zip
block: fix queue bounce limit setting
Impact: don't set GFP_DMA in q->bounce_gfp unnecessarily All DMA address limits are expressed in terms of the last addressable unit (byte or page) instead of one plus that. However, when determining bounce_gfp for 64bit machines in blk_queue_bounce_limit(), it compares the specified limit against 0x100000000UL to determine whether it's below 4G ending up falsely setting GFP_DMA in q->bounce_gfp. As DMA zone is very small on x86_64, this makes larger SG_IO transfers very eager to trigger OOM killer. Fix it. While at it, rename the parameter to @dma_mask for clarity and convert comment to proper winged style. Signed-off-by: Tejun Heo <tj@kernel.org> Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
Diffstat (limited to 'fs/bio.c')
0 files changed, 0 insertions, 0 deletions