On 2021/4/26 20:26, Ferruh Yigit wrote:
> On 4/22/2021 2:55 AM, Min Hu (Connor) wrote:
>> From: Chengwen Feng <fengcheng...@huawei.com>
>>
>> The link fails code should be parsed using the structure
>> hns3_mbx_vf_to_pf_cmd, else it will parse fail.
>>
>> Fixes: 109e4dd1bd7a ("net/hns3: get link state change through mailbox")
>> Cc: sta...@dpdk.org
>>
>> Signed-off-by: Chengwen Feng <fengcheng...@huawei.com>
>> Signed-off-by: Min Hu (Connor) <humi...@huawei.com>
>> ---
>> drivers/net/hns3/hns3_mbx.c | 5 +++--
>> 1 file changed, 3 insertions(+), 2 deletions(-)
>>
>> diff --git a/drivers/net/hns3/hns3_mbx.c b/drivers/net/hns3/hns3_mbx.c
>> index ba04ac9..0550c9a 100644
>> --- a/drivers/net/hns3/hns3_mbx.c
>> +++ b/drivers/net/hns3/hns3_mbx.c
>> @@ -346,12 +346,13 @@ hns3_link_fail_parse(struct hns3_hw *hw, uint8_t
>> link_fail_code)
>> }
>>
>> static void
>> -hns3pf_handle_link_change_event(struct hns3_hw *hw,
>> - struct hns3_mbx_pf_to_vf_cmd *req)
>> +hns3pf_handle_link_change_event(struct hns3_hw *hw, void *data)
>
> Why not s/struct hns3_mbx_pf_to_vf_cmd/struct hns3_mbx_vf_to_pf_cmd/ but
> change
> to parameter to "void *", wouldn't it reduce the type check?
>
Only this message needs to be converted using hns3_mbx_vf_to_pf_cmd.
All other messages are processed using hns3_mbx_pf_to_vf_cmd.
So here we simplifying fix it.
Beside we will refactor hns3_mbx module in later version because the
PF and VF process logic is mixed.
thanks
>> {
>> #define LINK_STATUS_OFFSET 1
>> #define LINK_FAIL_CODE_OFFSET 2
>>
>> + struct hns3_mbx_vf_to_pf_cmd *req = data;
>> +
>> if (!req->msg[LINK_STATUS_OFFSET])
>> hns3_link_fail_parse(hw, req->msg[LINK_FAIL_CODE_OFFSET]);
>>
>>
>
>
> .
>