Explorar o código

[SCSI] Signdness issue in drivers/scsi/osst.c

another signdness warning from gcc 4.1

drivers/scsi/osst.c:5154: warning: comparison of unsigned expression < 0 is always false

The problem is that blk is defined as unsigned, but all usages of it are
normal int cases.  osst_get_frame_position() and osst_get_sector() return ints
and can return negative values.  If blk stays an unsigned int, the error check
is useless.

Signed-off-by: Eric Sesterhenn <snakebyte@gmx.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
Eric Sesterhenn %!s(int64=18) %!d(string=hai) anos
pai
achega
45223fd77c
Modificáronse 1 ficheiros con 1 adicións e 2 borrados
  1. 1 2
      drivers/scsi/osst.c

+ 1 - 2
drivers/scsi/osst.c

@@ -4843,8 +4843,7 @@ static int os_scsi_tape_close(struct inode * inode, struct file * filp)
 static int osst_ioctl(struct inode * inode,struct file * file,
 static int osst_ioctl(struct inode * inode,struct file * file,
 	 unsigned int cmd_in, unsigned long arg)
 	 unsigned int cmd_in, unsigned long arg)
 {
 {
-	int		      i, cmd_nr, cmd_type, retval = 0;
-	unsigned int	      blk;
+	int		      i, cmd_nr, cmd_type, blk, retval = 0;
 	struct st_modedef   * STm;
 	struct st_modedef   * STm;
 	struct st_partstat  * STps;
 	struct st_partstat  * STps;
 	struct osst_request * SRpnt = NULL;
 	struct osst_request * SRpnt = NULL;