Re: [patch 5/6] ide: fix races in handling of user-space SET XFERcommands

From: David Miller
Date: Tue Jun 23 2009 - 19:40:51 EST


From: Bartlomiej Zolnierkiewicz <bzolnier@xxxxxxxxx>
Date: Tue, 23 Jun 2009 23:35:51 +0200

I just noticed the following while re-reading this patch.

> @@ -322,10 +322,17 @@ static void ide_error_cmd(ide_drive_t *d
> void ide_finish_cmd(ide_drive_t *drive, struct ide_cmd *cmd, u8 stat)
> {
> struct request *rq = drive->hwif->rq;
> - u8 err = ide_read_error(drive);
> + u8 err = ide_read_error(drive), nsect = cmd->tf.nsect;
> + u8 set_xfer = !!(cmd->tf_flags & IDE_TFLAG_SET_XFER);
>

There is no reason to use 'u8' for set_xfer. It's a boolean
so use 'bool' and then you can eliminate that "!!()" double
negate.

The only reason you would need that double-negate is because
cmd->tf_flags is a u16 and IDE_TFLAG_SET_XFER is in fact one
of those upper 8-bits.

Further confirming that a bool would be a better choice here.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/