[pve-devel] [PATCH] add scsi boot workaround
Derumier Alexandre
aderumier at odiso.com
Thu Dec 15 10:44:18 CET 2011
detect if lsi rom file exist and add bootindex on it
if not, add bootindex on scsi device
Signed-off-by: Derumier Alexandre <aderumier at odiso.com>
---
PVE/QemuServer.pm | 12 +++++++++---
1 files changed, 9 insertions(+), 3 deletions(-)
diff --git a/PVE/QemuServer.pm b/PVE/QemuServer.pm
index 10c7d8e..734b0d2 100644
--- a/PVE/QemuServer.pm
+++ b/PVE/QemuServer.pm
@@ -908,9 +908,14 @@ sub print_drivedevice_full {
} else {
die "unsupported interface type";
}
-
- $device .= ",bootindex=$drive->{bootindex}" if $drive->{bootindex};
-
+
+ if($drive->{interface} eq 'scsi') {
+ unless (-e '/usr/share/kvm/8xx_64.rom') {
+ $device .= ",bootindex=$drive->{bootindex}" if $drive->{bootindex};
+ }
+ } else {
+ $device .= ",bootindex=$drive->{bootindex}" if $drive->{bootindex};
+ }
return $device;
}
@@ -2139,6 +2144,7 @@ sub config_to_command {
my $controller = int($drive->{index} / $maxdev);
$pciaddr = print_pci_addr("scsi$controller");
push @$cmd, '-device', "lsi,id=scsi$controller$pciaddr" if !$scsicontroller->{$controller};
+ push @$cmd, '-option-rom', "8xx_64.rom,bootindex=$drive->{bootindex}" if ($drive->{bootindex} && (-e '/usr/share/kvm/8xx_64.rom') );
$scsicontroller->{$controller}=1;
}
--
1.7.2.5
More information about the pve-devel
mailing list