diff options
| -rw-r--r-- | lib/scatterlist.c | 16 | 
1 files changed, 8 insertions, 8 deletions
diff --git a/lib/scatterlist.c b/lib/scatterlist.c index fadae774a20..e76d85cf317 100644 --- a/lib/scatterlist.c +++ b/lib/scatterlist.c @@ -404,14 +404,13 @@ EXPORT_SYMBOL(sg_miter_start);   * @miter: sg mapping iter to proceed   *   * Description: - *   Proceeds @miter@ to the next mapping.  @miter@ should have been - *   started using sg_miter_start().  On successful return, - *   @miter@->page, @miter@->addr and @miter@->length point to the - *   current mapping. + *   Proceeds @miter to the next mapping.  @miter should have been started + *   using sg_miter_start().  On successful return, @miter->page, + *   @miter->addr and @miter->length point to the current mapping.   *   * Context: - *   IRQ disabled if SG_MITER_ATOMIC.  IRQ must stay disabled till - *   @miter@ is stopped.  May sleep if !SG_MITER_ATOMIC. + *   Preemption disabled if SG_MITER_ATOMIC.  Preemption must stay disabled + *   till @miter is stopped.  May sleep if !SG_MITER_ATOMIC.   *   * Returns:   *   true if @miter contains the next mapping.  false if end of sg @@ -465,7 +464,8 @@ EXPORT_SYMBOL(sg_miter_next);   *   resources (kmap) need to be released during iteration.   *   * Context: - *   IRQ disabled if the SG_MITER_ATOMIC is set.  Don't care otherwise. + *   Preemption disabled if the SG_MITER_ATOMIC is set.  Don't care + *   otherwise.   */  void sg_miter_stop(struct sg_mapping_iter *miter)  { @@ -479,7 +479,7 @@ void sg_miter_stop(struct sg_mapping_iter *miter)  			flush_kernel_dcache_page(miter->page);  		if (miter->__flags & SG_MITER_ATOMIC) { -			WARN_ON(!irqs_disabled()); +			WARN_ON_ONCE(preemptible());  			kunmap_atomic(miter->addr);  		} else  			kunmap(miter->page);  |