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>] [day] [month] [year] [list]
Date:   Sun, 26 Nov 2017 10:43:22 +0800
From:   Fengguang Wu <fengguang.wu@...el.com>
To:     Johannes Weiner <hannes@...xchg.org>
Cc:     Stephen Rothwell <sfr@...b.auug.org.au>,
        Vladimir Davydov <vdavydov.dev@...il.com>,
        Michal Hocko <mhocko@...e.com>,
        Andrew Morton <akpm@...ux-foundation.org>,
        LKML <linux-kernel@...r.kernel.org>, lkp@...org
Subject: a2f4b18a21 ("mm: memcontrol: fix excessive complexity in memory.stat
 reporting"): BUG:using__this_cpu_xchg()in_preemptible[#]code:swapper


FYI, we noticed the following commit (built with gcc-5):

commit: a2f4b18a2128667eb754d8290bd615a6459cee8e ("mm: memcontrol: fix excessive complexity in memory.stat reporting")
https://git.kernel.org/cgit/linux/kernel/git/next/linux-next.git master

in testcase: boot

on test machine: qemu-system-x86_64 -enable-kvm -smp 2 -m 512M

caused below changes (please refer to attached dmesg/kmsg for entire log/backtrace):


+---------------------------------------------------------+------------+------------+
|                                                         | 1e10a35f7d | a2f4b18a21 |
+---------------------------------------------------------+------------+------------+
| boot_successes                                          | 10         | 4          |
| boot_failures                                           | 0          | 8          |
| BUG:using__this_cpu_xchg()in_preemptible[#]code:swapper | 0          | 8          |
+---------------------------------------------------------+------------+------------+


[   10.255027] BUG: using __this_cpu_xchg() in preemptible [00000000] code: swapper/0/1
[   10.257758] caller is memcg_hotplug_cpu_dead+0x56/0x12e
[   10.259433] CPU: 1 PID: 1 Comm: swapper/0 Not tainted 4.14.0-13048-ga2f4b18a #1
[   10.262043] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.10.2-1 04/01/2014
[   10.264855] Call Trace:
[   10.265953]  dump_stack+0x81/0xa9
[   10.267252]  check_preemption_disabled+0xd4/0xe4
[   10.268805]  memcg_hotplug_cpu_dead+0x56/0x12e
[   10.270317]  _cpu_down+0xde/0x167
[   10.271626]  cpu_down+0x25/0x34
[   10.272892]  _debug_hotplug_cpu+0x45/0xe1
[   10.274316]  ? topology_init+0x29/0x29
[   10.275700]  debug_hotplug_cpu+0x9/0xc
[   10.277088]  do_one_initcall+0x90/0x15f
[   10.278498]  kernel_init_freeable+0x1ca/0x262
[   10.280005]  ? rest_init+0x12e/0x12e
[   10.281349]  kernel_init+0x5/0xe6
[   10.282643]  ret_from_fork+0x1f/0x30
[   10.284029] BUG: using __this_cpu_xchg() in preemptible [00000000] code: swapper/0/1
[   10.286733] caller is memcg_hotplug_cpu_dead+0xf6/0x12e
[   10.288423] CPU: 1 PID: 1 Comm: swapper/0 Not tainted 4.14.0-13048-ga2f4b18a #1
[   10.291044] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.10.2-1 04/01/2014
[   10.293852] Call Trace:
[   10.294991]  dump_stack+0x81/0xa9
[   10.296286]  check_preemption_disabled+0xd4/0xe4
[   10.297838]  memcg_hotplug_cpu_dead+0xf6/0x12e
[   10.299354]  _cpu_down+0xde/0x167
[   10.300660]  cpu_down+0x25/0x34
[   10.301924]  _debug_hotplug_cpu+0x45/0xe1
[   10.303358]  ? topology_init+0x29/0x29
[   10.304744]  debug_hotplug_cpu+0x9/0xc
[   10.306130]  do_one_initcall+0x90/0x15f
[   10.307533]  kernel_init_freeable+0x1ca/0x262
[   10.309038]  ? rest_init+0x12e/0x12e
[   10.310384]  kernel_init+0x5/0xe6
[   10.311686]  ret_from_fork+0x1f/0x30
[   10.313036] BUG: using __this_cpu_xchg() in preemptible [00000000] code: swapper/0/1
[   10.315749] caller is memcg_hotplug_cpu_dead+0x56/0x12e
[   10.317441] CPU: 1 PID: 1 Comm: swapper/0 Not tainted 4.14.0-13048-ga2f4b18a #1
[   10.320068] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.10.2-1 04/01/2014
[   10.322880] Call Trace:
[   10.324009]  dump_stack+0x81/0xa9
[   10.325308]  check_preemption_disabled+0xd4/0xe4
[   10.326857]  memcg_hotplug_cpu_dead+0x56/0x12e
[   10.328368]  _cpu_down+0xde/0x167
[   10.329670]  cpu_down+0x25/0x34
[   10.330932]  _debug_hotplug_cpu+0x45/0xe1
[   10.332364]  ? topology_init+0x29/0x29
[   10.333711]  debug_hotplug_cpu+0x9/0xc
[   10.335052]  do_one_initcall+0x90/0x15f
[   10.336397]  kernel_init_freeable+0x1ca/0x262
[   10.337872]  ? rest_init+0x12e/0x12e
[   10.339269]  kernel_init+0x5/0xe6
[   10.340596]  ret_from_fork+0x1f/0x30
[   10.341957] BUG: using __this_cpu_xchg() in preemptible [00000000] code: swapper/0/1
[   10.344505] caller is memcg_hotplug_cpu_dead+0xf6/0x12e
[   10.345476] CPU: 1 PID: 1 Comm: swapper/0 Not tainted 4.14.0-13048-ga2f4b18a #1
[   10.346947] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.10.2-1 04/01/2014
[   10.348550] Call Trace:
[   10.349171]  dump_stack+0x81/0xa9
[   10.349925]  check_preemption_disabled+0xd4/0xe4
[   10.350803]  memcg_hotplug_cpu_dead+0xf6/0x12e
[   10.351670]  _cpu_down+0xde/0x167
[   10.352383]  cpu_down+0x25/0x34
[   10.353104]  _debug_hotplug_cpu+0x45/0xe1
[   10.353923]  ? topology_init+0x29/0x29
[   10.354736]  debug_hotplug_cpu+0x9/0xc
[   10.355871]  do_one_initcall+0x90/0x15f
[   10.356656]  kernel_init_freeable+0x1ca/0x262
[   10.357486]  ? rest_init+0x12e/0x12e
[   10.358238]  kernel_init+0x5/0xe6
[   10.358958]  ret_from_fork+0x1f/0x30
[   10.359717] BUG: using __this_cpu_xchg() in preemptible [00000000] code: swapper/0/1
[   10.361228] caller is memcg_hotplug_cpu_dead+0x56/0x12e
[   10.362167] CPU: 1 PID: 1 Comm: swapper/0 Not tainted 4.14.0-13048-ga2f4b18a #1
[   10.363618] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.10.2-1 04/01/2014
[   10.365176] Call Trace:
[   10.365795]  dump_stack+0x81/0xa9
[   10.366509]  check_preemption_disabled+0xd4/0xe4
[   10.367373]  memcg_hotplug_cpu_dead+0x56/0x12e
[   10.368222]  _cpu_down+0xde/0x167
[   10.368939]  cpu_down+0x25/0x34
[   10.369637]  _debug_hotplug_cpu+0x45/0xe1
[   10.370432]  ? topology_init+0x29/0x29
[   10.371200]  debug_hotplug_cpu+0x9/0xc
[   10.371970]  do_one_initcall+0x90/0x15f
[   10.372747]  kernel_init_freeable+0x1ca/0x262
[   10.373586]  ? rest_init+0x12e/0x12e
[   10.374325]  kernel_init+0x5/0xe6
[   10.375044]  ret_from_fork+0x1f/0x30
[   10.375801] BUG: using __this_cpu_xchg() in preemptible [00000000] code: swapper/0/1
[   10.377307] caller is memcg_hotplug_cpu_dead+0xf6/0x12e
[   10.378245] CPU: 1 PID: 1 Comm: swapper/0 Not tainted 4.14.0-13048-ga2f4b18a #1
[   10.379700] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.10.2-1 04/01/2014
[   10.381254] Call Trace:
[   10.381882]  dump_stack+0x81/0xa9
[   10.382596]  check_preemption_disabled+0xd4/0xe4
[   10.383457]  memcg_hotplug_cpu_dead+0xf6/0x12e
[   10.384306]  _cpu_down+0xde/0x167
[   10.385025]  cpu_down+0x25/0x34
[   10.385727]  _debug_hotplug_cpu+0x45/0xe1
[   10.386512]  ? topology_init+0x29/0x29
[   10.387282]  debug_hotplug_cpu+0x9/0xc
[   10.388048]  do_one_initcall+0x90/0x15f
[   10.388834]  kernel_init_freeable+0x1ca/0x262
[   10.389672]  ? rest_init+0x12e/0x12e
[   10.390422]  kernel_init+0x5/0xe6
[   10.391143]  ret_from_fork+0x1f/0x30
[   10.391899] BUG: using __this_cpu_xchg() in preemptible [00000000] code: swapper/0/1
[   10.393399] caller is memcg_hotplug_cpu_dead+0x56/0x12e
[   10.394331] CPU: 1 PID: 1 Comm: swapper/0 Not tainted 4.14.0-13048-ga2f4b18a #1
[   10.395786] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.10.2-1 04/01/2014
[   10.397341] Call Trace:
[   10.397962]  dump_stack+0x81/0xa9
[   10.398683]  check_preemption_disabled+0xd4/0xe4
[   10.399556]  memcg_hotplug_cpu_dead+0x56/0x12e
[   10.400399]  _cpu_down+0xde/0x167
[   10.401116]  cpu_down+0x25/0x34
[   10.401811]  _debug_hotplug_cpu+0x45/0xe1
[   10.402603]  ? topology_init+0x29/0x29
[   10.403363]  debug_hotplug_cpu+0x9/0xc
[   10.404128]  do_one_initcall+0x90/0x15f
[   10.404917]  kernel_init_freeable+0x1ca/0x262
[   10.405749]  ? rest_init+0x12e/0x12e
[   10.406489]  kernel_init+0x5/0xe6
[   10.407206]  ret_from_fork+0x1f/0x30
[   10.407958] BUG: using __this_cpu_xchg() in preemptible [00000000] code: swapper/0/1
[   10.415758] caller is memcg_hotplug_cpu_dead+0xf6/0x12e
[   10.416702] CPU: 1 PID: 1 Comm: swapper/0 Not tainted 4.14.0-13048-ga2f4b18a #1
[   10.418142] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.10.2-1 04/01/2014
[   10.419702] Call Trace:
[   10.420323]  dump_stack+0x81/0xa9
[   10.421286]  check_preemption_disabled+0xd4/0xe4
[   10.422360]  memcg_hotplug_cpu_dead+0xf6/0x12e
[   10.423271]  _cpu_down+0xde/0x167
[   10.423993]  cpu_down+0x25/0x34
[   10.424690]  _debug_hotplug_cpu+0x45/0xe1
[   10.425477]  ? topology_init+0x29/0x29
[   10.426248]  debug_hotplug_cpu+0x9/0xc
[   10.427021]  do_one_initcall+0x90/0x15f
[   10.427802]  kernel_init_freeable+0x1ca/0x262
[   10.428635]  ? rest_init+0x12e/0x12e
[   10.429378]  kernel_init+0x5/0xe6
[   10.430091]  ret_from_fork+0x1f/0x30
[   10.430863] BUG: using __this_cpu_xchg() in preemptible [00000000] code: swapper/0/1
[   10.432378] caller is memcg_hotplug_cpu_dead+0x56/0x12e
[   10.433313] CPU: 1 PID: 1 Comm: swapper/0 Not tainted 4.14.0-13048-ga2f4b18a #1
[   10.434769] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.10.2-1 04/01/2014
[   10.436330] Call Trace:
[   10.436962]  dump_stack+0x81/0xa9
[   10.437681]  check_preemption_disabled+0xd4/0xe4
[   10.438538]  memcg_hotplug_cpu_dead+0x56/0x12e
[   10.439394]  _cpu_down+0xde/0x167
[   10.440112]  cpu_down+0x25/0x34
[   10.440818]  _debug_hotplug_cpu+0x45/0xe1
[   10.441616]  ? topology_init+0x29/0x29
[   10.442382]  debug_hotplug_cpu+0x9/0xc
[   10.443154]  do_one_initcall+0x90/0x15f
[   10.443922]  kernel_init_freeable+0x1ca/0x262
[   10.444754]  ? rest_init+0x12e/0x12e
[   10.445495]  kernel_init+0x5/0xe6
[   10.446214]  ret_from_fork+0x1f/0x30
[   10.446982] BUG: using __this_cpu_xchg() in preemptible [00000000] code: swapper/0/1
[   10.448489] caller is memcg_hotplug_cpu_dead+0xf6/0x12e
[   10.449421] CPU: 1 PID: 1 Comm: swapper/0 Not tainted 4.14.0-13048-ga2f4b18a #1
[   10.450861] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.10.2-1 04/01/2014
[   10.452422] Call Trace:
[   10.453045]  dump_stack+0x81/0xa9
[   10.453766]  check_preemption_disabled+0xd4/0xe4
[   10.454635]  memcg_hotplug_cpu_dead+0xf6/0x12e
[   10.455477]  _cpu_down+0xde/0x167
[   10.456201]  cpu_down+0x25/0x34
[   10.456898]  _debug_hotplug_cpu+0x45/0xe1
[   10.457689]  ? topology_init+0x29/0x29
[   10.458447]  debug_hotplug_cpu+0x9/0xc
[   10.459214]  do_one_initcall+0x90/0x15f
[   10.460006]  kernel_init_freeable+0x1ca/0x262
[   10.460842]  ? rest_init+0x12e/0x12e
[   10.461596]  kernel_init+0x5/0xe6
[   10.462317]  ret_from_fork+0x1f/0x30
[   10.463397] CPU 0 is now offline
[   10.464626] debug: unmapping init [mem 0xffffffff81f4c000-0xffffffff82049fff]
[   10.465852] Write protecting the kernel read-only data: 12288k
[   10.467086] debug: unmapping init [mem 0xffff8800016d7000-0xffff8800017fffff]
[   10.468316] debug: unmapping init [mem 0xffff880001ba1000-0xffff880001bfffff]
[   10.469520] rodata_test: all tests were successful
[   10.548101] init: Failed to create pty - disabling logging for job
[   10.549314] init: Temporary process spawn error: No such file or directory
[   10.559129] init: Failed to create pty - disabling logging for job
[   10.560338] init: Temporary process spawn error: No such file or directory
[   10.580230] init: Failed to create pty - disabling logging for job
[   10.581404] init: Temporary process spawn error: No such file or directory
[   10.585215] init: Failed to create pty - disabling logging for job
[   10.586394] init: Temporary process spawn error: No such file or directory
[   10.624934] init: Failed to create pty - disabling logging for job
[   10.626122] init: Temporary process spawn error: No such file or directory
[   10.632280] init: Failed to create pty - disabling logging for job
[   10.633459] init: Temporary process spawn error: No such file or directory
[   10.641631] init: Failed to create pty - disabling logging for job
[   10.642800] init: Temporary process spawn error: No such file or directory
[   10.649940] udevd[213]: starting version 175
[   10.655819] init: Failed to create pty - disabling logging for job
[   10.657066] init: Temporary process spawn error: No such file or directory
[   10.661351] init: Failed to create pty - disabling logging for job
[   10.662535] init: Temporary process spawn error: No such file or directory
[   10.667796] init: Failed to create pty - disabling logging for job
[   10.669013] init: Temporary process spawn error: No such file or directory
[   10.685656] init: Failed to create pty - disabling logging for job
[   10.686835] init: Temporary process spawn error: No such file or directory
[   10.693912] init: Failed to create pty - disabling logging for job
[   10.695086] init: Temporary process spawn error: No such file or directory
udevd[224]: failed to execute '/sbin/modprobe' '/sbin/modprobe -bv acpi:LNXSYSTM:': No such file or directory
udevd[225]: failed to execute '/sbin/modprobe' '/sbin/modprobe -bv input:b0019v0000p0001e0000-e0,1,k74,ramlsfw': No such file or directory
[   10.719379] power_supply test_ac: uevent
[   10.724028] power_supply test_ac: POWER_SUPPLY_NAME=test_ac
[   10.725052] power_supply test_ac: prop ONLINE=1
[   10.725999] power_supply test_battery: uevent
[   10.726868] power_supply test_battery: POWER_SUPPLY_NAME=test_battery
[   10.727960] power_supply test_battery: prop STATUS=Discharging
[   10.731995] power_supply test_battery: prop CHARGE_TYPE=Fast
[   10.733025] power_supply test_battery: prop HEALTH=Good
[   10.733993] power_supply test_battery: prop PRESENT=1
[   10.734919] power_supply test_battery: prop TECHNOLOGY=Li-ion
[   10.735927] power_supply test_battery: prop CHARGE_FULL_DESIGN=100
[   10.742731] power_supply test_battery: prop CHARGE_FULL=100
[   10.742733] power_supply test_battery: prop CHARGE_NOW=50
[   10.742736] power_supply test_battery: prop CAPACITY=50
[   10.742738] power_supply test_battery: prop CAPACITY_LEVEL=Normal
[   10.742740] power_supply test_battery: prop TIME_TO_EMPTY_AVG=3600
[   10.742741] power_supply test_battery: prop TIME_TO_FULL_NOW=3600
[   10.742743] power_supply test_battery: prop MODEL_NAME=Test battery
[   10.742745] power_supply test_battery: prop MANUFACTURER=Linux
[   10.742747] power_supply test_battery: prop SERIAL_NUMBER=4.14.0-13048-ga2f4b18a
[   10.742749] power_supply test_battery: prop TEMP=26
[   10.742751] power_supply test_battery: prop VOLTAGE_NOW=3300
[   10.742855] power_supply test_usb: uevent
[   10.742856] power_supply test_usb: POWER_SUPPLY_NAME=test_usb
[   10.742861] power_supply test_usb: prop ONLINE=1
[   10.824857] init: Failed to create pty - disabling logging for job
[   10.824937] init: Temporary process spawn error: No such file or directory
[   10.828373] init: Failed to create pty - disabling logging for job
[   10.828453] init: Temporary process spawn error: No such file or directory
[   10.834586] power_supply test_ac: uevent
[   10.834588] power_supply test_ac: POWER_SUPPLY_NAME=test_ac
[   10.834595] power_supply test_ac: prop ONLINE=1
[   10.834729] power_supply test_battery: uevent
[   10.834731] power_supply test_battery: POWER_SUPPLY_NAME=test_battery
[   10.834736] power_supply test_battery: prop STATUS=Discharging
[   10.834738] power_supply test_battery: prop CHARGE_TYPE=Fast
[   10.834740] power_supply test_battery: prop HEALTH=Good
[   10.834742] power_supply test_battery: prop PRESENT=1
[   10.834744] power_supply test_battery: prop TECHNOLOGY=Li-ion
[   10.834746] power_supply test_battery: prop CHARGE_FULL_DESIGN=100
[   10.834748] power_supply test_battery: prop CHARGE_FULL=100
[   10.834750] power_supply test_battery: prop CHARGE_NOW=50
[   10.834751] power_supply test_battery: prop CAPACITY=50
[   10.834753] power_supply test_battery: prop CAPACITY_LEVEL=Normal
[   10.834755] power_supply test_battery: prop TIME_TO_EMPTY_AVG=3600
[   10.834757] power_supply test_battery: prop TIME_TO_FULL_NOW=3600
[   10.834758] power_supply test_battery: prop MODEL_NAME=Test battery
[   10.834760] power_supply test_battery: prop MANUFACTURER=Linux
[   10.834762] power_supply test_battery: prop SERIAL_NUMBER=4.14.0-13048-ga2f4b18a
[   10.834764] power_supply test_battery: prop TEMP=26


To reproduce:

         git clone https://github.com/intel/lkp-tests.git
         cd lkp-tests
         bin/lkp qemu -k <bzImage> job-script  # job-script is attached in this email

Thanks,
Fengguang

View attachment "config-4.14.0-13048-ga2f4b18a" of type "text/plain" (114017 bytes)

View attachment "job-script" of type "text/plain" (4064 bytes)

Download attachment "dmesg.xz" of type "application/x-xz" (14440 bytes)

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ