linux-bl808/drivers/net
Elena Reshetova a4b51a9f83 drivers, net, mlx5: convert mlx5_cq.refcount from atomic_t to refcount_t
atomic_t variables are currently used to implement reference
counters with the following properties:
 - counter is initialized to 1 using atomic_set()
 - a resource is freed upon counter reaching zero
 - once counter reaches zero, its further
   increments aren't allowed
 - counter schema uses basic atomic operations
   (set, inc, inc_not_zero, dec_and_test, etc.)

Such atomic variables should be converted to a newly provided
refcount_t type and API that prevents accidental counter overflows
and underflows. This is important since overflows and underflows
can lead to use-after-free situation and be exploitable.

The variable mlx5_cq.refcount is used as pure reference counter.
Convert it to refcount_t and fix up the operations.

Suggested-by: Kees Cook <keescook@chromium.org>
Reviewed-by: David Windsor <dwindsor@gmail.com>
Reviewed-by: Hans Liljestrand <ishkamiel@gmail.com>
Signed-off-by: Elena Reshetova <elena.reshetova@intel.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2017-10-22 02:22:38 +01:00
..
appletalk
arcnet
bonding
caif
can
cris
dsa
ethernet drivers, net, mlx5: convert mlx5_cq.refcount from atomic_t to refcount_t 2017-10-22 02:22:38 +01:00
fddi
fjes
hamradio
hippi
hyperv
ieee802154 Merge branch 'for-upstream' of git://git.kernel.org/pub/scm/linux/kernel/git/bluetooth/bluetooth-next 2017-10-21 02:22:19 +01:00
ipvlan net: Add extack to validator_info structs used for address notifier 2017-10-20 13:15:07 +01:00
phy
plip
ppp
slip
team
usb
vmxnet3
wan
wimax
wireless
xen-netback
dummy.c
eql.c
geneve.c
gtp.c
ifb.c
Kconfig
LICENSE.SRC
loopback.c
macsec.c
macvlan.c
macvtap.c
Makefile
mdio.c
mii.c
netconsole.c
nlmon.c
ntb_netdev.c
rionet.c
sb1000.c
Space.c
sungem_phy.c
tap.c
thunderbolt.c
tun.c net-tun: fix panics at dismantle time 2017-10-20 13:31:26 +01:00
veth.c
virtio_net.
virtio_net.c
vrf.c
vsockmon.c
vxlan.c
xen-netfront.c