aboutsummaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
authorEvgeniy Polyakov <johnpol@2ka.mipt.ru>2006-01-05 05:31:23 -0500
committerRussell King <rmk+kernel@arm.linux.org.uk>2006-01-05 05:31:23 -0500
commitf3e2628bed0d5a88ced8239b35f1534557f9631c (patch)
tree5261ca866b3adffcb186d2b1f6db9f4e44302995 /drivers
parente9c091b47409255cefa1672041479d850b7b991a (diff)
[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>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/mmc/mmci.c2
-rw-r--r--drivers/mmc/mmci.h4
2 files changed, 3 insertions, 3 deletions
diff --git a/drivers/mmc/mmci.c b/drivers/mmc/mmci.c
index 6d161c70014a..2b10a2d4ae09 100644
--- a/drivers/mmc/mmci.c
+++ b/drivers/mmc/mmci.c
@@ -300,7 +300,7 @@ static irqreturn_t mmci_pio_irq(int irq, void *dev_id, struct pt_regs *regs)
300 /* 300 /*
301 * Unmap the buffer. 301 * Unmap the buffer.
302 */ 302 */
303 mmci_kunmap_atomic(host, &flags); 303 mmci_kunmap_atomic(host, buffer, &flags);
304 304
305 host->sg_off += len; 305 host->sg_off += len;
306 host->size -= len; 306 host->size -= len;
diff --git a/drivers/mmc/mmci.h b/drivers/mmc/mmci.h
index 4589bbd68192..6d7eadc9a678 100644
--- a/drivers/mmc/mmci.h
+++ b/drivers/mmc/mmci.h
@@ -172,8 +172,8 @@ static inline char *mmci_kmap_atomic(struct mmci_host *host, unsigned long *flag
172 return kmap_atomic(sg->page, KM_BIO_SRC_IRQ) + sg->offset; 172 return kmap_atomic(sg->page, KM_BIO_SRC_IRQ) + sg->offset;
173} 173}
174 174
175static inline void mmci_kunmap_atomic(struct mmci_host *host, unsigned long *flags) 175static inline void mmci_kunmap_atomic(struct mmci_host *host, void *buffer, unsigned long *flags)
176{ 176{
177 kunmap_atomic(host->sg_ptr->page, KM_BIO_SRC_IRQ); 177 kunmap_atomic(buffer, KM_BIO_SRC_IRQ);
178 local_irq_restore(*flags); 178 local_irq_restore(*flags);
179} 179}