pnv/xive2: Fail VST entry address computation if table has no VSD
Fail VST entry address computation if firmware doesn't define a descriptor for one of the Virtualization Structure Tables (VST), there's no point in trying to compute the address of its entry. Abort the operation and log an error. Signed-off-by: Frederic Barrat <fbarrat@linux.ibm.com> Signed-off-by: Michael Kowal <kowal@linux.vnet.ibm.com> Reviewed-by: Cédric Le Goater <clg@kaod.org> Signed-off-by: Nicholas Piggin <npiggin@gmail.com>
This commit is contained in:
parent
4c81813e25
commit
fa414eb665
@ -244,6 +244,11 @@ static uint64_t pnv_xive2_vst_addr(PnvXive2 *xive, uint32_t type, uint8_t blk,
|
||||
}
|
||||
|
||||
vsd = xive->vsds[type][blk];
|
||||
if (vsd == 0) {
|
||||
xive2_error(xive, "VST: vsd == 0 block id %d for VST %s %d !?",
|
||||
blk, info->name, idx);
|
||||
return 0;
|
||||
}
|
||||
|
||||
/* Remote VST access */
|
||||
if (GETFIELD(VSD_MODE, vsd) == VSD_MODE_FORWARD) {
|
||||
|
Loading…
x
Reference in New Issue
Block a user