From: Christoph Lameter The bounce buffer logic is included on systems that do not need it. If a system does not have zones like ZONE_DMA and ZONE_HIGHMEM that can lead to the use of bounce buffers then there is no need to reserve memory pools etc etc. This is true f.e. for SGI Altix. Also nicifies the Makefile and gets rid of the tricky "and" there. Signed-off-by: Christoph Lameter Cc: Jens Axboe Signed-off-by: Andrew Morton --- include/linux/blkdev.h | 2 +- mm/Kconfig | 4 ++++ mm/Makefile | 4 +--- 3 files changed, 6 insertions(+), 4 deletions(-) diff -puN include/linux/blkdev.h~define-config_bounce-to-avoid-useless-inclusion-of-bounce-buffer include/linux/blkdev.h --- a/include/linux/blkdev.h~define-config_bounce-to-avoid-useless-inclusion-of-bounce-buffer +++ a/include/linux/blkdev.h @@ -607,7 +607,7 @@ extern unsigned long blk_max_low_pfn, bl #define BLK_BOUNCE_ANY ((u64)blk_max_pfn << PAGE_SHIFT) #define BLK_BOUNCE_ISA (ISA_DMA_THRESHOLD) -#ifdef CONFIG_MMU +#ifdef CONFIG_BOUNCE extern int init_emergency_isa_pool(void); extern void blk_queue_bounce(request_queue_t *q, struct bio **bio); #else diff -puN mm/Kconfig~define-config_bounce-to-avoid-useless-inclusion-of-bounce-buffer mm/Kconfig --- a/mm/Kconfig~define-config_bounce-to-avoid-useless-inclusion-of-bounce-buffer +++ a/mm/Kconfig @@ -163,6 +163,10 @@ config ZONE_DMA_FLAG default "0" if !ZONE_DMA default "1" +config BOUNCE + def_bool y + depends on BLOCK && MMU && (ZONE_DMA || HIGHMEM) + config NR_QUICK int depends on QUICKLIST diff -puN mm/Makefile~define-config_bounce-to-avoid-useless-inclusion-of-bounce-buffer mm/Makefile --- a/mm/Makefile~define-config_bounce-to-avoid-useless-inclusion-of-bounce-buffer +++ a/mm/Makefile @@ -13,9 +13,7 @@ obj-y := bootmem.o filemap.o mempool.o prio_tree.o util.o mmzone.o vmstat.o backing-dev.o \ $(mmu-y) -ifeq ($(CONFIG_MMU)$(CONFIG_BLOCK),yy) -obj-y += bounce.o -endif +obj-$(CONFIG_BOUNCE) += bounce.o obj-$(CONFIG_SWAP) += page_io.o swap_state.o swapfile.o thrash.o obj-$(CONFIG_HUGETLBFS) += hugetlb.o obj-$(CONFIG_NUMA) += mempolicy.o _