[PATCH v4 3/7] platforms/pseries: Set eeh_pe of EEH_PE_VF type

Bryant G. Ly bryantly at linux.vnet.ibm.com
Thu Jan 25 01:53:28 AEDT 2018


On 1/23/18 7:14 PM, Michael Ellerman wrote:

> "Bryant G. Ly" <bryantly at linux.vnet.ibm.com> writes:
>
>> To correctly use EEH code one has to make
>> sure that the EEH_PE_VF is set for dynamic created
>> VFs. Therefore this patch allocates an eeh_pe of
>> eeh type EEH_PE_VF and associates PE with parent.
>>
>> Signed-off-by: Bryant G. Ly <bryantly at linux.vnet.ibm.com>
>> Signed-off-by: Juan J. Alvarez <jjalvare at linux.vnet.ibm.com>
>> ---
>>  arch/powerpc/include/asm/pci-bridge.h        |  5 ++++-
>>  arch/powerpc/platforms/pseries/eeh_pseries.c | 17 +++++++++++++++++
>>  2 files changed, 21 insertions(+), 1 deletion(-)
>>
>> diff --git a/arch/powerpc/include/asm/pci-bridge.h b/arch/powerpc/include/asm/pci-bridge.h
>> index 9f66ddebb799..16d70740a76f 100644
>> --- a/arch/powerpc/include/asm/pci-bridge.h
>> +++ b/arch/powerpc/include/asm/pci-bridge.h
>> @@ -211,7 +211,10 @@ struct pci_dn {
>>  	unsigned int *pe_num_map;	/* PE# for the first VF PE or array */
>>  	bool    m64_single_mode;	/* Use M64 BAR in Single Mode */
>>  #define IODA_INVALID_M64        (-1)
>> -	int     (*m64_map)[PCI_SRIOV_NUM_BARS];
>> +	union {
>> +		int     (*m64_map)[PCI_SRIOV_NUM_BARS]; /*Only used in powernv */
>> +		int     last_allow_rc;	/* Only used in pSeries */
>> +	};
>>  #endif /* CONFIG_PCI_IOV */
>>  	int	mps;			/* Maximum Payload Size */
>>  	struct list_head child_list;
> I don't see the point of using a union to save 4 bytes.
>
> And if you look at the current layout of the struct there's actually a 4
> byte hole after mps, so it doesn't actually save any space at all.
>
> I can remove it before applying, unless there's some compelling reason
> for it I'm not seeing.
>
> cheers

No specific reason for the union, you can go ahead and remove it before applying. 

Thanks!

Bryant




More information about the Linuxppc-dev mailing list