• Hariprasad Kelam's avatar
    octeontx2-af: Add validation for lmac type · cb5edce2
    Hariprasad Kelam authored
    Upon physical link change, firmware reports to the kernel about the
    change along with the details like speed, lmac_type_id, etc.
    Kernel derives lmac_type based on lmac_type_id received from firmware.
    
    In a few scenarios, firmware returns an invalid lmac_type_id, which
    is resulting in below kernel panic. This patch adds the missing
    validation of the lmac_type_id field.
    
    Internal error: Oops: 96000005 [#1] PREEMPT SMP
    [   35.321595] Modules linked in:
    [   35.328982] CPU: 0 PID: 31 Comm: kworker/0:1 Not tainted
    5.4.210-g2e3169d8e1bc-dirty #17
    [   35.337014] Hardware name: Marvell CN103XX board (DT)
    [   35.344297] Workqueue: events work_for_cpu_fn
    [   35.352730] pstate: 40400089 (nZcv daIf +PAN -UAO)
    [   35.360267] pc : strncpy+0x10/0x30
    [   35.366595] lr : cgx_link_change_handler+0x90/0x180
    
    Fixes: 61071a87 ("octeontx2-af: Forward CGX link notifications to PFs")
    Signed-off-by: default avatarHariprasad Kelam <hkelam@marvell.com>
    Signed-off-by: default avatarSunil Kovvuri Goutham <sgoutham@marvell.com>
    Signed-off-by: default avatarSai Krishna <saikrishnag@marvell.com>
    Reviewed-by: default avatarSimon Horman <simon.horman@corigine.com>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    cb5edce2
cgx.c 46.2 KB