mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-15 16:24:13 +08:00
mmc: wbsd: Replace kmap_atomic() with kmap_local_page()
kmap_local_page() is equivalent to kmap_atomic() except that it does not disable page faults or preemption. Where possible kmap_local_page() is preferred to kmap_atomic() - refer kernel highmem documentation. In this case, there is no need to disable page faults or preemption, so replace kmap_atomic() with kmap_local_page(), and, correspondingly, kunmap_atomic() with kunmap_local(). Signed-off-by: Adrian Hunter <adrian.hunter@intel.com> Link: https://lore.kernel.org/r/20221005101951.3165-15-adrian.hunter@intel.com Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
This commit is contained in:
parent
2fc458f75e
commit
cdb1ad5270
@ -267,7 +267,7 @@ static inline int wbsd_next_sg(struct wbsd_host *host)
|
||||
|
||||
static inline char *wbsd_map_sg(struct wbsd_host *host)
|
||||
{
|
||||
return kmap_atomic(sg_page(host->cur_sg)) + host->cur_sg->offset;
|
||||
return kmap_local_page(sg_page(host->cur_sg)) + host->cur_sg->offset;
|
||||
}
|
||||
|
||||
static inline void wbsd_sg_to_dma(struct wbsd_host *host, struct mmc_data *data)
|
||||
@ -439,7 +439,7 @@ static void wbsd_empty_fifo(struct wbsd_host *host)
|
||||
* End of scatter list entry?
|
||||
*/
|
||||
if (host->remain == 0) {
|
||||
kunmap_atomic(buffer);
|
||||
kunmap_local(buffer);
|
||||
/*
|
||||
* Get next entry. Check if last.
|
||||
*/
|
||||
@ -451,7 +451,7 @@ static void wbsd_empty_fifo(struct wbsd_host *host)
|
||||
}
|
||||
}
|
||||
}
|
||||
kunmap_atomic(buffer);
|
||||
kunmap_local(buffer);
|
||||
|
||||
/*
|
||||
* This is a very dirty hack to solve a
|
||||
@ -505,7 +505,7 @@ static void wbsd_fill_fifo(struct wbsd_host *host)
|
||||
* End of scatter list entry?
|
||||
*/
|
||||
if (host->remain == 0) {
|
||||
kunmap_atomic(buffer);
|
||||
kunmap_local(buffer);
|
||||
/*
|
||||
* Get next entry. Check if last.
|
||||
*/
|
||||
@ -517,7 +517,7 @@ static void wbsd_fill_fifo(struct wbsd_host *host)
|
||||
}
|
||||
}
|
||||
}
|
||||
kunmap_atomic(buffer);
|
||||
kunmap_local(buffer);
|
||||
|
||||
/*
|
||||
* The controller stops sending interrupts for
|
||||
|
Loading…
Reference in New Issue
Block a user