Re: [PATCH v2] coccinelle: Check for missing NULL terminators in of_device_id tables

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




On 06/09/14 14:47, Michal Marek wrote:
> Dne 3.6.2014 20:25, Julia Lawall napsal(a):
>> From: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>
>>
>> Failure to terminate an of_device_id table can lead to confusing
>> failures depending on where the compiler places the array. Add a
>> check to make sure these tables are terminated. Thanks to Mitchel
>> Humpherys for coming up with the pattern initially.
>>
>> Cc: Mitchel Humpherys <mitchelh@xxxxxxxxxxxxxx>
>> Cc: Julia Lawall <Julia.Lawall@xxxxxxx>
>> Cc: Gilles Muller <Gilles.Muller@xxxxxxx>
>> Cc: Nicolas Palix <nicolas.palix@xxxxxxx>
>> Cc: Grant Likely <grant.likely@xxxxxxxxxx>
>> Cc: Rob Herring <robh+dt@xxxxxxxxxx>
>> Cc: devicetree@xxxxxxxxxxxxxxx
>> Signed-off-by: Stephen Boyd <sboyd@xxxxxxxxxxxxxx>
>> Acked-by: Grant Likely <grant.likely@xxxxxxxxxx>
>> Signed-off-by: Julia Lawall <julia.lawall@xxxxxxx>
>>
>> ---
>>
>> v3: Removed unneeded rule bad_of_table.  Placed * in context rule on the 
>> closing brace; putting it on the field caused all fields to be marked.
>>
>> v4: corrected authorship
>>
>>  scripts/coccinelle/misc/of_table.cocci |   62 +++++++++++++++++++++++++++++++++
>>  1 file changed, 62 insertions(+)
> Applied to kbuild.git#misc, thanks. BTW, what is so special about of
> device drivers? Shouldn't we check for missing sentinels in all kinds of
> device tables?
>

Yes the rule should probably be expanded to cover more tables. I guess
this is just more noticeable because a driver may match some device that
it isn't supposed to match and start writing random bits to registers it
shouldn't be, causing the system to hang.

-- 
Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum,
hosted by The Linux Foundation

--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Device Tree Compilter]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux PCI Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]
  Powered by Linux