On 2019/7/23 15:43, Leon Romanovsky wrote:
> On Tue, Jul 23, 2019 at 10:49:08AM +0800, YueHaibing wrote:
>> If INFINIBAND_HNS_HIP08 is selected and HNS3 is m,
>> but INFINIBAND_HNS is y, building fails:
>>
>> drivers/infiniband/hw/hns/hns_roce_hw_v2.o: In function 
>> `hns_roce_hw_v2_exit':
>> hns_roce_hw_v2.c:(.exit.text+0xd): undefined reference to 
>> `hnae3_unregister_client'
>> drivers/infiniband/hw/hns/hns_roce_hw_v2.o: In function 
>> `hns_roce_hw_v2_init':
>> hns_roce_hw_v2.c:(.init.text+0xd): undefined reference to 
>> `hnae3_register_client'
> 
> It means that you have a problem with header files of your hns3.

hnae3_unregister_client is a EXPORT_SYMBOL. If INFINIBAND_HNS is y,
hns-roce-hw-v2 will be built-in, but as HNS3 is set to m, linking will failed.

I can't see how to fix this in header files of hns3, or am I missing something?

> 
>>
>> Reported-by: Hulk Robot <hul...@huawei.com>
>> Fixes: dd74282df573 ("RDMA/hns: Initialize the PCI device for hip08 RoCE")
>> Signed-off-by: YueHaibing <yuehaib...@huawei.com>
>> ---
>>  drivers/infiniband/hw/hns/Kconfig | 3 ++-
>>  1 file changed, 2 insertions(+), 1 deletion(-)
>>
>> diff --git a/drivers/infiniband/hw/hns/Kconfig 
>> b/drivers/infiniband/hw/hns/Kconfig
>> index b59da5d..4371c80 100644
>> --- a/drivers/infiniband/hw/hns/Kconfig
>> +++ b/drivers/infiniband/hw/hns/Kconfig
>> @@ -23,7 +23,8 @@ config INFINIBAND_HNS_HIP06
>>
>>  config INFINIBAND_HNS_HIP08
>>      bool "Hisilicon Hip08 Family RoCE support"
>> -    depends on INFINIBAND_HNS && PCI && HNS3
>> +    depends on INFINIBAND_HNS && (INFINIBAND_HNS = HNS3)
> 
> This is wrong.
> 
>> +    depends on PCI
>>      ---help---
>>        RoCE driver support for Hisilicon RoCE engine in Hisilicon Hip08 SoC.
>>        The RoCE engine is a PCI device.
>> --
>> 2.7.4
>>
>>
> 
> .
> 

Reply via email to