diff options
Diffstat (limited to 'lib/scatterlist.c')
-rw-r--r-- | lib/scatterlist.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/lib/scatterlist.c b/lib/scatterlist.c index 0d475d8167bf..e6dcd3b0d974 100644 --- a/lib/scatterlist.c +++ b/lib/scatterlist.c | |||
@@ -9,6 +9,7 @@ | |||
9 | #include <linux/module.h> | 9 | #include <linux/module.h> |
10 | #include <linux/scatterlist.h> | 10 | #include <linux/scatterlist.h> |
11 | #include <linux/highmem.h> | 11 | #include <linux/highmem.h> |
12 | #include <linux/interrupt.h> | ||
12 | 13 | ||
13 | /** | 14 | /** |
14 | * sg_next - return the next scatterlist entry in a list | 15 | * sg_next - return the next scatterlist entry in a list |
@@ -399,7 +400,7 @@ void sg_miter_stop(struct sg_mapping_iter *miter) | |||
399 | flush_kernel_dcache_page(miter->page); | 400 | flush_kernel_dcache_page(miter->page); |
400 | 401 | ||
401 | if (miter->__flags & SG_MITER_ATOMIC) { | 402 | if (miter->__flags & SG_MITER_ATOMIC) { |
402 | WARN_ON(!irqs_disabled()); | 403 | WARN_ON_NONRT(!irqs_disabled()); |
403 | kunmap_atomic(miter->addr, KM_BIO_SRC_IRQ); | 404 | kunmap_atomic(miter->addr, KM_BIO_SRC_IRQ); |
404 | } else | 405 | } else |
405 | kunmap(miter->page); | 406 | kunmap(miter->page); |
@@ -439,7 +440,7 @@ static size_t sg_copy_buffer(struct scatterlist *sgl, unsigned int nents, | |||
439 | 440 | ||
440 | sg_miter_start(&miter, sgl, nents, sg_flags); | 441 | sg_miter_start(&miter, sgl, nents, sg_flags); |
441 | 442 | ||
442 | local_irq_save(flags); | 443 | local_irq_save_nort(flags); |
443 | 444 | ||
444 | while (sg_miter_next(&miter) && offset < buflen) { | 445 | while (sg_miter_next(&miter) && offset < buflen) { |
445 | unsigned int len; | 446 | unsigned int len; |
@@ -456,7 +457,7 @@ static size_t sg_copy_buffer(struct scatterlist *sgl, unsigned int nents, | |||
456 | 457 | ||
457 | sg_miter_stop(&miter); | 458 | sg_miter_stop(&miter); |
458 | 459 | ||
459 | local_irq_restore(flags); | 460 | local_irq_restore_nort(flags); |
460 | return offset; | 461 | return offset; |
461 | } | 462 | } |
462 | 463 | ||