Only IDE needs limits for CHS configuration

Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
This commit is contained in:
Blue Swirl 2009-10-17 09:08:47 +00:00
parent 5041fccd8e
commit 5afe3f042a

6
vl.c
View File

@ -2078,15 +2078,15 @@ DriveInfo *drive_init(QemuOpts *opts, void *opaque,
} }
if (cyls || heads || secs) { if (cyls || heads || secs) {
if (cyls < 1 || cyls > 16383) { if (cyls < 1 || (type == IF_IDE && cyls > 16383)) {
fprintf(stderr, "qemu: '%s' invalid physical cyls number\n", buf); fprintf(stderr, "qemu: '%s' invalid physical cyls number\n", buf);
return NULL; return NULL;
} }
if (heads < 1 || heads > 16) { if (heads < 1 || (type == IF_IDE && heads > 16)) {
fprintf(stderr, "qemu: '%s' invalid physical heads number\n", buf); fprintf(stderr, "qemu: '%s' invalid physical heads number\n", buf);
return NULL; return NULL;
} }
if (secs < 1 || secs > 63) { if (secs < 1 || (type == IF_IDE && secs > 63)) {
fprintf(stderr, "qemu: '%s' invalid physical secs number\n", buf); fprintf(stderr, "qemu: '%s' invalid physical secs number\n", buf);
return NULL; return NULL;
} }