lkml.org 
[lkml]   [2012]   [Mar]   [30]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Date
    From
    Subject[ 106/149] [media] lgdt330x: fix signedness error in i2c_read_demod_bytes()
    3.2-stable review patch.  If anyone has any objections, please let me know.

    ------------------

    From: Xi Wang <xi.wang@gmail.com>

    commit 34817174fca0c5512c2d5b6ea0fc37a0337ce1d8 upstream.

    The error handling in lgdt3303_read_status() and lgdt330x_read_ucblocks()
    doesn't work, because i2c_read_demod_bytes() returns a u8 and (err < 0)
    is always false.

    err = i2c_read_demod_bytes(state, 0x58, buf, 1);
    if (err < 0)
    return err;

    Change the return type of i2c_read_demod_bytes() to int. Also change
    the return value on error to -EIO to make (err < 0) work.

    Signed-off-by: Xi Wang <xi.wang@gmail.com>
    Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

    ---
    drivers/media/dvb/frontends/lgdt330x.c | 6 ++++--
    1 file changed, 4 insertions(+), 2 deletions(-)

    --- a/drivers/media/dvb/frontends/lgdt330x.c
    +++ b/drivers/media/dvb/frontends/lgdt330x.c
    @@ -104,8 +104,8 @@ static int i2c_write_demod_bytes (struct
    * then reads the data returned for (len) bytes.
    */

    -static u8 i2c_read_demod_bytes (struct lgdt330x_state* state,
    - enum I2C_REG reg, u8* buf, int len)
    +static int i2c_read_demod_bytes(struct lgdt330x_state *state,
    + enum I2C_REG reg, u8 *buf, int len)
    {
    u8 wr [] = { reg };
    struct i2c_msg msg [] = {
    @@ -118,6 +118,8 @@ static u8 i2c_read_demod_bytes (struct l
    ret = i2c_transfer(state->i2c, msg, 2);
    if (ret != 2) {
    printk(KERN_WARNING "lgdt330x: %s: addr 0x%02x select 0x%02x error (ret == %i)\n", __func__, state->config->demod_address, reg, ret);
    + if (ret >= 0)
    + ret = -EIO;
    } else {
    ret = 0;
    }



    \
     
     \ /
      Last update: 2012-03-30 23:17    [W:4.102 / U:0.180 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site