Davide Caratti
484afd1bd3
net/sched: act_police: add missing spinlock initialization
...
commit f2cbd48528 ("net/sched: act_police: fix race condition on state
variables") introduces a new spinlock, but forgets its initialization.
Ensure that tcf_police_init() initializes 'tcfp_lock' every time a 'police'
action is newly created, to avoid the following lockdep splat:
INFO: trying to register non-static key.
the code is fine but needs lockdep annotation.
turning off the locking correctness validator.
<...>
Call Trace:
dump_stack+0x85/0xcb
register_lock_class+0x581/0x590
__lock_acquire+0xd4/0x1330
? tcf_police_init+0x2fa/0x650 [act_police]
? lock_acquire+0x9e/0x1a0
lock_acquire+0x9e/0x1a0
? tcf_police_init+0x2fa/0x650 [act_police]
? tcf_police_init+0x55a/0x650 [act_police]
_raw_spin_lock_bh+0x34/0x40
? tcf_police_init+0x2fa/0x650 [act_police]
tcf_police_init+0x2fa/0x650 [act_police]
tcf_action_init_1+0x384/0x4c0
tcf_action_init+0xf6/0x160
tcf_action_add+0x73/0x170
tc_ctl_action+0x122/0x160
rtnetlink_rcv_msg+0x2a4/0x490
? netlink_deliver_tap+0x99/0x400
? validate_linkmsg+0x370/0x370
netlink_rcv_skb+0x4d/0x130
netlink_unicast+0x196/0x230
netlink_sendmsg+0x2e5/0x3e0
sock_sendmsg+0x36/0x40
___sys_sendmsg+0x280/0x2f0
? _raw_spin_unlock+0x24/0x30
? handle_pte_fault+0xafe/0xf30
? find_held_lock+0x2d/0x90
? syscall_trace_enter+0x1df/0x360
? __sys_sendmsg+0x5e/0xa0
__sys_sendmsg+0x5e/0xa0
do_syscall_64+0x60/0x210
entry_SYSCALL_64_after_hwframe+0x49/0xbe
RIP: 0033:0x7f1841c7cf10
Code: c3 48 8b 05 82 6f 2c 00 f7 db 64 89 18 48 83 cb ff eb dd 0f 1f 80 00 00 00 00 83 3d 8d d0 2c 00 00 75 10 b8 2e 00 00 00 0f 05 <48> 3d 01 f0 ff ff 73 31 c3 48 83 ec 08 e8 ae cc 00 00 48 89 04 24
RSP: 002b:00007ffcf9df4d68 EFLAGS: 00000246 ORIG_RAX: 000000000000002e
RAX: ffffffffffffffda RBX: 0000000000000001 RCX: 00007f1841c7cf10
RDX: 0000000000000000 RSI: 00007ffcf9df4dc0 RDI: 0000000000000003
RBP: 000000005bf56105 R08: 0000000000000002 R09: 00007ffcf9df8edc
R10: 00007ffcf9df47e0 R11: 0000000000000246 R12: 0000000000671be0
R13: 00007ffcf9df4e84 R14: 0000000000000008 R15: 0000000000000000
Fixes: f2cbd48528 ("net/sched: act_police: fix race condition on state variables")
Reported-by: Cong Wang <xiyou.wangcong@gmail.com>
Signed-off-by: Davide Caratti <dcaratti@redhat.com>
Acked-by: Cong Wang <xiyou.wangcong@gmail.com>
Acked-by: Jiri Pirko <jiri@mellanox.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2018-11-23 11:20:02 -08:00
arch
Merge branch 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
2018-11-18 10:54:59 -08:00
block
SCSI: fix queue cleanup race before queue initialization is done
2018-11-14 08:19:10 -07:00
certs
export.h: remove VMLINUX_SYMBOL() and VMLINUX_SYMBOL_STR()
2018-08-22 23:21:44 +09:00
crypto
crypto: user - Zeroize whole structure given to user space
2018-11-09 17:35:43 +08:00
Documentation
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
2018-11-19 09:24:04 -08:00
drivers
ibmvnic: Update driver queues after change in ring size support
2018-11-22 11:53:25 -08:00
firmware
kbuild: remove all dummy assignments to obj-
2017-11-18 11:46:06 +09:00
fs
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
2018-11-19 09:24:04 -08:00
include
packet: copy user buffers before orphan or clone
2018-11-23 11:08:03 -08:00
init
memblock: stop using implicit alignment to SMP_CACHE_BYTES
2018-10-31 08:54:16 -07:00
ipc
ipc: IPCMNI limit check for semmni
2018-10-31 08:54:14 -07:00
kernel
Merge branch 'akpm' (patches from Andrew)
2018-11-18 11:31:26 -08:00
lib
lib/ubsan.c: don't mark __ubsan_handle_builtin_unreachable as noreturn
2018-11-18 10:15:10 -08:00
LICENSES
This is a fairly typical cycle for documentation. There's some welcome
2018-10-24 18:01:11 +01:00
mm
mm/memblock.c: fix a typo in __next_mem_pfn_range() comments
2018-11-18 10:15:10 -08:00
net
net/sched: act_police: add missing spinlock initialization
2018-11-23 11:20:02 -08:00
samples
VFIO updates for v4.20
2018-10-31 11:01:38 -07:00
scripts
scripts/spdxcheck.py: make python3 compliant
2018-11-18 10:15:10 -08:00
security
selinux/stable-4.20 PR 20181115
2018-11-15 11:26:09 -06:00
sound
ALSA: hda - Fix incorrect clearance of thinkpad_acpi hooks
2018-11-06 16:33:53 +01:00
tools
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
2018-11-19 09:24:04 -08:00
usr
initramfs: move gen_initramfs_list.sh from scripts/ to usr/
2018-08-22 23:21:44 +09:00
virt
Revert "mm, mmu_notifier: annotate mmu notifiers with blockable invalidate callbacks"
2018-10-26 16:25:19 -07:00
.clang-format
page cache: Convert find_get_pages_contig to XArray
2018-10-21 10:46:34 -04:00
.cocciconfig
.get_maintainer.ignore
.gitattributes
.gitattributes: set git diff driver for C source code files
2016-10-07 18:46:30 -07:00
.gitignore
Kbuild updates for v4.17 (2nd)
2018-04-15 17:21:30 -07:00
.mailmap
mailmap: Update email for Punit Agrawal
2018-11-05 10:02:11 +00:00
COPYING
COPYING: use the new text with points to the license files
2018-03-23 12:41:45 -06:00
CREDITS
MAINTAINERS: update OMAP MMC entry
2018-11-18 10:15:09 -08:00
Kbuild
Kbuild updates for v4.15
2017-11-17 17:45:29 -08:00
Kconfig
kconfig: move the "Executable file formats" menu to fs/Kconfig.binfmt
2018-08-02 08:06:55 +09:00
MAINTAINERS
MAINTAINERS: add myself as co-maintainer for r8169
2018-11-20 14:22:45 -08:00
Makefile
Linux 4.20-rc3
2018-11-18 13:33:44 -08:00
README
Drop all 00-INDEX files from Documentation/
2018-09-09 15:08:58 -06:00