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]
Message-ID: <202303141612.8a6b6b04-oliver.sang@intel.com>
Date:   Tue, 14 Mar 2023 17:15:30 +0800
From:   kernel test robot <oliver.sang@...el.com>
To:     Thomas Weißschuh <linux@...ssschuh.net>
CC:     <oe-lkp@...ts.linux.dev>, <lkp@...el.com>,
        Mirsad Todorovac <mirsad.todorovac@....unizg.hr>,
        <linux-block@...r.kernel.org>, Jens Axboe <axboe@...nel.dk>,
        <linux-kernel@...r.kernel.org>,
        Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
        Thomas Weißschuh <linux@...ssschuh.net>
Subject: Re: [PATCH] block: don't embed integrity_kobj into gendisk


Greeting,

FYI, we noticed WARNING:at_lib/kobject.c:#kobject_get due to commit (built with gcc-11):

commit: a3e3d566c4472dd5079a8f99e6b8ae259bcfe429 ("[PATCH] block: don't embed integrity_kobj into gendisk")
url: https://github.com/intel-lab-lkp/linux/commits/Thomas-Wei-schuh/block-don-t-embed-integrity_kobj-into-gendisk/20230310-042440
patch link: https://lore.kernel.org/all/20230309-kobj_release-gendisk_integrity-v1-1-a240f54eac60@weissschuh.net/
patch subject: [PATCH] block: don't embed integrity_kobj into gendisk

in testcase: boot

on test machine: qemu-system-x86_64 -enable-kvm -cpu SandyBridge -smp 2 -m 16G

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


If you fix the issue, kindly add following tag
| Reported-by: kernel test robot <oliver.sang@...el.com>
| Link: https://lore.kernel.org/oe-lkp/202303141612.8a6b6b04-oliver.sang@intel.com


[   20.061287][  T135] ------------[ cut here ]------------
[   20.062355][  T135] kobject: '(null)' (00000000a80e27c2): is not initialized, yet kobject_get() is being called.
[ 20.063941][ T135] WARNING: CPU: 0 PID: 135 at lib/kobject.c:632 kobject_get (kbuild/src/x86_64/lib/kobject.c:632) 
[   20.065168][  T135] Modules linked in: sr_mod(+) cdrom intel_rapl_msr bochs(+) intel_rapl_common sg crct10dif_pclmul drm_vram_helper crc32_pclmul ata_generic drm_ttm_helper crc32c_intel ppdev ghash_clmulni_intel ttm drm_kms_helper ata_piix sha512_ssse3 joydev rapl libata parport_pc i2c_piix4 syscopyarea serio_raw sysfillrect sysimgblt ipmi_devintf ipmi_msghandler parport drm fuse ip_tables
[   20.070566][  T135] CPU: 0 PID: 135 Comm: systemd-udevd Not tainted 6.3.0-rc1-00107-ga3e3d566c447 #1
[   20.071982][  T135] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.16.0-debian-1.16.0-5 04/01/2014
[ 20.073618][ T135] RIP: 0010:kobject_get (kbuild/src/x86_64/lib/kobject.c:632) 
[ 20.074487][ T135] Code: 44 24 38 85 c0 74 3b 8d 50 01 09 c2 78 20 4c 89 e0 41 5c c3 cc cc cc cc 48 8b 37 48 89 fa 48 c7 c7 68 86 74 82 e8 74 1c 23 ff <0f> 0b eb c4 be 01 00 00 00 e8 a6 30 83 ff 4c 89 e0 41 5c c3 cc cc
All code
========
   0:	44 24 38             	rex.R and $0x38,%al
   3:	85 c0                	test   %eax,%eax
   5:	74 3b                	je     0x42
   7:	8d 50 01             	lea    0x1(%rax),%edx
   a:	09 c2                	or     %eax,%edx
   c:	78 20                	js     0x2e
   e:	4c 89 e0             	mov    %r12,%rax
  11:	41 5c                	pop    %r12
  13:	c3                   	retq   
  14:	cc                   	int3   
  15:	cc                   	int3   
  16:	cc                   	int3   
  17:	cc                   	int3   
  18:	48 8b 37             	mov    (%rdi),%rsi
  1b:	48 89 fa             	mov    %rdi,%rdx
  1e:	48 c7 c7 68 86 74 82 	mov    $0xffffffff82748668,%rdi
  25:	e8 74 1c 23 ff       	callq  0xffffffffff231c9e
  2a:*	0f 0b                	ud2    		<-- trapping instruction
  2c:	eb c4                	jmp    0xfffffffffffffff2
  2e:	be 01 00 00 00       	mov    $0x1,%esi
  33:	e8 a6 30 83 ff       	callq  0xffffffffff8330de
  38:	4c 89 e0             	mov    %r12,%rax
  3b:	41 5c                	pop    %r12
  3d:	c3                   	retq   
  3e:	cc                   	int3   
  3f:	cc                   	int3   

Code starting with the faulting instruction
===========================================
   0:	0f 0b                	ud2    
   2:	eb c4                	jmp    0xffffffffffffffc8
   4:	be 01 00 00 00       	mov    $0x1,%esi
   9:	e8 a6 30 83 ff       	callq  0xffffffffff8330b4
   e:	4c 89 e0             	mov    %r12,%rax
  11:	41 5c                	pop    %r12
  13:	c3                   	retq   
  14:	cc                   	int3   
  15:	cc                   	int3   
[   20.077668][  T135] RSP: 0018:ffffc900005b3b60 EFLAGS: 00010282
[   20.078759][  T135] RAX: 0000000000000000 RBX: ffff888100419308 RCX: 0000000000000000
[   20.080086][  T135] RDX: ffff88842fc28800 RSI: ffff88842fc1c700 RDI: ffff88842fc1c700
[   20.081443][  T135] RBP: ffff888129a7cc40 R08: 0000000000000000 R09: 00000000ffff7fff
[   20.082794][  T135] R10: ffffc900005b3a00 R11: ffffffff82bd8d88 R12: ffff888129a7c358
[   20.083956][  T135] R13: ffff888129a7cc40 R14: ffff888129a7cc48 R15: ffff888100419308
[   20.085254][  T135] FS:  00007fad8b3ea8c0(0000) GS:ffff88842fc00000(0000) knlGS:0000000000000000
[   20.086675][  T135] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[   20.087790][  T135] CR2: 00007f6231713000 CR3: 000000010095a000 CR4: 00000000000006f0
[   20.090711][  T135] Call Trace:
[   20.092700][  T135]  <TASK>
[ 20.094808][ T135] kobject_add_internal (kbuild/src/x86_64/include/linux/spinlock.h:350 kbuild/src/x86_64/lib/kobject.c:171 kbuild/src/x86_64/lib/kobject.c:222) 
[ 20.097699][ T135] kobject_init_and_add (kbuild/src/x86_64/lib/kobject.c:366 kbuild/src/x86_64/lib/kobject.c:449) 
[ 20.100311][ T135] blk_integrity_add (kbuild/src/x86_64/block/blk-integrity.c:463) 
[ 20.102625][ T135] device_add_disk (kbuild/src/x86_64/block/genhd.c:483) 
[ 20.104734][ T135] sr_probe (kbuild/src/x86_64/drivers/scsi/sr.c:695) sr_mod
[ 20.107144][ T135] really_probe (kbuild/src/x86_64/drivers/base/dd.c:552 kbuild/src/x86_64/drivers/base/dd.c:631) 
[ 20.109364][ T135] __driver_probe_device (kbuild/src/x86_64/drivers/base/dd.c:709 kbuild/src/x86_64/drivers/base/dd.c:766) 
[ 20.111710][ T135] driver_probe_device (kbuild/src/x86_64/drivers/base/dd.c:798) 
[ 20.113734][ T135] __driver_attach (kbuild/src/x86_64/drivers/base/dd.c:1185) 
[ 20.115965][ T135] ? __pfx___driver_attach (kbuild/src/x86_64/drivers/base/dd.c:1125) 
[ 20.118091][ T135] bus_for_each_dev (kbuild/src/x86_64/drivers/base/bus.c:368) 
[ 20.120112][ T135] bus_add_driver (kbuild/src/x86_64/drivers/base/bus.c:673) 
[ 20.122149][ T135] driver_register (kbuild/src/x86_64/drivers/base/driver.c:246) 
[ 20.124546][ T135] ? __pfx_init_module (kbuild/src/x86_64/drivers/scsi/sr.c:147) sr_mod
[ 20.126992][ T135] init_sr (kbuild/src/x86_64/drivers/scsi/sr.c:157) sr_mod
[ 20.129130][ T135] ? __pfx_init_module (kbuild/src/x86_64/drivers/scsi/sr.c:147) sr_mod
[ 20.131362][ T135] do_one_initcall (kbuild/src/x86_64/init/main.c:1306) 
[ 20.133391][ T135] ? kmalloc_trace (kbuild/src/x86_64/mm/slab_common.c:1064) 
[ 20.135626][ T135] do_init_module (kbuild/src/x86_64/kernel/module/main.c:2464) 
[ 20.137569][ T135] __do_sys_finit_module (kbuild/src/x86_64/kernel/module/main.c:2973) 
[ 20.139730][ T135] do_syscall_64 (kbuild/src/x86_64/arch/x86/entry/common.c:50 kbuild/src/x86_64/arch/x86/entry/common.c:80) 
[ 20.141556][ T135] entry_SYSCALL_64_after_hwframe (kbuild/src/x86_64/arch/x86/entry/entry_64.S:120) 
[   20.144045][  T135] RIP: 0033:0x7fad8b8a39b9
[ 20.145886][ T135] Code: 00 c3 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 44 00 00 48 89 f8 48 89 f7 48 89 d6 48 89 ca 4d 89 c2 4d 89 c8 4c 8b 4c 24 08 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 8b 0d a7 54 0c 00 f7 d8 64 89 01 48
All code
========
   0:	00 c3                	add    %al,%bl
   2:	66 2e 0f 1f 84 00 00 	nopw   %cs:0x0(%rax,%rax,1)
   9:	00 00 00 
   c:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
  11:	48 89 f8             	mov    %rdi,%rax
  14:	48 89 f7             	mov    %rsi,%rdi
  17:	48 89 d6             	mov    %rdx,%rsi
  1a:	48 89 ca             	mov    %rcx,%rdx
  1d:	4d 89 c2             	mov    %r8,%r10
  20:	4d 89 c8             	mov    %r9,%r8
  23:	4c 8b 4c 24 08       	mov    0x8(%rsp),%r9
  28:	0f 05                	syscall 
  2a:*	48 3d 01 f0 ff ff    	cmp    $0xfffffffffffff001,%rax		<-- trapping instruction
  30:	73 01                	jae    0x33
  32:	c3                   	retq   
  33:	48 8b 0d a7 54 0c 00 	mov    0xc54a7(%rip),%rcx        # 0xc54e1
  3a:	f7 d8                	neg    %eax
  3c:	64 89 01             	mov    %eax,%fs:(%rcx)
  3f:	48                   	rex.W

Code starting with the faulting instruction
===========================================
   0:	48 3d 01 f0 ff ff    	cmp    $0xfffffffffffff001,%rax
   6:	73 01                	jae    0x9
   8:	c3                   	retq   
   9:	48 8b 0d a7 54 0c 00 	mov    0xc54a7(%rip),%rcx        # 0xc54b7
  10:	f7 d8                	neg    %eax
  12:	64 89 01             	mov    %eax,%fs:(%rcx)
  15:	48                   	rex.W


To reproduce:

        # build kernel
	cd linux
	cp config-6.3.0-rc1-00107-ga3e3d566c447 .config
	make HOSTCC=gcc-11 CC=gcc-11 ARCH=x86_64 olddefconfig prepare modules_prepare bzImage modules
	make HOSTCC=gcc-11 CC=gcc-11 ARCH=x86_64 INSTALL_MOD_PATH=<mod-install-dir> modules_install
	cd <mod-install-dir>
	find lib/ | cpio -o -H newc --quiet | gzip > modules.cgz


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

        # if come across any failure that blocks the test,
        # please remove ~/.lkp and /lkp dir to run from a clean state.



-- 
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests



View attachment "config-6.3.0-rc1-00107-ga3e3d566c447" of type "text/plain" (168307 bytes)

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

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

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ