lkml.org 
[lkml]   [2010]   [Aug]   [27]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [PATCH 1/7] mmc: at91_mci: fix pointer errors
    Hi Andrew, Nicolas,

    On Fri, Feb 26, 2010 at 07:39:29PM +0100, Nicolas Ferre wrote:
    > From: Wolfgang Muees <wolfgang.mues@auerswald.de>
    >
    > Fixes two pointer errors, one which leads to memory overwrites if used with
    > large chunks of data.
    >
    > Signed-off-by: Wolfgang Muees <wolfgang.mues@auerswald.de>
    > Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
    > ---
    > drivers/mmc/host/at91_mci.c | 8 +++++---
    > 1 files changed, 5 insertions(+), 3 deletions(-)
    >
    > diff --git a/drivers/mmc/host/at91_mci.c b/drivers/mmc/host/at91_mci.c
    > index 63924e0..6835104 100644
    > --- a/drivers/mmc/host/at91_mci.c
    > +++ b/drivers/mmc/host/at91_mci.c
    > @@ -227,11 +227,13 @@ static inline void at91_mci_sg_to_dma(struct at91mci_host *host, struct mmc_data
    > for (index = 0; index < (amount / 4); index++)
    > *dmabuf++ = swab32(sgbuffer[index]);
    > } else {
    > - memcpy(dmabuf, sgbuffer, amount);
    > - dmabuf += amount;
    > + char *tmpv = (char *)dmabuf;
    > + memcpy(tmpv, sgbuffer, amount);
    > + tmpv += amount;
    > + dmabuf = (unsigned *)tmpv;
    > }
    >
    > - kunmap_atomic(sgbuffer, KM_BIO_SRC_IRQ);
    > + kunmap_atomic(((void *)sgbuffer)-sg->offset, KM_BIO_SRC_IRQ);
    >
    > if (size == 0)
    > break;
    > --
    > 1.5.6.5

    Looks like only the first half of this patch was applied? The
    kunmap_atomic() line is still present as before in Linus' tree.

    --
    Chris Ball <cjb@laptop.org> <http://printf.net/>
    One Laptop Per Child


    \
     
     \ /
      Last update: 2010-08-27 21:35    [W:0.021 / U:63.516 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site