Subject: Re: [PATCH net-next] net/mlx4_core: Handle null return by pci_match_id()

From: Amir Vadai <[email-masked]>
Date: Mon, 31 Mar 2014 09:29:52 +0300

On 3/31/2014 7:52 AM, Or Gerlitz wrote:
> On Mon, Mar 31, 2014 at 6:54 AM, Wei Yang <[email-masked]> wrote:
>>
>> On Sun, Mar 30, 2014 at 09:08:06PM +0300, Or Gerlitz wrote:
>>> On Sun, Mar 30, 2014 at 6:26 PM, Amir Vadai <[email-masked]> wrote:
>>>> Fix issue introduced by commit: 97a5221 "net/mlx4_core: pass
>>>> pci_device_id.driver_data to __mlx4_init_one during reset".
>>>>
>>>> pci_match_id() might return NULL if someone binds the driver to a device
>>>> manually using /sys/bus/pci/drivers/.../new_id. Need to check 'id'
>>>> before using it.
>>>>
>>>> Thanks to Bjorn who raised the problem.
>>>
>>> Well, that commit was applied to net and is now present in Linus
>>> tree... so assuming it's too late for 3.14, need to queue this for
>>> -stable
>>>
>>> Or.
>>
>> Sorry for this bothering, hope this will not block someone.
>>
>> Here is my suggestion for fixing this, not sure this is a good way to export
>> pci_match_device() to modules. This is my current solution to this problem. If
>> you have any comments, please let me know.
>>
>> ------------------------------------------------------------------------------
>>  From 9361e1edd6776202c6e11dd44d3d4d72c990b111 Mon Sep 17 00:00:00 2001
>> From: Wei Yang <[email-masked]>
>> Date: Mon, 31 Mar 2014 11:34:57 +0800
>> Subject: [PATCH net-next] net/mlx4_core: match pci_device_id including dynids
>
>
>
> Your original commit went to net and same needs to be done for the fix
>
>
>
>>
>>
>> Fix issue introduced by commit: 97a5221 "net/mlx4_core: pass
>> pci_device_id.driver_data to __mlx4_init_one during reset".
>>
>> pci_match_id() just match the static pci_device_id, which may return NULL if
>> someone binds the driver to a device manually using
>> /sys/bus/pci/drivers/.../new_id.
>>
>> This patch match pci_device_id with pci_match_device() to cover both dynids
>> and static id_table.
>>
>> Thanks to Bjorn finding this issue.
>>
>> CC: Bjorn Helgaas <[email-masked]>
>> CC: Amir Vadai <[email-masked]>
>> Signed-off-by: Wei Yang <[email-masked]>

Acked-By: Amir Vadai <[email-masked]>

And of-course need to fix the net/net-next/stable thing