sim-card
/
qemu
Archived
10
0
Fork 0

lsi: Fix value overflow in request tag processing

This fixes a mismerge of 64d564094c (wrong
patch version): We need to mask the tag value properly to obtain its
device ID.

Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
This commit is contained in:
Jan Kiszka 2010-05-21 18:44:59 +02:00 committed by Aurelien Jarno
parent 664a65b0db
commit 259d5577ae
1 changed files with 2 additions and 2 deletions

View File

@ -543,7 +543,7 @@ static void lsi_do_dma(LSIState *s, int out)
return;
}
id = s->current->tag >> 8;
id = (s->current->tag >> 8) & 0xf;
dev = s->bus.devs[id];
if (!dev) {
lsi_bad_selection(s, id);
@ -745,7 +745,7 @@ static void lsi_do_command(LSIState *s)
s->sfbr = buf[0];
s->command_complete = 0;
id = s->select_tag >> 8;
id = (s->select_tag >> 8) & 0xf;
dev = s->bus.devs[id];
if (!dev) {
lsi_bad_selection(s, id);