Wind River Support Network

HomeDefectsLIN7-2967
Fixed

LIN7-2967 : There is call trace "filescontrol.c:87 suspicious rcu_dereference_check() usage!" when run lxc test with kernel option CONFIG_PROVE_RCU enabled

Created: Feb 16, 2015    Updated: Sep 8, 2018
Resolved Date: Mar 20, 2015
Found In Version: 7.0
Fix Version: 7.0.0.4
Severity: Severe
Applicable for: Wind River Linux 7
Component/s: Kernel

Description

There is call trace "filescontrol.c:87 suspicious rcu_dereference_check() usage!" when run lxc test with  kernel option CONFIG_PROVE_RCU enabled as follows:

===============================
[ INFO: suspicious RCU usage. ]
3.14.23-WR7.0.0.0_standard #1 Not tainted
-------------------------------
/intel-x86-64/bitbake_build/tmp/work/intel_x86_64-wrs-linux/linux-windriver/3.14-r0/linux/fs/filescontrol.c:87 suspicious rcu_dereference_check() usage!

other info that might help us debug this:


rcu_scheduler_active = 1, debug_locks = 0
4 locks held by lxc-start/1307:
 #0:  (sb_writers#7){.+.+.+}, at: [<ffffffff811c65fb>] vfs_write+0x19b/0x1b0
 #1:  (cgroup_mutex){+.+.+.}, at: [<ffffffff810ea37b>] cgroup_lock_live_group+0x1b/0x40
 #2:  (&sig->group_rwsem){++++++}, at: [<ffffffff810ee512>] attach_task_by_pid+0xd2/0x450
 #3:  (&(&p->alloc_lock)->rlock){+.+...}, at: [<ffffffff8122e689>] files_cgroup_can_attach+0x49/0x100

stack backtrace:
CPU: 14 PID: 1307 Comm: lxc-start Not tainted 3.14.23-WR7.0.0.0_standard #1
Hardware name: Intel Corporation S2600CP/S2600CP, BIOS RMLSDP.86I.R4.26.D674.1304190022 04/19/2013
 0000000000000001 ffff88100790fd18 ffffffff81ac4710 ffff88100974a170
 ffff88100790fd48 ffffffff810a8a17 ffff880804e2e5d0 ffff880804e2e5c0
 0000000000000000 ffff88100790fdf8 ffff88100790fd68 ffffffff8122e2bf
Call Trace:
 [<ffffffff81ac4710>] dump_stack+0x4e/0x7a
 [<ffffffff810a8a17>] lockdep_rcu_suspicious+0xe7/0x120
 [<ffffffff8122e2bf>] files_cgroup_count_fds+0x9f/0xd0
 [<ffffffff8122e695>] files_cgroup_can_attach+0x55/0x100
 [<ffffffff810eddc3>] cgroup_attach_task+0x283/0x820
 [<ffffffff810edc00>] ? cgroup_attach_task+0xc0/0x820
 [<ffffffff810ee748>] attach_task_by_pid+0x308/0x450
 [<ffffffff810ee547>] ? attach_task_by_pid+0x107/0x450
 [<ffffffff810ee8a6>] cgroup_tasks_write+0x16/0x20
 [<ffffffff810eaf78>] cgroup_file_write+0x128/0x1c0
 [<ffffffff811c6516>] vfs_write+0xb6/0x1b0
 [<ffffffff811c6e6d>] SyS_write+0x4d/0xc0
 [<ffffffff81ad93d6>] system_call_fastpath+0x1a/0x1f

Steps to Reproduce

1. clone wrlinux-testing layer

git clone git://ala-git/projects/wassp-repos/testcases/wrlinux wrlinux-testing -b WRLINUX_7_0_HEAD

2. configure and build project

configure --enable-board=intel-x86-64 --enable-kernel=standard --enable-rootfs=glibc_std --enable-test --enable-jobs=8 --enable-parallel-pkgbuilds=8 --with-layer=<path to wrlinux-testing>/wr-testing/ltp,<path to wrlinux-testing>/wr-testing/kts --with-template=feature/kts-standard 

3. boot taget canoe_pass (barcode 20996) and run lxc test case

root@Remley-EP-Ivy-Refresh-4:/opt/wr-test# ./main_test.sh -s lxc

Other Downloads


Live chat
Online