Gitweb:     
http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=db7526f925b79293dc3b361a70db7f340870a298
Commit:     db7526f925b79293dc3b361a70db7f340870a298
Parent:     ad4a5bb885f1985732426f108d2fe36517dd1939
Author:     Meelis Roos <[EMAIL PROTECTED]>
AuthorDate: Tue Jul 31 00:39:41 2007 -0700
Committer:  Linus Torvalds <[EMAIL PROTECTED]>
CommitDate: Tue Jul 31 15:39:44 2007 -0700

    fix integer overflow warning in i2o_block
    
    drivers/message/i2o/i2o_block.c: In function 'i2o_block_transfer':
    drivers/message/i2o/i2o_block.c:837: warning: integer overflow in expression
    
    msg->u.head[1] = cpu_to_le32(I2O_CMD_PRIVATE << 24 | HOST_TID << 12 | tid);
    and I2O_CMD_PRIVATE is defined as 0xFF.  This gets "0xFF0100 | tid" and fits
    into 32-bit unsigned but not into 32-bit signed integer properly.  Target
    value is defined as u32 so the claculation does not fit during computation.
    
    Change local variable tid to u32 so the whole expression is of u32 type and
    fits well into u32 result.
    
    Signed-off-by: Meelis Roos <[EMAIL PROTECTED]>
    Cc: "Salyzyn, Mark" <[EMAIL PROTECTED]>
    Signed-off-by: Andrew Morton <[EMAIL PROTECTED]>
    Signed-off-by: Linus Torvalds <[EMAIL PROTECTED]>
---
 drivers/message/i2o/i2o_block.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/drivers/message/i2o/i2o_block.c b/drivers/message/i2o/i2o_block.c
index 5e1c99f..50b2c73 100644
--- a/drivers/message/i2o/i2o_block.c
+++ b/drivers/message/i2o/i2o_block.c
@@ -744,7 +744,7 @@ static int i2o_block_transfer(struct request *req)
 {
        struct i2o_block_device *dev = req->rq_disk->private_data;
        struct i2o_controller *c;
-       int tid = dev->i2o_dev->lct_data.tid;
+       u32 tid = dev->i2o_dev->lct_data.tid;
        struct i2o_message *msg;
        u32 *mptr;
        struct i2o_block_request *ireq = req->special;
-
To unsubscribe from this list: send the line "unsubscribe git-commits-head" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to