[Outreachy kernel] [PATCH] drm/tinydrm: Replace list_for_each with list_for_each_entry
Noralf Trønnes
noralf at tronnes.org
Sat Oct 21 14:52:18 UTC 2017
Den 16.10.2017 21.19, skrev Sean Paul:
> On Sun, Oct 15, 2017 at 01:58:23AM +0530, Harsha Sharma wrote:
>> Replace use of list_for_each with list_for_each_entry to simplify the
>> code and remove variables that are used only in list_for_each.
>> Done with following coccinelle patch:
>>
>> @r@
>> identifier fn,i,f,p;
>> expression e;
>> iterator name list_for_each, list_for_each_entry;
>> type T;
>> @@
>>
>> fn(...) {
>> ++ T *i;
>> <+...
>> - list_for_each(p,e)
>> + list_for_each_entry(i,e,f)
>> {
>> ...
>> - T *i = list_entry(p,T,f);
>> ...
>> }
>> ...+>
>> }
>>
>> @@
>> identifier r.fn,r.p;
>> @@
>>
>> fn(...) {
>> ...
>> - struct list_head *p;
>> ... when != p
>> }
>>
>> @@
>> identifier r.fn,r.i,r.f;
>> expression r.e;
>> statement S;
>> @@
>>
>> fn(...) {
>> <...
>> list_for_each_entry(i,e,f)
>> - {
>> S
>> - }
>> ...>
>> }
>>
>> @s@
>> identifier i,f,p;
>> expression e;
>> type T;
>> @@
>>
>> - list_for_each(p,e)
>> + list_for_each_entry(i,e,f)
>> {
>> ... when != T *i;
>> - i = list_entry(p,T,f);
>> ...
>> }
>>
>> @@
>> identifier s.p;
>> @@
>>
>> - struct list_head *p;
>> ... when != p
>>
>> @@
>> identifier s.i,s.f;
>> expression s.e;
>> statement S;
>> @@
>>
>> list_for_each_entry(i,e,f)
>> - {
>> S
>> - }
>>
>> Signed-off-by: Harsha Sharma <harshasharmaiitr at gmail.com>
> Reviewed-by: Sean Paul <seanpaul at chromium.org>
Thanks, applied to drm-misc.
Noralf.
>> ---
>> drivers/gpu/drm/tinydrm/core/tinydrm-helpers.c | 4 +---
>> 1 file changed, 1 insertion(+), 3 deletions(-)
>>
>> diff --git a/drivers/gpu/drm/tinydrm/core/tinydrm-helpers.c b/drivers/gpu/drm/tinydrm/core/tinydrm-helpers.c
>> index bd6cce093a85..bf96072d1b97 100644
>> --- a/drivers/gpu/drm/tinydrm/core/tinydrm-helpers.c
>> +++ b/drivers/gpu/drm/tinydrm/core/tinydrm-helpers.c
>> @@ -414,11 +414,9 @@ tinydrm_dbg_spi_print(struct spi_device *spi, struct spi_transfer *tr,
>> void _tinydrm_dbg_spi_message(struct spi_device *spi, struct spi_message *m)
>> {
>> struct spi_transfer *tmp;
>> - struct list_head *pos;
>> int i = 0;
>>
>> - list_for_each(pos, &m->transfers) {
>> - tmp = list_entry(pos, struct spi_transfer, transfer_list);
>> + list_for_each_entry(tmp, &m->transfers, transfer_list) {
>>
>> if (tmp->tx_buf)
>> tinydrm_dbg_spi_print(spi, tmp, tmp->tx_buf, i, true);
>> --
>> 2.11.0
>>
>> --
>> You received this message because you are subscribed to the Google Groups "outreachy-kernel" group.
>> To unsubscribe from this group and stop receiving emails from it, send an email to outreachy-kernel+unsubscribe at googlegroups.com.
>> To post to this group, send email to outreachy-kernel at googlegroups.com.
>> To view this discussion on the web visit https://groups.google.com/d/msgid/outreachy-kernel/20171014202823.29230-1-harshasharmaiitr%40gmail.com.
>> For more options, visit https://groups.google.com/d/optout.
More information about the dri-devel
mailing list