]> git.proxmox.com Git - mirror_edk2.git/commit - OvmfPkg/OvmfPkg.dec
OvmfPkg/PvScsiDxe: Report the number of targets and LUNs
authorLiran Alon <liran.alon@oracle.com>
Sat, 28 Mar 2020 20:00:49 +0000 (23:00 +0300)
committermergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
Mon, 30 Mar 2020 16:45:07 +0000 (16:45 +0000)
commit7efce2e59c2016f0b2572d4b79845f14a8758475
tree21c03199b60998ef4152723a3dfe2c088d330ec6
parente497432c2ceadc3924f96e49593c8a77044efea7
OvmfPkg/PvScsiDxe: Report the number of targets and LUNs

Implement EXT_SCSI_PASS_THRU.GetNextTarget() and
EXT_SCSI_PASS_THRU.GetNextTargetLun().

ScsiBusDxe scans all MaxTarget * MaxLun possible devices.
This can take unnecessarily long for large number of targets.
To deal with this, VirtioScsiDxe has defined PCDs to limit the
MaxTarget & MaxLun to desired values which gives sufficient
performance. It is very important in virtio-scsi as it can have
very big MaxTarget & MaxLun.
Even though a common PVSCSI device has a default MaxTarget=64 and
MaxLun=0, we implement similar mechanism as virtio-scsi for completeness.
This may be useful in the future when PVSCSI will have bigger values
for MaxTarget and MaxLun.

Ref: https://bugzilla.tianocore.org/show_bug.cgi?id=2567
Reviewed-by: Laszlo Ersek <lersek@redhat.com>
Signed-off-by: Liran Alon <liran.alon@oracle.com>
Message-Id: <20200328200100.60786-7-liran.alon@oracle.com>
Reviewed-by: Nikita Leshenko <nikita.leshchenko@oracle.com>
OvmfPkg/OvmfPkg.dec
OvmfPkg/PvScsiDxe/PvScsi.c
OvmfPkg/PvScsiDxe/PvScsi.h
OvmfPkg/PvScsiDxe/PvScsiDxe.inf