atapi: Drives can be locked without media present

Drivers are free to lock drives without any media present.  Such a
condition should not result in an error condition.

See Table 341 in MMC-5 spec for details.

Signed-off-by: Amit Shah <amit.shah@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
This commit is contained in:
Amit Shah 2011-04-09 15:54:38 +05:30 committed by Kevin Wolf
parent 21df65b644
commit 8aa71917f7

View file

@ -1230,13 +1230,8 @@ static void ide_atapi_cmd(IDEState *s)
ide_atapi_cmd_reply(s, 18, max_len);
break;
case GPCMD_PREVENT_ALLOW_MEDIUM_REMOVAL:
if (bdrv_is_inserted(s->bs)) {
bdrv_set_locked(s->bs, packet[4] & 1);
ide_atapi_cmd_ok(s);
} else {
ide_atapi_cmd_error(s, SENSE_NOT_READY,
ASC_MEDIUM_NOT_PRESENT);
}
bdrv_set_locked(s->bs, packet[4] & 1);
ide_atapi_cmd_ok(s);
break;
case GPCMD_READ_10:
case GPCMD_READ_12: