lkml.org 
[lkml]   [2017]   [May]   [18]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 4.11 013/114] staging: wilc1000: Fix problem with wrong vif index
    Date
    4.11-stable review patch.  If anyone has any objections, please let me know.

    ------------------

    From: Aditya Shankar <aditya.shankar@microchip.com>

    commit 0e490657c7214cce33fbca3d88227298c5c968ae upstream.

    The vif->idx value is always 0 for two interfaces.

    wl->vif_num = 0;

    loop {
    ...

    vif->idx = wl->vif_num;
    ...
    wl->vif_num = i;
    ....
    i++;
    ...
    }

    At present, vif->idx is assigned the value of wl->vif_num
    at the beginning of this block and device is initialized
    based on this index value.
    In the next iteration, wl->vif_num is still 0 as it is only updated
    later but gets assigned to vif->idx in the beginning. This causes problems
    later when we try to reference a particular interface and also while
    configuring the firmware.

    This patch moves the assignment to vif->idx from the beginning
    of the block to after wl->vif_num is updated with latest value of i.

    Fixes: commit 735bb39ca3be ("staging: wilc1000: simplify vif[i]->ndev accesses")
    Signed-off-by: Aditya Shankar <aditya.shankar@microchip.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

    ---
    drivers/staging/wilc1000/linux_wlan.c | 3 ++-
    1 file changed, 2 insertions(+), 1 deletion(-)

    --- a/drivers/staging/wilc1000/linux_wlan.c
    +++ b/drivers/staging/wilc1000/linux_wlan.c
    @@ -1251,11 +1251,12 @@ int wilc_netdev_init(struct wilc **wilc,
    else
    strcpy(ndev->name, "p2p%d");

    - vif->idx = wl->vif_num;
    vif->wilc = *wilc;
    vif->ndev = ndev;
    wl->vif[i] = vif;
    wl->vif_num = i;
    + vif->idx = wl->vif_num;
    +
    ndev->netdev_ops = &wilc_netdev_ops;

    {

    \
     
     \ /
      Last update: 2017-05-18 14:15    [W:7.111 / U:0.000 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site