Re: [LKP] [rcu] kernel BUG at include/linux/pagemap.h:149!
by Frederic Weisbecker
On Fri, Sep 11, 2015 at 10:19:47AM +0800, Boqun Feng wrote:
> Subject: [PATCH 01/27] rcu: Don't disable preemption for Tiny and Tree RCU
> readers
>
> Because preempt_disable() maps to barrier() for non-debug builds,
> it forces the compiler to spill and reload registers. Because Tree
> RCU and Tiny RCU now only appear in CONFIG_PREEMPT=n builds, these
> barrier() instances generate needless extra code for each instance of
> rcu_read_lock() and rcu_read_unlock(). This extra code slows down Tree
> RCU and bloats Tiny RCU.
>
> This commit therefore removes the preempt_disable() and preempt_enable()
> from the non-preemptible implementations of __rcu_read_lock() and
> __rcu_read_unlock(), respectively.
>
> For debug purposes, preempt_disable() and preempt_enable() are still
> kept if CONFIG_PREEMPT_COUNT=y, which makes the detection of sleeping
> inside atomic sections still work in non-preemptible kernels.
>
> Signed-off-by: Boqun Feng <boqun.feng(a)gmail.com>
> Signed-off-by: Paul E. McKenney <paulmck(a)linux.vnet.ibm.com>
> ---
> include/linux/rcupdate.h | 6 ++++--
> include/linux/rcutiny.h | 1 +
> kernel/rcu/tree.c | 9 +++++++++
> 3 files changed, 14 insertions(+), 2 deletions(-)
>
> diff --git a/include/linux/rcupdate.h b/include/linux/rcupdate.h
> index d63bb77..6c3cece 100644
> --- a/include/linux/rcupdate.h
> +++ b/include/linux/rcupdate.h
> @@ -297,12 +297,14 @@ void synchronize_rcu(void);
>
> static inline void __rcu_read_lock(void)
> {
> - preempt_disable();
> + if (IS_ENABLED(CONFIG_PREEMPT_COUNT))
> + preempt_disable();
preempt_disable() is a no-op when !CONFIG_PREEMPT_COUNT, right?
Or rather it's a barrier(), which is anyway implied by rcu_read_lock().
So perhaps we can get rid of the IS_ENABLED() check?
1 year, 7 months
Test monitoring on custom github repo
by Thomas Garnier
Hi,
I am working on KASLR (PIE for x86_64). I previously used Kees (CCed)
branches for lkp bot testing but someone told be I could ask you to add a
custom github path to monitor all branches on it.
I pushed my changes to: https://github.com/thgarnie/linux (kasrl_pie_v2
right now)
Can you add it? Anything I need to do?
Thanks,
--
Thomas
2 years
[test_parman_move] watchdog: BUG: soft lockup - CPU#0 stuck for 22s! [swapper:1]
by Fengguang Wu
Hello,
FYI this happens in mainline kernel 4.15.0-rc1.
It at least dates back to v4.12 .
It occurs in 2 out of 2 boots.
[ 95.347718] test passed
[ 95.359028] test_printf: all 260 tests passed
[ 96.656859] test_bitmap: test 13: input is '0-2047:128/256' OK, Time: 3332
[ 96.770961] test_bitmap: all 460506 tests passed
[ 96.783469] test_uuid: all 18 tests passed
[ 124.230111] watchdog: BUG: soft lockup - CPU#0 stuck for 22s! [swapper:1]
[ 124.230111] CPU: 0 PID: 1 Comm: swapper Not tainted 4.15.0-rc1 #360
[ 124.230111] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.10.2-1 04/01/2014
[ 124.230111] task: d3430000 task.stack: d342c000
[ 124.230111] EIP: test_parman_move+0xe/0xb0:
test_parman_move at lib/test_parman.c:119
[ 124.230111] EFLAGS: 00200212 CPU: 0
[ 124.230111] EAX: d0c00000 EBX: 00000004 ECX: 00000930 EDX: 0000090c
[ 124.230111] ESI: d0740324 EDI: d359f680 EBP: d342dec4 ESP: d342debc
[ 124.230111] DS: 007b ES: 007b FS: 0000 GS: 0000 SS: 0068
[ 124.230111] CR0: 80050033 CR2: 00000000 CR3: 02b2b000 CR4: 000006b0
[ 124.230111] Call Trace:
[ 124.230111] parman_lsort_item_add+0x9d/0x190:
__list_del_entry at include/linux/list.h:117
(inlined by) list_move_tail at include/linux/list.h:182
(inlined by) parman_prio_shift_down at lib/parman.c:144
(inlined by) parman_lsort_item_add at lib/parman.c:200
[ 124.230111] parman_item_add+0x9/0x10:
parman_item_add at lib/parman.c:356
[ 124.230111] test_parman_init+0x358/0x3b5:
test_parman_run at lib/test_parman.c:284
(inlined by) test_parman_lsort at lib/test_parman.c:369
(inlined by) test_parman_init at lib/test_parman.c:383
[ 124.230111] ? test_uuid_init+0x1a9/0x1a9:
test_parman_init at lib/test_parman.c:382
[ 124.230111] do_one_initcall+0x7c/0x10e:
do_one_initcall at init/main.c:826
[ 124.230111] ? kernel_init_freeable+0xc3/0x15b:
do_initcall_level at init/main.c:891
(inlined by) do_initcalls at init/main.c:900
(inlined by) do_basic_setup at init/main.c:918
(inlined by) kernel_init_freeable at init/main.c:1066
[ 124.230111] kernel_init_freeable+0xe3/0x15b:
do_initcall_level at init/main.c:892
(inlined by) do_initcalls at init/main.c:900
(inlined by) do_basic_setup at init/main.c:918
(inlined by) kernel_init_freeable at init/main.c:1066
[ 124.230111] ? rest_init+0xc0/0xc0:
kernel_init at init/main.c:990
[ 124.230111] kernel_init+0xb/0xf0:
kernel_init at init/main.c:995
[ 124.230111] ? schedule_tail_wrapper+0x9/0xc:
schedule_tail_wrapper at arch/x86/entry/entry_32.S:267
[ 124.230111] ret_from_fork+0x19/0x24:
ret_from_fork at arch/x86/entry/entry_32.S:299
[ 124.230111] Code: e8 48 5f c2 00 5d 85 c0 0f 94 c0 0f b6 c0 c3 90 90 90 90 90 90 90 90 90 90 90 90 90 90 55 89 e5 57 53 8b 5d 08 8b 40 04 c1 e3 02 <8d> 3c 90 89 fa 8d 04 88 89 d9 e8 a3 be c2 00 83 fb 08 89 da 73
[ 124.230111] Kernel panic - not syncing: softlockup: hung tasks
[ 124.230111] CPU: 0 PID: 1 Comm: swapper Tainted: G L 4.15.0-rc1 #360
[ 124.230111] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.10.2-1 04/01/2014
[ 124.230111] Call Trace:
[ 124.230111] dump_stack+0x16/0x19:
dump_stack at lib/dump_stack.c:64
[ 124.230111] panic+0x86/0x1bd:
panic at kernel/panic.c:194
[ 124.230111] watchdog_timer_fn+0x1e7/0x1f0:
watchdog_timer_fn at kernel/watchdog.c:443
[ 124.230111] ? watchdog+0x20/0x20:
watchdog_timer_fn at kernel/watchdog.c:340
[ 124.230111] hrtimer_run_queues+0xf3/0x1d0:
__run_hrtimer at kernel/time/hrtimer.c:1211
(inlined by) __hrtimer_run_queues at kernel/time/hrtimer.c:1275
(inlined by) hrtimer_run_queues at kernel/time/hrtimer.c:1414
[ 124.230111] run_local_timers+0x8/0x40:
run_local_timers at kernel/time/timer.c:1700
[ 124.230111] update_process_times+0x22/0x50:
update_process_times at kernel/time/timer.c:1630
[ 124.230111] tick_nohz_handler+0x66/0x100:
tick_nohz_handler at kernel/time/tick-sched.c:1068
[ 124.230111] smp_apic_timer_interrupt+0x40/0x80:
exiting_irq at arch/x86/include/asm/apic.h:540
(inlined by) smp_apic_timer_interrupt at arch/x86/kernel/apic/apic.c:1052
[ 124.230111] ? irq_exit+0x2f/0xb0:
tick_irq_exit at kernel/softirq.c:385
(inlined by) irq_exit at kernel/softirq.c:407
[ 124.230111] apic_timer_interrupt+0x35/0x3c:
apic_timer_interrupt at arch/x86/include/asm/entry_arch.h:36
[ 124.230111] EIP: test_parman_move+0xe/0xb0:
test_parman_move at lib/test_parman.c:119
[ 124.230111] EFLAGS: 00200212 CPU: 0
[ 124.230111] EAX: d0c00000 EBX: 00000004 ECX: 00000930 EDX: 0000090c
[ 124.230111] ESI: d0740324 EDI: d359f680 EBP: d342dec4 ESP: d342debc
[ 124.230111] DS: 007b ES: 007b FS: 0000 GS: 0000 SS: 0068
[ 124.230111] parman_lsort_item_add+0x9d/0x190:
__list_del_entry at include/linux/list.h:117
(inlined by) list_move_tail at include/linux/list.h:182
(inlined by) parman_prio_shift_down at lib/parman.c:144
(inlined by) parman_lsort_item_add at lib/parman.c:200
[ 124.230111] parman_item_add+0x9/0x10:
parman_item_add at lib/parman.c:356
[ 124.230111] test_parman_init+0x358/0x3b5:
test_parman_run at lib/test_parman.c:284
(inlined by) test_parman_lsort at lib/test_parman.c:369
(inlined by) test_parman_init at lib/test_parman.c:383
[ 124.230111] ? test_uuid_init+0x1a9/0x1a9:
test_parman_init at lib/test_parman.c:382
[ 124.230111] do_one_initcall+0x7c/0x10e:
do_one_initcall at init/main.c:826
[ 124.230111] ? kernel_init_freeable+0xc3/0x15b:
do_initcall_level at init/main.c:891
(inlined by) do_initcalls at init/main.c:900
(inlined by) do_basic_setup at init/main.c:918
(inlined by) kernel_init_freeable at init/main.c:1066
[ 124.230111] kernel_init_freeable+0xe3/0x15b:
do_initcall_level at init/main.c:892
(inlined by) do_initcalls at init/main.c:900
(inlined by) do_basic_setup at init/main.c:918
(inlined by) kernel_init_freeable at init/main.c:1066
[ 124.230111] ? rest_init+0xc0/0xc0:
kernel_init at init/main.c:990
[ 124.230111] kernel_init+0xb/0xf0:
kernel_init at init/main.c:995
[ 124.230111] ? schedule_tail_wrapper+0x9/0xc:
schedule_tail_wrapper at arch/x86/entry/entry_32.S:267
[ 124.230111] ret_from_fork+0x19/0x24:
ret_from_fork at arch/x86/entry/entry_32.S:299
[ 124.230111] Kernel Offset: disabled
Attached the full dmesg, kconfig and reproduce scripts.
Thanks,
Fengguang
2 years, 9 months
[lkp-robot] [x86/cpu_entry_area] 10043e02db: kernel_BUG_at_arch/x86/mm/physaddr.c
by kernel test robot
FYI, we noticed the following commit (built with gcc-6):
commit: 10043e02db7f8a4161f76434931051e7d797a5f6 ("x86/cpu_entry_area: Add debugstore entries to cpu_entry_area")
https://git.kernel.org/cgit/linux/kernel/git/tip/tip.git WIP.x86/pti
in testcase: trinity
with following parameters:
runtime: 300s
test-description: Trinity is a linux system call fuzz tester.
test-url: http://codemonkey.org.uk/projects/trinity/
on test machine: qemu-system-x86_64 -enable-kvm -cpu IvyBridge -m 420M
caused below changes (please refer to attached dmesg/kmsg for entire log/backtrace):
+------------------------------------------------+------------+------------+
| | 4b6bbe95b8 | 10043e02db |
+------------------------------------------------+------------+------------+
| boot_successes | 8 | 0 |
| boot_failures | 0 | 8 |
| kernel_BUG_at_arch/x86/mm/physaddr.c | 0 | 6 |
| PANIC:early_exception | 0 | 6 |
| RIP:__phys_addr | 0 | 6 |
| BUG:soft_lockup-CPU##stuck_for#s | 0 | 2 |
| RIP:rb_erase | 0 | 1 |
| Kernel_panic-not_syncing:softlockup:hung_tasks | 0 | 2 |
| RIP:rbtree_test_init | 0 | 1 |
+------------------------------------------------+------------+------------+
[ 0.000000] kernel BUG at arch/x86/mm/physaddr.c:27!
PANIC: early exception 0x06 IP 10:ffffffff8115586f error 0 cr2 0xffff88000e468000
[ 0.000000] CPU: 0 PID: 0 Comm: swapper Not tainted 4.14.0-00160-g10043e02 #1
[ 0.000000] task: ffffffff8a4683c0 task.stack: ffffffff8a400000
[ 0.000000] RIP: 0010:__phys_addr+0x268/0x276
[ 0.000000] RSP: 0000:ffffffff8a407bd8 EFLAGS: 00010002 ORIG_RAX: 0000000000000000
[ 0.000000] RAX: 0000000000000000 RBX: 0000780000000000 RCX: 1ffffffff17a9a01
[ 0.000000] RDX: dffffc0000000000 RSI: 0000000000000003 RDI: ffffffff8bd4d340
[ 0.000000] RBP: ffffffff8a407bf8 R08: 0000000000000001 R09: ffffffff8a407a48
[ 0.000000] R10: ffff880000010000 R11: ffff880000010fff R12: 0000000000000001
[ 0.000000] R13: 0000000000000001 R14: 0000000000000000 R15: fffffbd00c401000
[ 0.000000] FS: 0000000000000000(0000) GS:ffffffff8cb4d000(0000) knlGS:0000000000000000
[ 0.000000] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[ 0.000000] CR2: ffff88000e468000 CR3: 000000000cde8000 CR4: 00000000000406b0
[ 0.000000] Call Trace:
[ 0.000000] kasan_populate_shadow+0x3f2/0x497
[ 0.000000] ? 0xffffffff81000000
[ 0.000000] kasan_init+0x12e/0x2b2
[ 0.000000] setup_arch+0x2825/0x2a2c
[ 0.000000] ? reserve_standard_io_resources+0x36/0x36
[ 0.000000] ? vprintk_func+0x1ed/0x1f6
[ 0.000000] ? printk+0x94/0xb0
[ 0.000000] ? show_regs_print_info+0x60/0x60
[ 0.000000] start_kernel+0xc8/0x15f4
[ 0.000000] ? mem_encrypt_init+0xb/0xb
[ 0.000000] ? early_idt_handler_common+0x3b/0x52
[ 0.000000] x86_64_start_reservations+0x2a/0x2c
[ 0.000000] x86_64_start_kernel+0x72/0x75
[ 0.000000] secondary_startup_64+0xa5/0xb0
[ 0.000000] Code: e0 07 38 c2 0f 9e c1 84 d2 0f 95 c0 84 c1 74 0a be 08 00 00 00 e8 0a f5 77 00 49 8d 75 02 48 ff 04 f5 28 d3 d4 8b 45 84 e4 74 02 <0f> 0b 48 89 d8 5b 41 5c 41 5d 41 5e 5d c3 e8 9e c1 0a 07 55 b8
Elapsed time: 10
#!/bin/bash
# To reproduce,
# 1) save job-script and this script (both are attached in 0day report email)
# 2) run this script with your compiled kernel and optional env $INSTALL_MOD_PATH
kernel=$1
initrds=(
/osimage/yocto/yocto-tiny-i386-2016-04-22.cgz
/lkp/lkp/lkp-i386.cgz
/osimage/deps/debian-x86_64-2016-08-31.cgz/run-ipconfig.i386_2016-09-03.cgz
/osimage/pkg/debian-x86_64-2016-08-31.cgz/trinity-static-i386-x86_64-6ddabfd2_2017-11-10.cgz
)
HTTP_PREFIX=https://github.com/0day-ci/lkp-qemu/raw/master
wget --timestamping "${initrds[@]/#/$HTTP_PREFIX}"
{
cat "${initrds[@]//*\//}"
[[ $INSTALL_MOD_PATH ]] && (
cd "$INSTALL_MOD_PATH"
find lib | cpio -o -H newc --quiet | gzip
)
echo job-script | cpio -o -H newc --quiet | gzip
} > initrd.img
qemu-img create -f qcow2 disk-vm-ivb41-yocto-ia32-30-0 256G
kvm=(
qemu-system-x86_64
-enable-kvm
-cpu IvyBridge
-kernel $kernel
-initrd initrd.img
-m 420
-smp 1
-device e1000,netdev=net0
-netdev user,id=net0
-boot order=nc
-no-reboot
-watchdog i6300esb
-watchdog-action debug
-rtc base=localtime
-drive file=disk-vm-ivb41-yocto-ia32-30-0,media=disk,if=virtio
-serial stdio
-display none
-monitor null
)
append=(
ip=::::vm-ivb41-yocto-ia32-30::dhcp
root=/dev/ram0
user=lkp
job=/job-script
ARCH=x86_64
kconfig=x86_64-randconfig-ne0-12241015
branch=linux-devel/devel-catchup-201712241239
commit=10043e02db7f8a4161f76434931051e7d797a5f6
BOOT_IMAGE=/pkg/linux/x86_64-randconfig-ne0-12241015/gcc-6/10043e02db7f8a4161f76434931051e7d797a5f6/vmlinuz-4.14.0-00160-g10043e02
max_uptime=1500
RESULT_ROOT=/result/trinity/300s/vm-ivb41-yocto-ia32/yocto-tiny-i386-2016-04-22.cgz/x86_64-randconfig-ne0-12241015/gcc-6/10043e02db7f8a4161f76434931051e7d797a5f6/0
result_service=tmpfs
debug
apic=debug
sysrq_always_enabled
rcupdate.rcu_cpu_stall_timeout=100
net.ifnames=0
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,
Xiaolong
3 years
[usb_add_gadget_udc_release] BUG: KASAN: double-free or invalid-free in (null)
by Fengguang Wu
Hello,
FYI this happens in mainline kernel 4.15.0-rc3.
It looks like a new regression.
It occurs in 23 out of 36 boots.
[ 38.592360] LUN: removable file: (no medium)
[ 38.593442] no file given for LUN0
[ 38.594589] g_mass_storage usbip-vudc.0: failed to start g_mass_storage: -22
[ 38.600881] udc usbip-vudc.0: releasing 'usbip-vudc.0'
[ 38.604397] ==================================================================
[ 38.605034] BUG: KASAN: double-free or invalid-free in (null)
[ 38.605034]
[ 38.605034] CPU: 0 PID: 1 Comm: swapper Not tainted 4.15.0-rc3 #468
[ 38.605034] Call Trace:
[ 38.605034] dump_stack+0x2f/0x3e:
__dump_stack at lib/dump_stack.c:17
(inlined by) dump_stack at lib/dump_stack.c:63
[ 38.605034] print_address_description+0xc2/0x3b7:
print_address_description at mm/kasan/report.c:253
[ 38.605034] kasan_report_double_free+0x50/0x8c:
kasan_report_double_free at mm/kasan/report.c:334
[ 38.605034] kasan_slab_free+0x60/0x1ef:
kasan_slab_free at mm/kasan/kasan.c:514
[ 38.605034] ? ftrace_likely_update+0x5c/0xc4:
ftrace_likely_update at kernel/trace/trace_branch.c:223
[ 38.605034] ? kobj_kset_leave+0x193/0x1dc:
kobj_kset_leave at lib/kobject.c:184
[ 38.605034] ? lock_acquired+0x8d2/0x8d2:
lock_release at kernel/locking/lockdep.c:4013
[ 38.605034] ? ftrace_likely_update+0x5c/0xc4:
ftrace_likely_update at kernel/trace/trace_branch.c:223
[ 38.605034] ? trace_preempt_on+0x489/0x4d7:
trace_preempt_enable_rcuidle at include/trace/events/preemptirq.h:50
(inlined by) trace_preempt_on at kernel/trace/trace_irqsoff.c:855
[ 38.605034] ? static_obj+0x40/0x40:
match_held_lock at kernel/locking/lockdep.c:3567
[ 38.605034] ? kobject_put+0xf5/0x642:
refcount_dec_and_test at arch/x86/include/asm/refcount.h:75
(inlined by) kref_put at include/linux/kref.h:69
(inlined by) kobject_put at lib/kobject.c:694
[ 38.605034] ? trace_hardirqs_off+0x17/0x1f:
trace_hardirqs_off at kernel/locking/lockdep.c:2984
[ 38.605034] ? kfree+0x419/0x5e7:
slab_free_hook at mm/slub.c:1380
(inlined by) slab_free_freelist_hook at mm/slub.c:1412
(inlined by) slab_free at mm/slub.c:2968
(inlined by) kfree at mm/slub.c:3899
[ 38.605034] kfree+0x43c/0x5e7:
slab_free at mm/slub.c:2973
(inlined by) kfree at mm/slub.c:3899
[ 38.605034] usb_add_gadget_udc_release+0x693/0x6ca:
usb_add_gadget_udc_release at drivers/usb/gadget/udc/core.c:1199
[ 38.605034] usb_add_gadget_udc+0x29/0x35:
usb_add_gadget_udc at drivers/usb/gadget/udc/core.c:1247
[ 38.605034] vudc_probe+0x7e8/0x8fb:
vudc_probe at drivers/usb/usbip/vudc_dev.c:616
[ 38.605034] ? put_vudc_device+0x4f/0x4f:
vudc_probe at drivers/usb/usbip/vudc_dev.c:598
[ 38.605034] platform_drv_probe+0xa8/0x15e:
platform_drv_probe at drivers/base/platform.c:578
[ 38.605034] ? platform_drv_remove+0xac/0xac:
platform_drv_probe at drivers/base/platform.c:566
[ 38.605034] really_probe+0x5b7/0xc52:
really_probe at drivers/base/dd.c:428
[ 38.605034] ? driver_allows_async_probing+0x72/0x72:
__device_attach_driver at drivers/base/dd.c:627
[ 38.605034] driver_probe_device+0x20b/0x295:
pm_request_idle at include/linux/pm_runtime.h:205
(inlined by) driver_probe_device at drivers/base/dd.c:567
[ 38.605034] __device_attach_driver+0x2e8/0x301:
__device_attach_driver at drivers/base/dd.c:662
[ 38.605034] bus_for_each_drv+0x125/0x1f0:
bus_for_each_drv at drivers/base/bus.c:463
[ 38.605034] ? subsys_find_device_by_id+0x306/0x306:
bus_for_each_drv at drivers/base/bus.c:452
[ 38.605034] ? _raw_spin_unlock_irqrestore+0xd9/0xfa:
__raw_spin_unlock_irqrestore at include/linux/spinlock_api_smp.h:161
(inlined by) _raw_spin_unlock_irqrestore at kernel/locking/spinlock.c:191
[ 38.605034] __device_attach+0x1cc/0x339:
__device_attach at drivers/base/dd.c:719
[ 38.605034] ? device_bind_driver+0xdb/0xdb:
__device_attach at drivers/base/dd.c:693
[ 38.605034] device_initial_probe+0x1f/0x28:
device_initial_probe at drivers/base/dd.c:766
[ 38.605034] bus_probe_device+0xd0/0x260:
bus_probe_device at drivers/base/bus.c:523
[ 38.605034] device_add+0xd68/0x1264:
device_add at drivers/base/core.c:1835
[ 38.605034] ? put_device+0x37/0x37:
device_add at drivers/base/core.c:1738
[ 38.605034] ? lockdep_init_map+0x5e/0x6b:
lockdep_init_map at kernel/locking/lockdep.c:3296
[ 38.605034] ? __raw_spin_lock_init+0x37/0xf5:
__raw_spin_lock_init at kernel/locking/spinlock_debug.c:26
[ 38.605034] platform_device_add+0x5a9/0x72e:
platform_device_add at drivers/base/platform.c:418
[ 38.605034] ? arch_setup_pdev_archdata+0x5/0xd
[ 38.605034] init+0xfa/0x412:
init at drivers/usb/usbip/vudc_main.c:56
[ 38.605034] ? usbip_host_init+0x1b2/0x1b2:
init at drivers/usb/usbip/vudc_main.c:31
[ 38.605034] do_one_initcall+0x143/0x2d3:
do_one_initcall at init/main.c:826
[ 38.605034] ? start_kernel+0xa20/0xa20:
do_one_initcall at init/main.c:815
[ 38.605034] kernel_init_freeable+0x31f/0x469:
do_initcall_level at init/main.c:892
(inlined by) do_initcalls at init/main.c:900
(inlined by) do_basic_setup at init/main.c:918
(inlined by) kernel_init_freeable at init/main.c:1066
[ 38.605034] ? rest_init+0x3d0/0x3d0:
kernel_init at init/main.c:990
[ 38.605034] kernel_init+0x13/0x1fe:
kernel_init at init/main.c:993
[ 38.605034] ? rest_init+0x3d0/0x3d0:
kernel_init at init/main.c:990
[ 38.605034] ret_from_fork+0x24/0x30:
ret_from_fork at arch/x86/entry/entry_64.S:447
[ 38.605034]
[ 38.605034] Allocated by task 1:
[ 38.605034] kasan_kmalloc+0xec/0x1bb:
filter_irq_stacks at mm/kasan/kasan.c:427
(inlined by) save_stack at mm/kasan/kasan.c:448
(inlined by) set_track at mm/kasan/kasan.c:459
(inlined by) kasan_kmalloc at mm/kasan/kasan.c:551
[ 38.605034] kmem_cache_alloc_trace+0x474/0x48d:
kmem_cache_alloc_trace at mm/slub.c:2752
[ 38.605034] usb_add_gadget_udc_release+0x1de/0x6ca:
kmalloc at include/linux/slab.h:499
(inlined by) kzalloc at include/linux/slab.h:688
(inlined by) usb_add_gadget_udc_release at drivers/usb/gadget/udc/core.c:1148
[ 38.605034] usb_add_gadget_udc+0x29/0x35:
usb_add_gadget_udc at drivers/usb/gadget/udc/core.c:1247
[ 38.605034] vudc_probe+0x7e8/0x8fb:
vudc_probe at drivers/usb/usbip/vudc_dev.c:616
[ 38.605034] platform_drv_probe+0xa8/0x15e:
platform_drv_probe at drivers/base/platform.c:578
[ 38.605034] really_probe+0x5b7/0xc52:
really_probe at drivers/base/dd.c:428
[ 38.605034] driver_probe_device+0x20b/0x295:
pm_request_idle at include/linux/pm_runtime.h:205
(inlined by) driver_probe_device at drivers/base/dd.c:567
[ 38.605034] __device_attach_driver+0x2e8/0x301:
__device_attach_driver at drivers/base/dd.c:662
[ 38.605034] bus_for_each_drv+0x125/0x1f0:
bus_for_each_drv at drivers/base/bus.c:463
[ 38.605034] __device_attach+0x1cc/0x339:
__device_attach at drivers/base/dd.c:719
[ 38.605034] device_initial_probe+0x1f/0x28:
device_initial_probe at drivers/base/dd.c:766
[ 38.605034] bus_probe_device+0xd0/0x260:
bus_probe_device at drivers/base/bus.c:523
[ 38.605034] device_add+0xd68/0x1264:
device_add at drivers/base/core.c:1835
[ 38.605034] platform_device_add+0x5a9/0x72e:
platform_device_add at drivers/base/platform.c:418
[ 38.605034] init+0xfa/0x412:
init at drivers/usb/usbip/vudc_main.c:56
[ 38.605034] do_one_initcall+0x143/0x2d3:
do_one_initcall at init/main.c:826
[ 38.605034] kernel_init_freeable+0x31f/0x469:
do_initcall_level at init/main.c:892
(inlined by) do_initcalls at init/main.c:900
(inlined by) do_basic_setup at init/main.c:918
(inlined by) kernel_init_freeable at init/main.c:1066
[ 38.605034] kernel_init+0x13/0x1fe:
kernel_init at init/main.c:993
[ 38.605034] ret_from_fork+0x24/0x30:
ret_from_fork at arch/x86/entry/entry_64.S:447
[ 38.605034]
[ 38.605034] Freed by task 1:
[ 38.605034] kasan_slab_free+0xf0/0x1ef:
filter_irq_stacks at mm/kasan/kasan.c:427
(inlined by) save_stack at mm/kasan/kasan.c:448
(inlined by) set_track at mm/kasan/kasan.c:459
(inlined by) kasan_slab_free at mm/kasan/kasan.c:524
[ 38.605034] kfree+0x43c/0x5e7:
slab_free at mm/slub.c:2973
(inlined by) kfree at mm/slub.c:3899
[ 38.605034] usb_udc_release+0xe3/0xef:
usb_udc_release at drivers/usb/gadget/udc/core.c:1093
[ 38.605034] device_release+0x86/0x27e:
device_release at drivers/base/core.c:810
[ 38.605034] kobject_put+0x58d/0x642:
kobject_cleanup at lib/kobject.c:648
(inlined by) kobject_release at lib/kobject.c:677
(inlined by) kref_put at include/linux/kref.h:70
(inlined by) kobject_put at lib/kobject.c:694
[ 38.605034] put_device+0x2a/0x37:
put_device at drivers/base/core.c:1931
[ 38.605034] usb_add_gadget_udc_release+0x670/0x6ca:
usb_add_gadget_udc_release at drivers/usb/gadget/udc/core.c:1196
[ 38.605034] usb_add_gadget_udc+0x29/0x35:
usb_add_gadget_udc at drivers/usb/gadget/udc/core.c:1247
[ 38.605034] vudc_probe+0x7e8/0x8fb:
vudc_probe at drivers/usb/usbip/vudc_dev.c:616
[ 38.605034] platform_drv_probe+0xa8/0x15e:
platform_drv_probe at drivers/base/platform.c:578
[ 38.605034] really_probe+0x5b7/0xc52:
really_probe at drivers/base/dd.c:428
[ 38.605034] driver_probe_device+0x20b/0x295:
pm_request_idle at include/linux/pm_runtime.h:205
(inlined by) driver_probe_device at drivers/base/dd.c:567
[ 38.605034] __device_attach_driver+0x2e8/0x301:
__device_attach_driver at drivers/base/dd.c:662
[ 38.605034] bus_for_each_drv+0x125/0x1f0:
bus_for_each_drv at drivers/base/bus.c:463
[ 38.605034] __device_attach+0x1cc/0x339:
__device_attach at drivers/base/dd.c:719
[ 38.605034] device_initial_probe+0x1f/0x28:
device_initial_probe at drivers/base/dd.c:766
[ 38.605034] bus_probe_device+0xd0/0x260:
bus_probe_device at drivers/base/bus.c:523
[ 38.605034] device_add+0xd68/0x1264:
device_add at drivers/base/core.c:1835
[ 38.605034] platform_device_add+0x5a9/0x72e:
platform_device_add at drivers/base/platform.c:418
[ 38.605034] init+0xfa/0x412:
init at drivers/usb/usbip/vudc_main.c:56
[ 38.605034] do_one_initcall+0x143/0x2d3:
do_one_initcall at init/main.c:826
[ 38.605034] kernel_init_freeable+0x31f/0x469:
do_initcall_level at init/main.c:892
(inlined by) do_initcalls at init/main.c:900
(inlined by) do_basic_setup at init/main.c:918
(inlined by) kernel_init_freeable at init/main.c:1066
[ 38.605034] kernel_init+0x13/0x1fe:
kernel_init at init/main.c:993
[ 38.605034] ret_from_fork+0x24/0x30:
ret_from_fork at arch/x86/entry/entry_64.S:447
[ 38.605034]
[ 38.605034] The buggy address belongs to the object at ffff880014627700
[ 38.605034] which belongs to the cache kmalloc-2048 of size 2048
[ 38.605034] The buggy address is located 0 bytes inside of
[ 38.605034] 2048-byte region [ffff880014627700, ffff880014627f00)
Attached the full dmesg, kconfig and reproduce scripts.
Thanks,
Fengguang
3 years
[lkp-robot] [sched/fair] a4c3c04974: unixbench.score -4.3% regression
by kernel test robot
Greeting,
FYI, we noticed a -4.3% regression of unixbench.score due to commit:
commit: a4c3c04974d648ee6e1a09ef4131eb32a02ab494 ("sched/fair: Update and fix the runnable propagation rule")
https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git master
in testcase: unixbench
on test machine: 8 threads Ivy Bridge with 16G memory
with following parameters:
runtime: 300s
nr_task: 100%
test: shell1
cpufreq_governor: performance
test-description: UnixBench is the original BYTE UNIX benchmark suite aims to test performance of Unix-like system.
test-url: https://github.com/kdlucas/byte-unixbench
Details are as below:
-------------------------------------------------------------------------------------------------->
To reproduce:
git clone https://github.com/intel/lkp-tests.git
cd lkp-tests
bin/lkp install job.yaml # job file is attached in this email
bin/lkp run job.yaml
=========================================================================================
compiler/cpufreq_governor/kconfig/nr_task/rootfs/runtime/tbox_group/test/testcase:
gcc-7/performance/x86_64-rhel-7.2/100%/debian-x86_64-2016-08-31.cgz/300s/lkp-ivb-d01/shell1/unixbench
commit:
c6b9d9a330 ("sched/wait: Fix add_wait_queue() behavioral change")
a4c3c04974 ("sched/fair: Update and fix the runnable propagation rule")
c6b9d9a330290144 a4c3c04974d648ee6e1a09ef41
---------------- --------------------------
%stddev %change %stddev
\ | \
13264 -4.3% 12694 unixbench.score
10619292 -11.7% 9374917 unixbench.time.involuntary_context_switches
4.829e+08 -4.3% 4.62e+08 unixbench.time.minor_page_faults
1126 -3.6% 1086 unixbench.time.system_time
2645 -3.0% 2566 unixbench.time.user_time
15855720 -6.2% 14878247 unixbench.time.voluntary_context_switches
0.00 ± 56% -0.0 0.00 ± 57% mpstat.cpu.iowait%
79517 -5.7% 74990 vmstat.system.cs
16361 -3.3% 15822 vmstat.system.in
1.814e+08 -24.0% 1.379e+08 cpuidle.C1.time
3436399 -20.6% 2728227 cpuidle.C1.usage
7772815 -9.9% 7001076 cpuidle.C1E.usage
1.479e+08 +66.1% 2.456e+08 cpuidle.C3.time
1437889 +38.7% 1994073 cpuidle.C3.usage
18147 +13.9% 20676 cpuidle.POLL.usage
3436173 -20.6% 2727580 turbostat.C1
3.54 -0.8 2.73 turbostat.C1%
7772758 -9.9% 7001012 turbostat.C1E
1437858 +38.7% 1994034 turbostat.C3
2.88 +2.0 4.86 turbostat.C3%
18.50 +10.8% 20.50 turbostat.CPU%c1
0.54 ± 2% +179.6% 1.51 turbostat.CPU%c3
2.32e+12 -4.3% 2.22e+12 perf-stat.branch-instructions
6.126e+10 -4.9% 5.823e+10 perf-stat.branch-misses
8.64 ± 4% +0.6 9.25 perf-stat.cache-miss-rate%
1.662e+11 -4.3% 1.59e+11 perf-stat.cache-references
51040611 -7.0% 47473754 perf-stat.context-switches
1.416e+13 -3.6% 1.365e+13 perf-stat.cpu-cycles
8396968 -3.9% 8065835 perf-stat.cpu-migrations
2.919e+12 -4.3% 2.793e+12 perf-stat.dTLB-loads
1.89e+12 -4.3% 1.809e+12 perf-stat.dTLB-stores
67.97 +1.1 69.03 perf-stat.iTLB-load-miss-rate%
4.767e+09 -1.3% 4.704e+09 perf-stat.iTLB-load-misses
2.247e+09 -6.0% 2.111e+09 perf-stat.iTLB-loads
1.14e+13 -4.3% 1.091e+13 perf-stat.instructions
2391 -3.0% 2319 perf-stat.instructions-per-iTLB-miss
4.726e+08 -4.3% 4.523e+08 perf-stat.minor-faults
4.726e+08 -4.3% 4.523e+08 perf-stat.page-faults
585.14 ± 4% -55.0% 263.59 ± 12% sched_debug.cfs_rq:/.load_avg.avg
1470 ± 4% -42.2% 850.09 ± 24% sched_debug.cfs_rq:/.load_avg.max
154.17 ± 22% -49.2% 78.39 ± 7% sched_debug.cfs_rq:/.load_avg.min
438.33 ± 6% -41.9% 254.49 ± 27% sched_debug.cfs_rq:/.load_avg.stddev
2540 ± 15% +23.5% 3137 ± 11% sched_debug.cfs_rq:/.removed.runnable_sum.avg
181.83 ± 11% -56.3% 79.50 ± 34% sched_debug.cfs_rq:/.runnable_load_avg.avg
16.46 ± 37% -72.9% 4.45 ±110% sched_debug.cfs_rq:/.runnable_load_avg.min
294.77 ± 5% +11.2% 327.87 ± 6% sched_debug.cfs_rq:/.util_avg.stddev
220260 ± 8% +20.3% 264870 ± 4% sched_debug.cpu.avg_idle.avg
502903 ± 4% +21.0% 608663 sched_debug.cpu.avg_idle.max
148667 ± 6% +29.5% 192468 ± 2% sched_debug.cpu.avg_idle.stddev
180.64 ± 10% -53.4% 84.23 ± 34% sched_debug.cpu.cpu_load[0].avg
25.73 ± 15% -85.6% 3.70 ±113% sched_debug.cpu.cpu_load[0].min
176.98 ± 6% -52.5% 84.06 ± 35% sched_debug.cpu.cpu_load[1].avg
53.93 ± 13% -72.6% 14.75 ± 15% sched_debug.cpu.cpu_load[1].min
176.61 ± 4% -55.3% 78.92 ± 31% sched_debug.cpu.cpu_load[2].avg
73.78 ± 11% -73.4% 19.61 ± 7% sched_debug.cpu.cpu_load[2].min
177.42 ± 3% -58.8% 73.09 ± 21% sched_debug.cpu.cpu_load[3].avg
93.01 ± 8% -73.9% 24.25 ± 6% sched_debug.cpu.cpu_load[3].min
173.36 ± 3% -60.6% 68.26 ± 13% sched_debug.cpu.cpu_load[4].avg
274.36 ± 5% -48.6% 141.16 ± 44% sched_debug.cpu.cpu_load[4].max
107.87 ± 6% -73.0% 29.11 ± 9% sched_debug.cpu.cpu_load[4].min
11203 ± 9% +9.9% 12314 ± 6% sched_debug.cpu.curr->pid.avg
1042556 ± 3% -6.9% 970165 ± 2% sched_debug.cpu.sched_goidle.max
748905 ± 5% -13.4% 648459 sched_debug.cpu.sched_goidle.min
90872 ± 11% +17.4% 106717 ± 5% sched_debug.cpu.sched_goidle.stddev
457847 ± 4% -15.0% 389113 sched_debug.cpu.ttwu_local.min
18.60 -1.1 17.45 perf-profile.calltrace.cycles-pp.secondary_startup_64
16.33 ± 2% -1.0 15.29 perf-profile.calltrace.cycles-pp.cpu_startup_entry.start_secondary.secondary_startup_64
16.33 ± 2% -1.0 15.29 perf-profile.calltrace.cycles-pp.start_secondary.secondary_startup_64
16.32 ± 2% -1.0 15.29 perf-profile.calltrace.cycles-pp.do_idle.cpu_startup_entry.start_secondary.secondary_startup_64
15.44 ± 2% -1.0 14.43 perf-profile.calltrace.cycles-pp.intel_idle.cpuidle_enter_state.do_idle.cpu_startup_entry.start_secondary
15.69 ± 2% -1.0 14.71 perf-profile.calltrace.cycles-pp.cpuidle_enter_state.do_idle.cpu_startup_entry.start_secondary.secondary_startup_64
5.54 -0.1 5.45 perf-profile.calltrace.cycles-pp.__libc_fork
10.28 +0.0 10.32 perf-profile.calltrace.cycles-pp.page_fault
10.16 +0.0 10.21 perf-profile.calltrace.cycles-pp.do_page_fault.page_fault
10.15 +0.1 10.20 perf-profile.calltrace.cycles-pp.__do_page_fault.do_page_fault.page_fault
9.47 +0.1 9.56 perf-profile.calltrace.cycles-pp.__handle_mm_fault.handle_mm_fault.__do_page_fault.do_page_fault.page_fault
11.49 +0.1 11.59 perf-profile.calltrace.cycles-pp.sys_execve.do_syscall_64.return_from_SYSCALL_64.execve
8.28 +0.1 8.38 perf-profile.calltrace.cycles-pp.load_elf_binary.search_binary_handler.do_execveat_common.sys_execve.do_syscall_64
11.49 +0.1 11.59 perf-profile.calltrace.cycles-pp.return_from_SYSCALL_64.execve
11.49 +0.1 11.59 perf-profile.calltrace.cycles-pp.do_syscall_64.return_from_SYSCALL_64.execve
8.30 +0.1 8.41 perf-profile.calltrace.cycles-pp.search_binary_handler.do_execveat_common.sys_execve.do_syscall_64.return_from_SYSCALL_64
11.46 +0.1 11.58 perf-profile.calltrace.cycles-pp.do_execveat_common.sys_execve.do_syscall_64.return_from_SYSCALL_64.execve
8.46 +0.1 8.57 perf-profile.calltrace.cycles-pp.handle_mm_fault.__do_page_fault.do_page_fault.page_fault
5.21 +0.1 5.34 ± 2% perf-profile.calltrace.cycles-pp.exit_mmap.mmput.do_exit.do_group_exit.__wake_up_parent
5.24 +0.1 5.38 ± 2% perf-profile.calltrace.cycles-pp.mmput.do_exit.do_group_exit.__wake_up_parent.entry_SYSCALL_64_fastpath
13.20 +0.1 13.34 perf-profile.calltrace.cycles-pp.execve
6.79 +0.2 6.94 ± 2% perf-profile.calltrace.cycles-pp.__wake_up_parent.entry_SYSCALL_64_fastpath
6.79 +0.2 6.95 ± 2% perf-profile.calltrace.cycles-pp.do_group_exit.__wake_up_parent.entry_SYSCALL_64_fastpath
6.78 +0.2 6.94 perf-profile.calltrace.cycles-pp.do_exit.do_group_exit.__wake_up_parent.entry_SYSCALL_64_fastpath
5.98 +0.2 6.18 perf-profile.calltrace.cycles-pp.vfprintf.__vsnprintf_chk
8.38 +0.2 8.61 perf-profile.calltrace.cycles-pp.__vsnprintf_chk
14.17 +0.3 14.49 perf-profile.calltrace.cycles-pp.entry_SYSCALL_64_fastpath
18.60 -1.1 17.45 perf-profile.children.cycles-pp.do_idle
18.60 -1.1 17.45 perf-profile.children.cycles-pp.cpu_startup_entry
18.60 -1.1 17.45 perf-profile.children.cycles-pp.secondary_startup_64
17.60 -1.1 16.46 perf-profile.children.cycles-pp.intel_idle
17.89 -1.1 16.80 perf-profile.children.cycles-pp.cpuidle_enter_state
16.33 ± 2% -1.0 15.29 perf-profile.children.cycles-pp.start_secondary
5.54 -0.1 5.45 perf-profile.children.cycles-pp.__libc_fork
16.15 +0.0 16.18 perf-profile.children.cycles-pp.do_page_fault
16.19 +0.0 16.22 perf-profile.children.cycles-pp.page_fault
6.24 +0.1 6.29 ± 2% perf-profile.children.cycles-pp.filemap_map_pages
16.07 +0.1 16.13 perf-profile.children.cycles-pp.__do_page_fault
16.85 +0.1 16.92 perf-profile.children.cycles-pp.do_syscall_64
16.85 +0.1 16.92 perf-profile.children.cycles-pp.return_from_SYSCALL_64
9.22 +0.1 9.33 perf-profile.children.cycles-pp.search_binary_handler
13.49 +0.1 13.61 perf-profile.children.cycles-pp.__handle_mm_fault
4.89 +0.1 5.02 ± 2% perf-profile.children.cycles-pp.unmap_page_range
9.11 +0.1 9.24 perf-profile.children.cycles-pp.load_elf_binary
13.20 +0.1 13.34 perf-profile.children.cycles-pp.execve
12.82 +0.1 12.96 perf-profile.children.cycles-pp.sys_execve
4.95 +0.2 5.10 ± 2% perf-profile.children.cycles-pp.unmap_vmas
12.79 +0.2 12.95 perf-profile.children.cycles-pp.do_execveat_common
13.90 +0.2 14.07 perf-profile.children.cycles-pp.handle_mm_fault
6.95 +0.2 7.13 ± 2% perf-profile.children.cycles-pp.do_exit
6.95 +0.2 7.13 ± 2% perf-profile.children.cycles-pp.do_group_exit
6.95 +0.2 7.13 ± 2% perf-profile.children.cycles-pp.__wake_up_parent
6.40 ± 2% +0.2 6.62 perf-profile.children.cycles-pp.vfprintf
8.38 +0.2 8.61 perf-profile.children.cycles-pp.__vsnprintf_chk
9.21 +0.2 9.46 perf-profile.children.cycles-pp.mmput
9.16 +0.2 9.41 perf-profile.children.cycles-pp.exit_mmap
19.85 +0.3 20.13 perf-profile.children.cycles-pp.entry_SYSCALL_64_fastpath
17.60 -1.1 16.46 perf-profile.self.cycles-pp.intel_idle
6.03 ± 2% +0.2 6.26 perf-profile.self.cycles-pp.vfprintf
unixbench.score
14000 +-+-----------------------------------------------------------------+
O.O..O.O.O.O..O.O.O.O..O.O.O.O..O.O.O..O.O.O.+ +.+.+..+.+.+.+..+.|
12000 +-+ : : |
| : : |
10000 +-+ : : |
| : : |
8000 +-+ : : |
| : : |
6000 +-+ : : |
| : : |
4000 +-+ : : |
| :: |
2000 +-+ : |
| : |
0 +-+-----------------------------------------------------------------+
Disclaimer:
Results have been estimated based on internal Intel analysis and are provided
for informational purposes only. Any difference in system hardware or software
design or configuration may affect actual performance.
Thanks,
Xiaolong
3 years
[lkp-robot] [nfs] dc4fd9ab01: fsmark.app_overhead 850.9% regression
by kernel test robot
Greeting,
FYI, we noticed a 850.9% regression of fsmark.app_overhead due to commit:
commit: dc4fd9ab01ab379ae5af522b3efd4187a7c30a31 ("nfs: don't wait on commit in nfs_commit_inode() if there were no commit requests")
https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git master
in testcase: fsmark
on test machine: 48 threads Intel(R) Xeon(R) CPU E5-2697 v2 @ 2.70GHz with 64G memory
with following parameters:
iterations: 1x
nr_threads: 64t
disk: 1BRD_48G
fs: f2fs
fs2: nfsv4
filesize: 4M
test_size: 40G
sync_method: fsyncBeforeClose
cpufreq_governor: performance
test-description: The fsmark is a file system benchmark to test synchronous write workloads, for example, mail servers workload.
test-url: https://sourceforge.net/projects/fsmark/
Details are as below:
-------------------------------------------------------------------------------------------------->
To reproduce:
git clone https://github.com/intel/lkp-tests.git
cd lkp-tests
bin/lkp install job.yaml # job file is attached in this email
bin/lkp run job.yaml
=========================================================================================
compiler/cpufreq_governor/disk/filesize/fs2/fs/iterations/kconfig/nr_threads/rootfs/sync_method/tbox_group/test_size/testcase:
gcc-7/performance/1BRD_48G/4M/nfsv4/f2fs/1x/x86_64-rhel-7.2/64t/debian-x86_64-2016-08-31.cgz/fsyncBeforeClose/ivb44/40G/fsmark
commit:
ccede75985 ("xprtrdma: Spread reply processing over more CPUs")
dc4fd9ab01 ("nfs: don't wait on commit in nfs_commit_inode() if there were no commit requests")
ccede7598588ae34 dc4fd9ab01ab379ae5af522b3e
---------------- --------------------------
%stddev %change %stddev
\ | \
13296395 ± 7% +850.9% 1.264e+08 fsmark.app_overhead
1230639 -2.7% 1197079 fsmark.time.voluntary_context_switches
1.08 +0.1 1.21 mpstat.cpu.iowait%
6.00 +16.7% 7.00 nfsstat.Client.nfs.v4.getattr
910.00 ± 2% -9.5% 823.50 proc-vmstat.kswapd_low_wmark_hit_quickly
23577 -2.2% 23058 vmstat.system.cs
53057401 ± 2% +18.5% 62851465 cpuidle.C3.time
29194791 ± 44% -54.6% 13240888 ± 33% cpuidle.POLL.time
807076 ± 29% -47.3% 425456 ± 13% numa-numastat.node0.numa_miss
812559 ± 29% -46.9% 431720 ± 12% numa-numastat.node0.other_node
807076 ± 29% -47.3% 425456 ± 13% numa-numastat.node1.numa_foreign
6413 +14.7% 7358 numa-meminfo.node0.KernelStack
2369 ± 8% +46.6% 3474 ± 7% numa-meminfo.node0.PageTables
6744 -12.4% 5908 ± 2% numa-meminfo.node1.KernelStack
3512 ± 6% -31.9% 2392 ± 13% numa-meminfo.node1.PageTables
565.50 ± 64% +79.5% 1015 ± 4% slabinfo.btrfs_extent_buffer.active_objs
565.50 ± 64% +79.5% 1015 ± 4% slabinfo.btrfs_extent_buffer.num_objs
1827 ± 4% +20.9% 2210 ± 5% slabinfo.fsnotify_mark_connector.active_objs
1827 ± 4% +20.9% 2210 ± 5% slabinfo.fsnotify_mark_connector.num_objs
809.25 ± 9% +16.9% 946.00 ± 4% slabinfo.nfsd4_openowners.active_objs
809.25 ± 9% +16.9% 946.00 ± 4% slabinfo.nfsd4_openowners.num_objs
194.75 ± 2% -5.0% 185.00 turbostat.Avg_MHz
0.77 ± 2% +0.1 0.91 turbostat.C3%
0.65 ± 2% +22.7% 0.80 turbostat.CPU%c3
62.34 ± 2% -4.5% 59.52 turbostat.CorWatt
70.25 ± 3% -6.8% 65.50 turbostat.PkgTmp
93.02 -3.4% 89.82 turbostat.PkgWatt
6411 +14.7% 7357 numa-vmstat.node0.nr_kernel_stack
590.75 ± 8% +46.7% 866.75 ± 7% numa-vmstat.node0.nr_page_table_pages
120900 ± 13% +27.2% 153728 ± 6% numa-vmstat.node0.numa_foreign
77163 ± 42% -49.3% 39123 ± 24% numa-vmstat.node0.numa_miss
82748 ± 35% -45.1% 45452 ± 25% numa-vmstat.node0.numa_other
6741 -12.4% 5907 ± 2% numa-vmstat.node1.nr_kernel_stack
877.00 ± 6% -31.9% 597.50 ± 13% numa-vmstat.node1.nr_page_table_pages
77170 ± 42% -49.3% 39127 ± 24% numa-vmstat.node1.numa_foreign
120916 ± 13% +27.2% 153763 ± 6% numa-vmstat.node1.numa_miss
285504 ± 5% +11.4% 318085 ± 3% numa-vmstat.node1.numa_other
1737 ± 10% -34.5% 1137 ± 50% sched_debug.cfs_rq:/.exec_clock.max
281.24 ± 5% -33.3% 187.70 ± 48% sched_debug.cfs_rq:/.exec_clock.stddev
417.83 ± 4% -16.9% 347.04 ± 22% sched_debug.cfs_rq:/.runnable_load_avg.max
553.42 ± 45% -37.5% 346.04 ± 22% sched_debug.cpu.cpu_load[0].max
129.77 ± 7% -29.0% 92.14 ± 37% sched_debug.cpu.cpu_load[0].stddev
388.83 ± 14% -24.7% 292.79 ± 26% sched_debug.cpu.cpu_load[2].max
347.25 ± 8% -27.3% 252.50 ± 34% sched_debug.cpu.cpu_load[3].max
320.17 ± 2% -30.7% 222.00 ± 42% sched_debug.cpu.cpu_load[4].max
62796 ± 6% -31.8% 42829 ± 20% sched_debug.cpu.sched_count.max
7742 ± 6% -26.2% 5714 ± 14% sched_debug.cpu.sched_count.stddev
1.374e+11 ± 3% -11.8% 1.212e+11 ± 5% perf-stat.branch-instructions
0.93 ± 5% +0.1 1.07 ± 7% perf-stat.branch-miss-rate%
4.55e+09 ± 3% -6.8% 4.242e+09 ± 3% perf-stat.cache-misses
9.994e+09 ± 2% -5.4% 9.455e+09 ± 3% perf-stat.cache-references
3386653 -1.4% 3340360 perf-stat.context-switches
1.559e+12 -11.8% 1.375e+12 ± 4% perf-stat.cpu-cycles
16599 -25.5% 12360 perf-stat.cpu-migrations
1.712e+11 ± 3% -8.6% 1.564e+11 perf-stat.dTLB-loads
7.092e+11 ± 3% -11.7% 6.263e+11 ± 5% perf-stat.instructions
7701 ± 4% -12.5% 6741 ± 5% perf-stat.instructions-per-iTLB-miss
39.52 -0.5 39.06 perf-stat.node-load-miss-rate%
9.658e+08 -4.0% 9.27e+08 perf-stat.node-load-misses
22.56 -0.6 21.96 perf-stat.node-store-miss-rate%
5.902e+08 -3.8% 5.678e+08 perf-stat.node-store-misses
12.98 ± 48% -1.6 11.41 ± 32% perf-profile.calltrace.cycles-pp.poll_idle.cpuidle_enter_state.cpuidle_enter.call_cpuidle.do_idle
13.80 ± 11% -0.1 13.66 ± 10% perf-profile.calltrace.cycles-pp.__irqentry_text_start.cpuidle_enter_state.cpuidle_enter.call_cpuidle.do_idle
13.64 ± 10% -0.1 13.51 ± 11% perf-profile.calltrace.cycles-pp.smp_apic_timer_interrupt.__irqentry_text_start.cpuidle_enter_state.cpuidle_enter.call_cpuidle
87.54 -0.1 87.48 perf-profile.calltrace.cycles-pp.cpuidle_enter_state.cpuidle_enter.call_cpuidle.do_idle.cpu_startup_entry
86.74 -0.0 86.71 perf-profile.calltrace.cycles-pp.cpuidle_enter.call_cpuidle.do_idle.cpu_startup_entry.start_secondary
86.83 -0.0 86.82 perf-profile.calltrace.cycles-pp.call_cpuidle.do_idle.cpu_startup_entry.start_secondary.verify_cpu
93.11 +0.0 93.12 perf-profile.calltrace.cycles-pp.verify_cpu
5.83 ± 9% +0.1 5.89 ± 14% perf-profile.calltrace.cycles-pp.hrtimer_interrupt.smp_apic_timer_interrupt.__irqentry_text_start.cpuidle_enter_state.cpuidle_enter
90.70 +0.1 90.79 perf-profile.calltrace.cycles-pp.do_idle.cpu_startup_entry.start_secondary.verify_cpu
91.28 +0.2 91.44 perf-profile.calltrace.cycles-pp.cpu_startup_entry.start_secondary.verify_cpu
91.28 +0.2 91.44 perf-profile.calltrace.cycles-pp.start_secondary.verify_cpu
57.64 ± 6% +1.5 59.11 ± 3% perf-profile.calltrace.cycles-pp.intel_idle.cpuidle_enter_state.cpuidle_enter.call_cpuidle.do_idle
13.04 ± 49% -1.6 11.41 ± 32% perf-profile.children.cycles-pp.poll_idle
88.49 -0.2 88.33 perf-profile.children.cycles-pp.cpuidle_enter
14.31 ± 10% -0.1 14.17 ± 10% perf-profile.children.cycles-pp.__irqentry_text_start
14.06 ± 10% -0.1 13.92 ± 10% perf-profile.children.cycles-pp.smp_apic_timer_interrupt
88.60 -0.1 88.49 perf-profile.children.cycles-pp.call_cpuidle
87.57 -0.1 87.51 perf-profile.children.cycles-pp.cpuidle_enter_state
92.53 -0.1 92.47 perf-profile.children.cycles-pp.do_idle
93.11 +0.0 93.12 perf-profile.children.cycles-pp.verify_cpu
93.11 +0.0 93.12 perf-profile.children.cycles-pp.cpu_startup_entry
6.00 ± 9% +0.1 6.09 ± 14% perf-profile.children.cycles-pp.hrtimer_interrupt
91.28 +0.2 91.44 perf-profile.children.cycles-pp.start_secondary
57.72 ± 6% +1.5 59.18 ± 3% perf-profile.children.cycles-pp.intel_idle
13.02 ± 49% -1.6 11.41 ± 32% perf-profile.self.cycles-pp.poll_idle
57.72 ± 6% +1.5 59.18 ± 3% perf-profile.self.cycles-pp.intel_idle
fsmark.app_overhead
1.6e+08 +-+---------------------------------------------------------------+
| O |
1.4e+08 OO+OOOOOO |
1.2e+08 +-+ OOOOOOO O |
| |
1e+08 +-+ |
| |
8e+07 +-+ |
| |
6e+07 +-+ |
4e+07 +-+ |
| |
2e+07 +-+ + |
|+ ++ + ++++++++.++++++++++++++++++++++++++++++++.++++++++++++++++|
0 +-+---------------------------------------------------------------+
perf-stat.cpu-migrations
20000 +-+-----------------------------------------------------------------+
18000 +-+ + |
| ::+ : ++++++++. ++ ++++ ++++++.++ ++ +++++ + +++++++|
16000 +-++ + ++++++++ ++ + + ++ + + ++.+ |
14000 +-+ : : |
| O: :OOOOOOOO |
12000 OOOOO OO:O |
10000 +-+ : : |
8000 +-+ : : |
| :: |
6000 +-+ :: |
4000 +-+ :: |
| : |
2000 +-+ : |
0 +-+-----------------------------------------------------------------+
[*] bisect-good sample
[O] bisect-bad sample
Disclaimer:
Results have been estimated based on internal Intel analysis and are provided
for informational purposes only. Any difference in system hardware or software
design or configuration may affect actual performance.
Thanks,
Xiaolong
3 years
[lkp-robot] [xfs] d5b62f5c6a: xfstests.xfs.348.fail
by kernel test robot
FYI, we noticed the following commit (built with gcc-7):
commit: d5b62f5c6a6322f65b1884d91c0d7e08900f9587 ("xfs: provide a centralized method for verifying inline fork data")
https://git.kernel.org/cgit/linux/kernel/git/djwong/xfs-linux.git djwong-wtf
in testcase: xfstests
with following parameters:
disk: 4HDD
fs: xfs
test: xfs-group1
test-description: xfstests is a regression test suite for xfs and other files ystems.
test-url: git://git.kernel.org/pub/scm/fs/xfs/xfstests-dev.git
on test machine: 4 threads Intel(R) Core(TM) i5-2500K CPU @ 3.30GHz with 6G memory
caused below changes (please refer to attached dmesg/kmsg for entire log/backtrace):
xfs/348 - output mismatch (see /lkp/benchmarks/xfstests/results//xfs/348.out.bad)
--- tests/xfs/348.out 2017-12-27 19:31:41.000000000 +0800
+++ /lkp/benchmarks/xfstests/results//xfs/348.out.bad 2017-12-27 20:13:14.687105417 +0800
@@ -239,7 +239,7 @@
would have junked entry "DIR" in directory PARENT_INO
would have junked entry "EMPTY" in directory PARENT_INO
would have junked entry "FIFO" in directory PARENT_INO
-stat: 'SCRATCH_MNT/test/DIR' is a symbolic link
+stat: cannot stat 'SCRATCH_MNT/test/DIR': Structure needs cleaning
stat: 'SCRATCH_MNT/test/DATA' is a symbolic link
stat: cannot stat 'SCRATCH_MNT/test/EMPTY': Structure needs cleaning
...
(Run 'diff -u tests/xfs/348.out /lkp/benchmarks/xfstests/results//xfs/348.out.bad' to see the entire diff)
To reproduce:
git clone https://github.com/intel/lkp-tests.git
cd lkp-tests
bin/lkp install job.yaml # job file is attached in this email
bin/lkp run job.yaml
Thanks,
Xiaolong
3 years
[x86] 4b44a5b1c0: WARNING:at_kernel/irq/manage.c:#__free_irq
by kernel test robot
FYI, we noticed the following commit (built with gcc-7):
commit: 4b44a5b1c08830d4688937163110d619d5836c39 ("x86: remove dma_alloc_coherent_gfp_flags")
git://git.infradead.org/users/hch/misc.git dma-direct
in testcase: unixbench
with following parameters:
runtime: 300s
nr_task: 100%
test: execl
cpufreq_governor: performance
test-description: UnixBench is the original BYTE UNIX benchmark suite aims to test performance of Unix-like system.
test-url: https://github.com/kdlucas/byte-unixbench
on test machine: 56 threads Intel(R) Xeon(R) CPU E5-2695 v3 @ 2.30GHz with 256G memory
caused below changes (please refer to attached dmesg/kmsg for entire log/backtrace):
+------------------------------------------------------------------+------------+------------+
| | c36c82cdff | 4b44a5b1c0 |
+------------------------------------------------------------------+------------+------------+
| boot_successes | 0 | 0 |
| boot_failures | 4 | 8 |
| invoked_oom-killer:gfp_mask=0x | 4 | 4 |
| Mem-Info | 4 | 4 |
| Kernel_panic-not_syncing:Out_of_memory_and_no_killable_processes | 4 | 4 |
| WARNING:at_kernel/irq/manage.c:#__free_irq | 0 | 4 |
| RIP:__free_irq | 0 | 4 |
+------------------------------------------------------------------+------------+------------+
[ 17.410073] WARNING: CPU: 0 PID: 454 at kernel/irq/manage.c:1546 __free_irq+0xa4/0x2c0
[ 17.410073] Modules linked in: libahci aesni_intel(+) snd crypto_simd soundcore glue_helper pcc_cpufreq(-) mxm_wmi drm dcdbas megaraid_sas(+) ipmi_si(+) ipmi_devintf cryptd pcspkr libata shpchp ipmi_msghandler wmi acpi_power_meter ip_tables
[ 17.410085] CPU: 0 PID: 454 Comm: kworker/0:2 Not tainted 4.15.0-rc5-00041-g4b44a5b #1
[ 17.410086] Hardware name: Dell Inc. PowerEdge R630/0CNCJW, BIOS 2.1.7 06/16/2016
[ 17.410088] Workqueue: events work_for_cpu_fn
[ 17.410090] RIP: 0010:__free_irq+0xa4/0x2c0
[ 17.410091] RSP: 0018:ffffc9000e087c98 EFLAGS: 00010092
[ 17.410093] RAX: 0000000000000023 RBX: 00000000000000ab RCX: 0000000000000000
[ 17.410094] RDX: 0000000000000001 RSI: 0000000000000002 RDI: 0000000000000086
[ 17.410095] RBP: ffff881fc3066418 R08: 0000000000000000 R09: 0000000000000023
[ 17.410096] R10: 0000000000000000 R11: 0000000000000000 R12: 00000000000000ab
[ 17.410097] R13: ffff881fd0bd3560 R14: ffff881fd0bd34a4 R15: ffff881fd0bd3400
[ 17.410099] FS: 0000000000000000(0000) GS:ffff881fff600000(0000) knlGS:0000000000000000
[ 17.410100] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[ 17.410101] CR2: 00007f2ca0f9e682 CR3: 000000407ee09003 CR4: 00000000001606f0
[ 17.410102] Call Trace:
[ 17.410105] free_irq+0x30/0x60
[ 17.410110] megasas_destroy_irqs+0x50/0x80 [megaraid_sas]
[ 17.410115] megasas_init_fw+0x1191/0x1910 [megaraid_sas]
[ 17.410120] megasas_probe_one+0x10c/0x620 [megaraid_sas]
[ 17.410122] local_pci_probe+0x3d/0x90
[ 17.410125] work_for_cpu_fn+0x10/0x20
[ 17.410126] process_one_work+0x18f/0x3e0
[ 17.410128] worker_thread+0x1e3/0x3b0
[ 17.410130] ? process_one_work+0x3e0/0x3e0
[ 17.410132] kthread+0x11c/0x140
[ 17.410134] ? kthread_create_worker_on_cpu+0x50/0x50
[ 17.410137] ret_from_fork+0x1f/0x30
[ 17.410138] Code: 39 6a 08 75 0e e9 eb 01 00 00 48 39 6b 08 74 59 48 89 da 48 8b 5a 18 48 85 db 75 ee 44 89 e6 48 c7 c7 60 2b cb 81 e8 5c 0e fa ff <0f> ff 48 8b 34 24 4c 89 f7 e8 0e f4 83 00 49 8b 47 40 48 8b 80
[ 17.410164] ---[ end trace 7df320fe9d8398c7 ]---
To reproduce:
git clone https://github.com/intel/lkp-tests.git
cd lkp-tests
bin/lkp install job.yaml # job file is attached in this email
bin/lkp run job.yaml
Thanks,
lkp
3 years
038adb295b ("ksm: replace jhash2 with faster hash"): BUG: sleeping function called from invalid context at mm/slab.h:420
by kernel test robot
Greetings,
0day kernel testing robot got the below dmesg and the first bad commit is
https://github.com/0day-ci/linux/commits/Timofey-Titovets/ksm-replace-jha...
commit 038adb295b0c04721a12b276f8b521249fd2db9d
Author: Timofey Titovets <nefelim4ag(a)gmail.com>
AuthorDate: Fri Dec 29 12:52:41 2017 +0300
Commit: 0day robot <fengguang.wu(a)intel.com>
CommitDate: Sun Dec 31 15:54:27 2017 +0800
ksm: replace jhash2 with faster hash
Pickup, Sioh Lee crc32 patch, after some long conversation
and hassles, merge with my work on xxhash, add
choice fastest hash helper.
Base idea are same, replace jhash2 with something faster.
Perf numbers:
Intel(R) Xeon(R) CPU E5-2420 v2 @ 2.20GHz
ksm: crc32c hash() 12081 MB/s
ksm: jhash2 hash() 1569 MB/s
ksm: xxh64 hash() 8770 MB/s
ksm: xxh32 hash() 4529 MB/s
As jhash2 always will be slower, just drop it from choice.
Add function to autoselect hash algo on boot, based on speed,
like raid6 code does.
Move init of zero_hash from init, to start of ksm thread,
as ksm init run on early kernel init, run perf testing stuff on
main kernel thread looks bad to me.
One problem exists with that patch,
ksm init run too early, and crc32c module, even compiled in
can't be found, so i see:
- ksm: alloc crc32c shash error 2 in dmesg.
I give up on that, so ideas welcomed.
Only idea that i have, are to avoid early init by moving
zero_checksum to sysfs_store parm,
i.e. that's default to false, and that will work, i think.
Thanks.
Changes:
v1 -> v2:
- Merge xxhash/crc32 patches
- Replace crc32 with crc32c (crc32 have same as jhash2 speed)
- Add auto speed test and auto choice of fastest hash function
Signed-off-by: Timofey Titovets <nefelim4ag(a)gmail.com>
Signed-off-by: leesioh <solee(a)os.korea.ac.kr>
CC: Andrea Arcangeli <aarcange(a)redhat.com>
CC: linux-mm(a)kvack.org
CC: kvm(a)vger.kernel.org
a4f20e3ed1 pci: test for unexpectedly disabled bridges
038adb295b ksm: replace jhash2 with faster hash
+----------------------------------------------------------------+------------+------------+
| | a4f20e3ed1 | 038adb295b |
+----------------------------------------------------------------+------------+------------+
| boot_successes | 35 | 0 |
| boot_failures | 0 | 34 |
| BUG:sleeping_function_called_from_invalid_context_at_mm/slab.h | 0 | 34 |
+----------------------------------------------------------------+------------+------------+
[ 0.361000] ACPI: bus type PCI registered
[ 0.373807] PCI: PCI BIOS area is rw and x. Use pci=nobios if you want it NX.
[ 0.375445] PCI: PCI BIOS revision 2.10 entry at 0xfd501, last bus=0
[ 0.376802] PCI: Using configuration type 1 for base access
[ 0.420610] HugeTLB registered 2.00 MiB page size, pre-allocated 0 pages
[ 0.425175] BUG: sleeping function called from invalid context at mm/slab.h:420
[ 0.425386] in_atomic(): 1, irqs_disabled(): 0, pid: 26, name: ksmd
[ 0.425386] no locks held by ksmd/26.
[ 0.425386] CPU: 1 PID: 26 Comm: ksmd Not tainted 4.15.0-rc4-mm1-00235-g038adb2 #1
[ 0.426091] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.10.2-1 04/01/2014
[ 0.428008] Call Trace:
[ 0.428664] dump_stack+0x92/0xcc
[ 0.429474] ___might_sleep+0x137/0x150
[ 0.430000] __might_sleep+0x75/0x80
[ 0.430000] ? fs_reclaim_release+0x11/0x30
[ 0.430000] kmem_cache_alloc_trace+0x56/0x240
[ 0.440092] cryptd: max_cpu_qlen set to 1000
[ 0.440598] ? fasthash+0x5e/0x2f0
[ 0.440598] fasthash+0x5e/0x2f0
[ 0.440598] ? kmap_atomic_prot+0x48/0x170
[ 0.440598] ksm_scan_thread+0x62/0x1900
[ 0.440598] ? __schedule+0x706/0x770
[ 0.440598] ? complete+0x3f/0x50
[ 0.440598] kthread+0x101/0x110
[ 0.440598] ? __stable_node_chain+0x70/0x70
[ 0.440598] ? __kthread_cancel_work+0x70/0x70
[ 0.440598] ret_from_fork+0x19/0x30
[ 0.450055] ksm: alloc crc32c shash error 2
[ 0.563943] ksm: xxh32 hash() 3432 MB/s
[ 0.610019] raid6: mmxx1 gen() 3104 MB/s
[ 0.683945] ksm: xxh64 hash() 1061 MB/s
[ 0.684948] ksm: choise xxh32 as hash function
# HH:MM RESULT GOOD BAD GOOD_BUT_DIRTY DIRTY_NOT_BAD
git bisect start 038adb295b0c04721a12b276f8b521249fd2db9d a4f20e3ed193cd4b2f742ce37f88112c7441146f --
# first bad commit: [038adb295b0c04721a12b276f8b521249fd2db9d] ksm: replace jhash2 with faster hash
git bisect good a4f20e3ed193cd4b2f742ce37f88112c7441146f # 17:31 G 31 0 0 0 pci: test for unexpectedly disabled bridges
# extra tests with debug options
git bisect bad 038adb295b0c04721a12b276f8b521249fd2db9d # 17:44 B 0 11 32 8 ksm: replace jhash2 with faster hash
# extra tests on HEAD of linux-review/Timofey-Titovets/ksm-replace-jhash2-with-faster-hash/20171231-155425
git bisect bad 038adb295b0c04721a12b276f8b521249fd2db9d # 17:44 B 0 34 50 0 ksm: replace jhash2 with faster hash
# extra tests on tree/branch linux-review/Timofey-Titovets/ksm-replace-jhash2-with-faster-hash/20171231-155425
git bisect bad 038adb295b0c04721a12b276f8b521249fd2db9d # 17:45 B 0 34 50 0 ksm: replace jhash2 with faster hash
# extra tests with first bad commit reverted
git bisect good b245f96d362d0b1b9430e7fb1067312a52b8748c # 17:56 G 10 0 0 0 Revert "ksm: replace jhash2 with faster hash"
---
0-DAY kernel test infrastructure Open Source Technology Center
https://lists.01.org/pipermail/lkp Intel Corporation
3 years