mirror of https://gitee.com/openkylin/linux.git
[MMC] mmci: kunmap_atomic() unmaps virtual address, not page
Signed-off-by: Evgeniy Polyakov <johnpol@2ka.mipt.ru> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
This commit is contained in:
parent
e9c091b474
commit
f3e2628bed
|
@ -300,7 +300,7 @@ static irqreturn_t mmci_pio_irq(int irq, void *dev_id, struct pt_regs *regs)
|
||||||
/*
|
/*
|
||||||
* Unmap the buffer.
|
* Unmap the buffer.
|
||||||
*/
|
*/
|
||||||
mmci_kunmap_atomic(host, &flags);
|
mmci_kunmap_atomic(host, buffer, &flags);
|
||||||
|
|
||||||
host->sg_off += len;
|
host->sg_off += len;
|
||||||
host->size -= len;
|
host->size -= len;
|
||||||
|
|
|
@ -172,8 +172,8 @@ static inline char *mmci_kmap_atomic(struct mmci_host *host, unsigned long *flag
|
||||||
return kmap_atomic(sg->page, KM_BIO_SRC_IRQ) + sg->offset;
|
return kmap_atomic(sg->page, KM_BIO_SRC_IRQ) + sg->offset;
|
||||||
}
|
}
|
||||||
|
|
||||||
static inline void mmci_kunmap_atomic(struct mmci_host *host, unsigned long *flags)
|
static inline void mmci_kunmap_atomic(struct mmci_host *host, void *buffer, unsigned long *flags)
|
||||||
{
|
{
|
||||||
kunmap_atomic(host->sg_ptr->page, KM_BIO_SRC_IRQ);
|
kunmap_atomic(buffer, KM_BIO_SRC_IRQ);
|
||||||
local_irq_restore(*flags);
|
local_irq_restore(*flags);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue