Commit 27750a31 authored by Giovanni Cabiddu's avatar Giovanni Cabiddu Committed by Herbert Xu
Browse files

crypto: qat - do not handle PFVF sources for qat_4xxx



The QAT driver does not have support for PFVF interrupts for GEN4
devices, therefore report the vf2pf sources as 0.
This prevents a NULL pointer dereference in the function
adf_msix_isr_ae() if the device triggers a spurious interrupt.

Fixes: 993161d3 ("crypto: qat - fix handling of VF to PF interrupts")
Reported-by: default avatarAdam Guerin <adam.guerin@intel.com>
Signed-off-by: default avatarGiovanni Cabiddu <giovanni.cabiddu@intel.com>
Signed-off-by: default avatarHerbert Xu <herbert@gondor.apana.org.au>
parent fa55b7dc
Loading
Loading
Loading
Loading
+7 −0
Original line number Diff line number Diff line
@@ -211,6 +211,12 @@ static u32 uof_get_ae_mask(u32 obj_num)
	return adf_4xxx_fw_config[obj_num].ae_mask;
}

static u32 get_vf2pf_sources(void __iomem *pmisc_addr)
{
	/* For the moment do not report vf2pf sources */
	return 0;
}

void adf_init_hw_data_4xxx(struct adf_hw_device_data *hw_data)
{
	hw_data->dev_class = &adf_4xxx_class;
@@ -254,6 +260,7 @@ void adf_init_hw_data_4xxx(struct adf_hw_device_data *hw_data)
	hw_data->set_msix_rttable = set_msix_default_rttable;
	hw_data->set_ssm_wdtimer = adf_gen4_set_ssm_wdtimer;
	hw_data->enable_pfvf_comms = pfvf_comms_disabled;
	hw_data->get_vf2pf_sources = get_vf2pf_sources;
	hw_data->disable_iov = adf_disable_sriov;
	hw_data->min_iov_compat_ver = ADF_PFVF_COMPAT_THIS_VERSION;