On Thu, 7 May 2020 18:21:19 +0000 Luo bin wrote:
> diff --git a/drivers/net/ethernet/huawei/hinic/hinic_hw_mbox.c 
> b/drivers/net/ethernet/huawei/hinic/hinic_hw_mbox.c
> index 564fb2294a29..bc2f87e6cb5d 100644
> --- a/drivers/net/ethernet/huawei/hinic/hinic_hw_mbox.c
> +++ b/drivers/net/ethernet/huawei/hinic/hinic_hw_mbox.c
> @@ -627,7 +627,7 @@ wait_for_mbox_seg_completion(struct 
> hinic_mbox_func_to_func *func_to_func,
>       struct hinic_hwdev *hwdev = func_to_func->hwdev;
>       struct completion *done = &send_mbox->send_done;
>       u32 cnt = 0;
> -     ulong jif;
> +     unsigned long jif;
>  
>       if (poll) {
>               while (cnt < MBOX_MSG_POLLING_TIMEOUT) {
> @@ -869,7 +869,7 @@ int hinic_mbox_to_func(struct hinic_mbox_func_to_func 
> *func_to_func,
>  {
>       struct hinic_recv_mbox *mbox_for_resp;
>       struct mbox_msg_info msg_info = {0};
> -     ulong timeo;
> +     unsigned long timeo;
>       int err;
>  
>       mbox_for_resp = &func_to_func->mbox_resp[dst_func];

Unrelated cleanup.

> diff --git a/drivers/net/ethernet/huawei/hinic/hinic_main.c 
> b/drivers/net/ethernet/huawei/hinic/hinic_main.c
> index b66bb86cff96..3d6569d7bac8 100644
> --- a/drivers/net/ethernet/huawei/hinic/hinic_main.c
> +++ b/drivers/net/ethernet/huawei/hinic/hinic_main.c
> @@ -427,10 +427,6 @@ static int hinic_open(struct net_device *netdev)
>               goto err_func_port_state;
>       }
>  
> -     if (!HINIC_IS_VF(nic_dev->hwdev->hwif))
> -             /* Wait up to 3 sec between port enable to link state */
> -             msleep(3000);

Why is this no longer needed?

>       down(&nic_dev->mgmt_lock);
>  
>       err = hinic_port_link_state(nic_dev, &link_state);

> +     if (link_state == HINIC_LINK_STATE_DOWN) {
> +             netif_err(nic_dev, drv, netdev,
> +                       "Link status must be up when setting vf tx rate\n");
> +             return -EPERM;
> +     }

Does this also mean the configuration is lost if link goes down?

Reply via email to