]> git.baikalelectronics.ru Git - kernel.git/commit
nfc: hci: pass callback data param as pointer in nci_request()
authorKrzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
Sat, 31 Jul 2021 10:21:44 +0000 (12:21 +0200)
committerDavid S. Miller <davem@davemloft.net>
Mon, 2 Aug 2021 14:11:37 +0000 (15:11 +0100)
commit8200342f256cc94f83014f7308f3a051ff358a82
tree19eecc18b39e632713611dc933a298593ce8f27a
parent5d1b006de243313d901767b6197d706756a43498
nfc: hci: pass callback data param as pointer in nci_request()

The nci_request() receives a callback function and unsigned long data
argument "opt" which is passed to the callback.  Almost all of the
nci_request() callers pass pointer to a stack variable as data argument.
Only few pass scalar value (e.g. u8).

All such callbacks do not modify passed data argument and in previous
commit they were made as const.  However passing pointers via unsigned
long removes the const annotation.  The callback could simply cast
unsigned long to a pointer to writeable memory.

Use "const void *" as type of this "opt" argument to solve this and
prevent modifying the pointed contents.  This is also consistent with
generic pattern of passing data arguments - via "void *".  In few places
which pass scalar values, use casts via "unsigned long" to suppress any
warnings.

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
include/net/nfc/nci_core.h
net/nfc/nci/core.c
net/nfc/nci/hci.c