Commit 21b2f443 authored by Stefani Seibold's avatar Stefani Seibold Committed by Linus Torvalds

kfifo: fix sparse complaints

This patch fix complaints by the sparse tool when using kfifo_put() with
non scalar types like structures (i.e.
drivers/iio/industrialio-event.c).

Casting a pointer to the value and read this pointer instead of directly
casting the value will fix this.

The generated code is equal.
Signed-off-by: default avatarStefani Seibold <stefani@seibold.net>
Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
parent ad4db3b2
...@@ -401,7 +401,7 @@ __kfifo_int_must_check_helper( \ ...@@ -401,7 +401,7 @@ __kfifo_int_must_check_helper( \
((typeof(__tmp->type))__kfifo->data) : \ ((typeof(__tmp->type))__kfifo->data) : \
(__tmp->buf) \ (__tmp->buf) \
)[__kfifo->in & __tmp->kfifo.mask] = \ )[__kfifo->in & __tmp->kfifo.mask] = \
(typeof(*__tmp->type))__val; \ *(typeof(__tmp->type))&__val; \
smp_wmb(); \ smp_wmb(); \
__kfifo->in++; \ __kfifo->in++; \
} \ } \
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment