[U-Boot] [PATCH 1/2 V3] mmc: add boundary check for mmc operation

Lei Wen adrian.wenl at gmail.com
Sat Sep 18 15:01:11 CEST 2010


Continue ping...

Best regards,
Lei

On Fri, Sep 17, 2010 at 11:22 AM, Lei Wen <adrian.wenl at gmail.com> wrote:
> Hi,
>
> Is it ok now for merging....?
>
> Thanks,
> Lei
>
> On Mon, Sep 13, 2010 at 10:07 PM, Lei Wen <leiwen at marvell.com> wrote:
>>
>> Signed-off-by: Lei Wen <leiwen at marvell.com>
>> ---
>> V2:
>> Change log:
>> change the puts to printf to better formating.
>>
>>  drivers/mmc/mmc.c |   10 ++++++++++
>>  1 files changed, 10 insertions(+), 0 deletions(-)
>>
>> diff --git a/drivers/mmc/mmc.c b/drivers/mmc/mmc.c
>> index cf4ea16..23928c1 100644
>> --- a/drivers/mmc/mmc.c
>> +++ b/drivers/mmc/mmc.c
>> @@ -92,6 +92,11 @@ mmc_bwrite(int dev_num, ulong start, lbaint_t blkcnt, const void*src)
>>
>>        blklen = mmc->write_bl_len;
>>
>> +       if ((start + blkcnt) > mmc->block_dev.lba) {
>> +               printf("MMC: block number 0x%x exceeds max(0x%x)",
>> +                       start + blkcnt, mmc->block_dev.lba);
>> +               return 0;
>> +       }
>>        err = mmc_set_blocklen(mmc, mmc->write_bl_len);
>>
>>        if (err) {
>> @@ -219,6 +224,11 @@ static ulong mmc_bread(int dev_num, ulong start, lbaint_t blkcnt, void *dst)
>>        if (!mmc)
>>                return 0;
>>
>> +       if ((start + blkcnt) > mmc->block_dev.lba) {
>> +               printf("MMC: block number 0x%x exceeds max(0x%x)",
>> +                       start + blkcnt, mmc->block_dev.lba);
>> +               return 0;
>> +       }
>>        /* We always do full block reads from the card */
>>        err = mmc_set_blocklen(mmc, mmc->read_bl_len);
>>
>> --
>> 1.7.0.4
>>
>>
>


More information about the U-Boot mailing list