lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Date:   Thu, 8 Jul 2021 11:50:30 +1000
From:   Alexey Kardashevskiy <aik@...abs.ru>
To:     Valentin Schneider <valentin.schneider@....com>,
        Guenter Roeck <linux@...ck-us.net>,
        Frederic Weisbecker <frederic@...nel.org>
Cc:     linux-kernel@...r.kernel.org, linux-tip-commits@...r.kernel.org,
        Ingo Molnar <mingo@...nel.org>,
        Peter Zijlstra <peterz@...radead.org>, x86@...nel.org
Subject: Re: [tip: sched/core] sched/core: Initialize the idle task with
 preemption disabled



On 08/07/2021 03:31, Valentin Schneider wrote:
> On 07/07/21 09:35, Guenter Roeck wrote:
>> I think I have it. pseries_defconfig, and pseries emulation,
>> started with "-smp 2" and qemu-system-ppc64:
>>
>> [    0.731644][    T1] smp: Bringing up secondary CPUs ...^M
>> [    0.750546][    T0] BUG: scheduling while atomic: swapper/1/0/0x00000000^M
>> [    0.752119][    T0] no locks held by swapper/1/0.^M
>> [    0.752309][    T0] Modules linked in:^M
>> [    0.752684][    T0] CPU: 1 PID: 0 Comm: swapper/1 Not tainted 5.13.0-11855-g77d34a4683b0 #1^M
>> [    0.753197][    T0] Call Trace:^M
>> [    0.753334][    T0] [c000000008737b20] [c0000000009f9b18] .dump_stack_lvl+0xa4/0x100 (unreliable)^M
>> [    0.754224][    T0] [c000000008737bb0] [c000000000190ed0] .__schedule_bug+0xa0/0xe0^M
>> [    0.754459][    T0] [c000000008737c30] [c000000001182518] .__schedule+0xc08/0xd90^M
>> [    0.754738][    T0] [c000000008737d20] [c000000001182b8c] .schedule_idle+0x2c/0x60^M
>> [    0.754945][    T0] [c000000008737d90] [c0000000001a48ec] .do_idle+0x29c/0x3c0^M
>> [    0.755145][    T0] [c000000008737e60] [c0000000001a4df0] .cpu_startup_entry+0x30/0x40^M
>> [    0.755403][    T0] [c000000008737ee0] [c00000000005ef10] .start_secondary+0x2c0/0x300^M
>> [    0.755621][    T0] [c000000008737f90] [c00000000000d254] start_secondary_prolog+0x10/0x14^M
>> [    0.764164][    T1] smp: Brought up 1 node, 2 CPUs^M
>>
>> Guenter
> 
> Hmph, I was about to say I couldn't get that, but after cycling between
> different PREEMPT options I finally triggered it, so thanks for that!
> 
> Same sha1 as yours, invocation is:
> 
>    qemu-system-ppc64 vmlinux -smp 2 -nographic -m 1024 -machine pseries,usb=off
> 
> with pseries_defconfig + CONFIG_DEBUG_ATOMIC_SLEEP + CONFIG_PREEMPT_VOLUNTARY
> 
> Now to dig!

CONFIG_PREEMPT_NOTIFIERS=y
CONFIG_PREEMPT_NONE=y
# CONFIG_PREEMPT_VOLUNTARY is not set
# CONFIG_PREEMPT is not set
CONFIG_PREEMPT_COUNT=y

CONFIG_DEBUG_ATOMIC_SLEEP=y

is what I have, and qemu cmdline is

qemu-system-ppc64 \
-nodefaults \
-chardev stdio,id=STDIO0,signal=off,mux=on \
-device spapr-vty,id=svty0,reg=0x71000110,chardev=STDIO0 \
-mon id=MON0,chardev=STDIO0,mode=readline \
-nographic \
-vga none \
-enable-kvm \
-m 512M \
-smp 2 \
-kernel ./vmldbg \
-machine pseries


(unrelated) I wonder how/why PREEMPT_NOTIFIERS work when PREEMPT_NONE=y 
:-/ I have a crash in a KVM preempt notifier with such config.



-- 
Alexey

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ