diff options
Diffstat (limited to 'include/linux')
| -rw-r--r-- | include/linux/bio.h | 12 |
1 files changed, 3 insertions, 9 deletions
diff --git a/include/linux/bio.h b/include/linux/bio.h index fee72762ad8d..5fdfd8e8936c 100644 --- a/include/linux/bio.h +++ b/include/linux/bio.h @@ -215,17 +215,11 @@ extern inline char *bio_kmap_irq(struct bio *bio, unsigned long *flags) { unsigned long addr; - local_save_flags(*flags); - - /* - * could be low - */ - if (!PageHighMem(bio_page(bio))) - return bio_data(bio); - /* - * it's a highmem page + * might not be a highmem page, but the preempt/irq count + * balancing is a lot nicer this way */ + local_save_flags(*flags); local_irq_disable(); addr = (unsigned long) kmap_atomic(bio_page(bio), KM_BIO_SRC_IRQ); |
