diff options
author | Stefani Seibold <stefani@seibold.net> | 2013-11-14 22:32:17 (GMT) |
---|---|---|
committer | Scott Wood <scottwood@freescale.com> | 2014-04-08 21:17:16 (GMT) |
commit | 948a4eec975b0f231c6a55eaaff3e3bdcf4cdf70 (patch) | |
tree | 3281c67a3893e8fad049f255ab156bd30046cac6 /samples/kfifo/inttype-example.c | |
parent | d0b794f24c934bb076ffd28df316798f1707cf13 (diff) | |
download | linux-fsl-qoriq-948a4eec975b0f231c6a55eaaff3e3bdcf4cdf70.tar.xz |
kfifo API type safety
This patch enhances the type safety for the kfifo API. It is now safe
to put const data into a non const FIFO and the API will now generate a
compiler warning when reading from the fifo where the destination
address is pointing to a const variable.
As a side effect the kfifo_put() does now expect the value of an element
instead a pointer to the element. This was suggested Russell King. It
make the handling of the kfifo_put easier since there is no need to
create a helper variable for getting the address of a pointer or to pass
integers of different sizes.
IMHO the API break is okay, since there are currently only six users of
kfifo_put().
The code is also cleaner by kicking out the "if (0)" expressions.
[akpm@linux-foundation.org: coding-style fixes]
Signed-off-by: Stefani Seibold <stefani@seibold.net>
Cc: Russell King <rmk@arm.linux.org.uk>
Cc: Hauke Mehrtens <hauke@hauke-m.de>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
(cherry picked from commit 498d319bb512992ef0784c278fa03679f2f5649d)
Signed-off-by: Scott Wood <scottwood@freescale.com>
Conflicts:
drivers/net/wireless/rt2x00/rt2800mmio.c
Diffstat (limited to 'samples/kfifo/inttype-example.c')
-rw-r--r-- | samples/kfifo/inttype-example.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/samples/kfifo/inttype-example.c b/samples/kfifo/inttype-example.c index 6f8e79e..8dc3c2e 100644 --- a/samples/kfifo/inttype-example.c +++ b/samples/kfifo/inttype-example.c @@ -61,7 +61,7 @@ static int __init testfunc(void) /* put values into the fifo */ for (i = 0; i != 10; i++) - kfifo_put(&test, &i); + kfifo_put(&test, i); /* show the number of used elements */ printk(KERN_INFO "fifo len: %u\n", kfifo_len(&test)); @@ -78,7 +78,7 @@ static int __init testfunc(void) kfifo_skip(&test); /* put values into the fifo until is full */ - for (i = 20; kfifo_put(&test, &i); i++) + for (i = 20; kfifo_put(&test, i); i++) ; printk(KERN_INFO "queue len: %u\n", kfifo_len(&test)); |