2014-06-23 08:23:28

by Jet Chen

[permalink] [raw]
Subject: [clockevents] WARNING: CPU: 0 PID: 0 at kernel/time/tick-oneshot.c:32 tick_stop_event()

Hi Viresh,

0day kernel testing robot got the below dmesg and the first bad commit is

git://git.linaro.org/people/vireshk/linux tick/ONESHOT-STOPPED
commit d5a085970b0b88b8c82303d2c45f09c9427fd02a
Author: Viresh Kumar <[email protected]>
AuthorDate: Tue Jun 10 13:52:25 2014 +0530
Commit: Viresh Kumar <[email protected]>
CommitDate: Thu Jun 19 10:35:12 2014 +0530

clockevents: x86: add support for ONESHOT_STOPPED mode
Clockevent devices can be stopped from core (hrtimers/tick) when they aren't
used anymore. This will mostly happen on a idle or tickless cpu. This is done to
avoid getting spurious interrupts when core doesn't want to handle them anymore.
For stopping clockevent devices, core requests drivers to switch to a special
optional mode: CLOCK_EVT_MODE_ONESHOT_STOPPED. At this time platforms can also
save some power by disabling these devices.
This patch adds support for handling CLOCK_EVT_MODE_ONESHOT_STOPPED mode for x86
drivers.
Signed-off-by: Viresh Kumar <[email protected]>

+-----------------------------------------------------------------+------------+------------+
| | f4f5df6f14 | d5a085970b |
+-----------------------------------------------------------------+------------+------------+
| boot_successes | 120 | 9 |
| boot_failures | 0 | 31 |
| WARNING:CPU:PID:at_kernel/time/tick-oneshot.c:tick_stop_event() | 0 | 31 |
| backtrace:cpu_startup_entry | 0 | 19 |
+-----------------------------------------------------------------+------------+------------+

[ 0.247455] WARNING: CPU: 0 PID: 0 at kernel/time/tick-oneshot.c:32 tick_stop_event+0x43/0x50()
[ 0.247455] CPU: 0 PID: 0 Comm: swapper/0 Not tainted 3.16.0-rc1-00016-gd5a0859 #1
[ 0.247455] 0000000000000009 ffff880012203eb0 ffffffff81658a72 0000000000000000
[ 0.247455] ffff880012203ee8 ffffffff8108c128 ffff88001220ca80 7fffffffffffffff
[ 0.247455] 000000000e82ddd2 7fffffffffffffff ffff8800123cd560 ffff880012203ef8
[ 0.247455] Call Trace:
[ 0.247455] <IRQ> [<ffffffff81658a72>] dump_stack+0x4d/0x66
[ 0.247455] [<ffffffff8108c128>] warn_slowpath_common+0x78/0xa0
[ 0.247455] [<ffffffff8108c23a>] warn_slowpath_null+0x1a/0x20
[ 0.247455] [<ffffffff81101983>] tick_stop_event+0x43/0x50
[ 0.247455] [<ffffffff81102275>] __tick_nohz_idle_enter+0x515/0x580
[ 0.247455] [<ffffffff81102649>] ? tick_nohz_irq_exit+0x29/0x30
[ 0.247455] [<ffffffff81102649>] tick_nohz_irq_exit+0x29/0x30
[ 0.247455] [<ffffffff810913c5>] irq_exit+0xb5/0xd0
[ 0.247455] [<ffffffff81028095>] smp_call_function_single_interrupt+0x35/0x40
[ 0.247455] [<ffffffff81662892>] call_function_single_interrupt+0x72/0x80
[ 0.247455] <EOI> [<ffffffff81032b96>] ? native_safe_halt+0x6/0x10
[ 0.247455] [<ffffffff8100c964>] default_idle+0x24/0xe0
[ 0.247455] [<ffffffff8100d3cf>] arch_cpu_idle+0xf/0x20
[ 0.247455] [<ffffffff810d4f16>] cpu_startup_entry+0x386/0x4f0
[ 0.247455] [<ffffffff81652da6>] rest_init+0xc6/0xd0
[ 0.247455] [<ffffffff81652ce5>] ? rest_init+0x5/0xd0
[ 0.247455] [<ffffffff81f23f96>] start_kernel+0x41e/0x429
[ 0.247455] [<ffffffff81f23981>] ? set_init_arg+0x53/0x53
[ 0.247455] [<ffffffff81f23120>] ? early_idt_handlers+0x120/0x120
[ 0.247455] [<ffffffff81f23549>] x86_64_start_reservations+0x2a/0x2c
[ 0.247455] [<ffffffff81f23679>] x86_64_start_kernel+0x12e/0x13d


git bisect start 1ded43568e7bee60c6548e5fb3b4bd6d1d0783b1 a497c3ba1d97fc69c1e78e7b96435ba8c2cb42ee --
git bisect good 5f069b44108f255ab9a881ff366c793bc1cda5e9 # 14:27 21+ 0 Merge 'ipvs-next/master' into devel-hourly-2014062313
git bisect good 70eab242a357abfe990c30656a396f1b0a0ba465 # 14:33 21+ 0 Merge 'cifs/for-next' into devel-hourly-2014062313
git bisect good 64550da9a486e3766b85928f442756f29c39437a # 14:40 21+ 0 Merge 'rcu/rcu_cond_resched.2014.06.20c' into devel-hourly-2014062313
git bisect bad bf774a68a67dd0c0f938258f56346763d619bdbf # 14:44 0- 6 Merge 'vireshk/tick/lowres-go-tickless' into devel-hourly-2014062313
git bisect bad b1efa076fdd9532ba3fdf0bddb475ed968f33c13 # 14:50 2- 1 Merge 'vireshk/tick/ONESHOT-STOPPED' into devel-hourly-2014062313
git bisect good f935474b892829a400f31ec076385b792034a32e # 15:02 40+ 0 clockevents: Introduce CLOCK_EVT_MODE_ONESHOT_STOPPED mode
git bisect good f4f5df6f142f6797c9aae44d8b570843544dcca9 # 15:12 40+ 0 clockevents: mips: add support for ONESHOT_STOPPED mode
git bisect bad 2d74fb379fa8c9d388fcce15e84772713ac7331d # 15:16 5- 8 clockevents: misc: add support for ONESHOT_STOPPED mode
git bisect bad 6e9ed902730ca7f5cde9fcf47c6b1ca2a143babf # 15:33 1- 14 clockevents: drivers: add support for ONESHOT_STOPPED mode
git bisect bad d5a085970b0b88b8c82303d2c45f09c9427fd02a # 15:43 1- 2 clockevents: x86: add support for ONESHOT_STOPPED mode
# first bad commit: [d5a085970b0b88b8c82303d2c45f09c9427fd02a] clockevents: x86: add support for ONESHOT_STOPPED mode
git bisect good f4f5df6f142f6797c9aae44d8b570843544dcca9 # 15:46 120+ 0 clockevents: mips: add support for ONESHOT_STOPPED mode
git bisect bad 1ded43568e7bee60c6548e5fb3b4bd6d1d0783b1 # 15:46 0- 11 0day head guard for 'devel-hourly-2014062313'
git bisect good a497c3ba1d97fc69c1e78e7b96435ba8c2cb42ee # 15:49 120+ 0 Linux 3.16-rc2
git bisect good 58ae500a03a6bf68eee323c342431bfdd3f460b6 # 15:56 120+ 0 Add linux-next specific files for 20140623


This script may reproduce the error.

-----------------------------------------------------------------------------
#!/bin/bash

kernel=$1
initrd=yocto-minimal-i386.cgz

wget --no-clobber https://github.com/fengguang/reproduce-kernel-bug/blob/master/initrd/$initrd

kvm=(
qemu-system-x86_64 -cpu kvm64 -enable-kvm
-kernel $kernel
-initrd $initrd
-smp 2
-m 256M
-net nic,vlan=0,macaddr=00:00:00:00:00:00,model=virtio
-net user,vlan=0
-net nic,vlan=1,model=e1000
-net user,vlan=1
-boot order=nc
-no-reboot
-watchdog i6300esb
-serial stdio
-display none
-monitor null
)

append=(
debug
sched_debug
apic=debug
ignore_loglevel
sysrq_always_enabled
panic=10
prompt_ramdisk=0
earlyprintk=ttyS0,115200
console=ttyS0,115200
console=tty0
vga=normal
root=/dev/ram0
rw
)

"${kvm[@]}" --append "${append[*]}"
-----------------------------------------------------------------------------

Thanks,
Jet


Attachments:
i386-randconfig-c1-06231331-1ded43568e7bee60c6548e5fb3b4bd6d1d0783b1-WARNING:---at----tick_stop_event+-x-86334.log (25.23 kB)
config-3.16.0-rc1-00016-gd5a0859 (99.88 kB)
Attached Message Part (86.00 B)
dmesg-quantal-ivb42-99:20140623144723:x86_64-randconfig-hsxa1-06231401:3.16.0-rc1-00016-gd5a0859:1 (57.09 kB)
Download all attachments

2014-06-23 08:32:27

by Viresh Kumar

[permalink] [raw]
Subject: Re: [clockevents] WARNING: CPU: 0 PID: 0 at kernel/time/tick-oneshot.c:32 tick_stop_event()

On 23 June 2014 13:50, Jet Chen <[email protected]> wrote:
> Hi Viresh,
>
> 0day kernel testing robot got the below dmesg and the first bad commit is
>
> git://git.linaro.org/people/vireshk/linux tick/ONESHOT-STOPPED

Hi Jet/Fengguang,

Why did your scripts Cc'd LKML for this report? It never used to
happen for my trees Atleast.

These patches haven't been posted to LKML yet and sending
reports there for these wouldn't be good for their fate :)

Anyway, will look at what broke. Thanks.

--
viresh

2014-06-23 09:39:30

by Fengguang Wu

[permalink] [raw]
Subject: Re: [clockevents] WARNING: CPU: 0 PID: 0 at kernel/time/tick-oneshot.c:32 tick_stop_event()

Hi Viresh,

On Mon, Jun 23, 2014 at 02:02:25PM +0530, Viresh Kumar wrote:
> On 23 June 2014 13:50, Jet Chen <[email protected]> wrote:
> > Hi Viresh,
> >
> > 0day kernel testing robot got the below dmesg and the first bad commit is
> >
> > git://git.linaro.org/people/vireshk/linux tick/ONESHOT-STOPPED
>
> Hi Jet/Fengguang,
>
> Why did your scripts Cc'd LKML for this report? It never used to
> happen for my trees Atleast.

Yeah our build error reports are mostly private emails. However we do
CC LKML for runtime regressions - because there is no easy way for us
to tell whether the reported regression has reached more people.

> These patches haven't been posted to LKML yet and sending
> reports there for these wouldn't be good for their fate :)

Sorry if it hurts. :)

> Anyway, will look at what broke. Thanks.

Thank you!

Cheers,
Fengguang