summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRoel Kluin <12o3l@tiscali.nl>2008-01-28 14:09:54 +0100
committerJames Bottomley <James.Bottomley@HansenPartnership.com>2008-04-07 12:18:59 -0500
commit0b6c4b14cfb2fd89064d29bdead62f9ed8631399 (patch)
tree8a9b8e9ecf74f0af991946f189827a0a6a1701ff
parent639db475c8bb77f915f79f567ee98ac673d6edf3 (diff)
downloadlinux-0b6c4b14cfb2fd89064d29bdead62f9ed8631399.tar.gz
linux-0b6c4b14cfb2fd89064d29bdead62f9ed8631399.tar.bz2
linux-0b6c4b14cfb2fd89064d29bdead62f9ed8631399.zip
[SCSI] aic7xxx: Test opcode, not definition in aicasm:type_check()
This fixes a bug that we treat all sequencer operations as ands and never do the additional invalid bit checks non-and operations require because the if () to determine this has an operand which is always true at the end of the or statement. Signed-off-by: Roel Kluin <12o3l@tiscali.nl> Acked-by: Hannes Reinecke <hare@suse.de> Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
-rw-r--r--drivers/scsi/aic7xxx/aicasm/aicasm_gram.y2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/scsi/aic7xxx/aicasm/aicasm_gram.y b/drivers/scsi/aic7xxx/aicasm/aicasm_gram.y
index 6066998ed562..702e2dbd11fb 100644
--- a/drivers/scsi/aic7xxx/aicasm/aicasm_gram.y
+++ b/drivers/scsi/aic7xxx/aicasm/aicasm_gram.y
@@ -1837,7 +1837,7 @@ type_check(symbol_t *symbol, expression_t *expression, int opcode)
int and_op;
and_op = FALSE;
- if (opcode == AIC_OP_AND || opcode == AIC_OP_JNZ || AIC_OP_JZ)
+ if (opcode == AIC_OP_AND || opcode == AIC_OP_JNZ || opcode == AIC_OP_JZ)
and_op = TRUE;
/*