mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-15 16:24:13 +08:00
mmc: tifm_sd: Remove local_irq_{save,restore}() around tifm_sd_bounce_block()
tifm_sd_bounce_block() calls functions that ultimate use kmap_atomic() to map pages. A long time ago the kmap_atomic API required a slot to be provided which risked the possibility that other code might use the same slot at the same time. Disabling interrupts prevented the possibility of an interrupt handler doing that. However, that went away with commit3e4d3af501
("mm: stack based kmap_atomic()"). When the second argument to kmap_atomic was removed by commit482fce997e
("mmc: remove the second argument of k[un]map_atomic()"), local_irq_{save,restore}() should have been removed also. Remove it now. Signed-off-by: Adrian Hunter <adrian.hunter@intel.com> Link: https://lore.kernel.org/r/20221005101951.3165-10-adrian.hunter@intel.com Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
This commit is contained in:
parent
b7093c1096
commit
36bbdc3096
@ -264,16 +264,13 @@ static int tifm_sd_set_dma_data(struct tifm_sd *host, struct mmc_data *r_data)
|
||||
unsigned int t_size = TIFM_DMA_TSIZE * r_data->blksz;
|
||||
unsigned int dma_len, dma_blk_cnt, dma_off;
|
||||
struct scatterlist *sg = NULL;
|
||||
unsigned long flags;
|
||||
|
||||
if (host->sg_pos == host->sg_len)
|
||||
return 1;
|
||||
|
||||
if (host->cmd_flags & DATA_CARRY) {
|
||||
host->cmd_flags &= ~DATA_CARRY;
|
||||
local_irq_save(flags);
|
||||
tifm_sd_bounce_block(host, r_data);
|
||||
local_irq_restore(flags);
|
||||
if (host->sg_pos == host->sg_len)
|
||||
return 1;
|
||||
}
|
||||
@ -300,11 +297,9 @@ static int tifm_sd_set_dma_data(struct tifm_sd *host, struct mmc_data *r_data)
|
||||
if (dma_blk_cnt)
|
||||
sg = &r_data->sg[host->sg_pos];
|
||||
else if (dma_len) {
|
||||
if (r_data->flags & MMC_DATA_WRITE) {
|
||||
local_irq_save(flags);
|
||||
if (r_data->flags & MMC_DATA_WRITE)
|
||||
tifm_sd_bounce_block(host, r_data);
|
||||
local_irq_restore(flags);
|
||||
} else
|
||||
else
|
||||
host->cmd_flags |= DATA_CARRY;
|
||||
|
||||
sg = &host->bounce_buf;
|
||||
|
Loading…
Reference in New Issue
Block a user