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] [thread-next>] [day] [month] [year] [list]
Date:   Tue, 22 Sep 2020 14:22:32 +0530
From:   Anshuman Khandual <anshuman.khandual@....com>
To:     "Aneesh Kumar K.V" <aneesh.kumar@...ux.ibm.com>,
        kernel test robot <rong.a.chen@...el.com>
Cc:     Stephen Rothwell <sfr@...b.auug.org.au>,
        Christophe Leroy <christophe.leroy@...roup.eu>,
        Michael Ellerman <mpe@...erman.id.au>,
        Andrew Morton <akpm@...ux-foundation.org>,
        LKML <linux-kernel@...r.kernel.org>, lkp@...ts.01.org,
        lkp@...el.com
Subject: Re: [mm/debug_vm_pgtable/locks] e2aad6f1d2:
 BUG:unable_to_handle_page_fault_for_address



On 09/22/2020 09:33 AM, Aneesh Kumar K.V wrote:
> On 9/21/20 2:51 PM, kernel test robot wrote:
>> Greeting,
>>
>> FYI, we noticed the following commit (built with gcc-9):
>>
>> commit: e2aad6f1d232b457ea6a3194992dd4c0a83534a5 ("mm/debug_vm_pgtable/locks: take correct page table lock")
>> https://git.kernel.org/cgit/linux/kernel/git/next/linux-next.git master
>>
>>
>> in testcase: trinity
>> version: trinity-i386
>> 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-i386 -enable-kvm -cpu SandyBridge -smp 2 -m 8G
>>
>> caused below changes (please refer to attached dmesg/kmsg for entire log/backtrace):
>>
>>
>> +----------------------------------------------------------------------+------------+------------+
>> |                                                                      | c50eb1ed65 | e2aad6f1d2 |
>> +----------------------------------------------------------------------+------------+------------+
>> | boot_successes                                                       | 0          | 0          |
>> | boot_failures                                                        | 61         | 17         |
>> | BUG:workqueue_lockup-pool                                            | 1          |            |
>> | BUG:sleeping_function_called_from_invalid_context_at_mm/page_alloc.c | 60         | 17         |
>> | BUG:unable_to_handle_page_fault_for_address                          | 0          | 17         |
>> | Oops:#[##]                                                           | 0          | 17         |
>> | EIP:ptep_get                                                         | 0          | 17         |
>> | Kernel_panic-not_syncing:Fatal_exception                             | 0          | 17         |
>> +----------------------------------------------------------------------+------------+------------+
>>
>>
>> If you fix the issue, kindly add following tag
>> Reported-by: kernel test robot <rong.a.chen@...el.com>
>>
>>
>> [   28.726464] BUG: sleeping function called from invalid context at mm/page_alloc.c:4822
>> [   28.727835] in_atomic(): 1, irqs_disabled(): 0, non_block: 0, pid: 1, name: swapper
>> [   28.729221] no locks held by swapper/1.
>> [   28.729954] CPU: 0 PID: 1 Comm: swapper Not tainted 5.9.0-rc3-00324-ge2aad6f1d232b4 #1
>> [   28.731484] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.12.0-1 04/01/2014
>> [   28.732891] Call Trace:
>> [   28.733295]  ? show_stack+0x48/0x50
>> [   28.733943]  dump_stack+0x1b/0x1d
>> [   28.734569]  ___might_sleep+0x205/0x219
>> [   28.735292]  __might_sleep+0x106/0x10f
>> [   28.736022]  __alloc_pages_nodemask+0xe0/0x2c8
>> [   28.736845]  swap_migration_tests+0x62/0x295
>> [   28.737639]  debug_vm_pgtable+0x587/0x9b5
>> [   28.738374]  ? pte_advanced_tests+0x267/0x267
>> [   28.739318]  do_one_initcall+0x129/0x31c
>> [   28.740023]  ? rcu_read_lock_sched_held+0x46/0x74
>> [   28.740944]  kernel_init_freeable+0x201/0x250
>> [   28.741763]  ? rest_init+0xf8/0xf8
>> [   28.742401]  kernel_init+0xe/0x15d
>> [   28.743040]  ? rest_init+0xf8/0xf8
>> [   28.743694]  ret_from_fork+0x1c/0x30
> 
> 
> This should be fixed by
> https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/commit/mm/debug_vm_pgtable.c?id=3a4f9a45eadb6ed5fc04686e8db4dc7bb1caec44
> 
>> [   28.744364] BUG: unable to handle page fault for address: fffbbea4
>> [   28.745465] #PF: supervisor read access in kernel mode
>> [   28.746373] #PF: error_code(0x0000) - not-present page
>> [   28.747275] *pde = 0492b067 *pte = 00000000
>> [   28.748054] Oops: 0000 [#1]
>> [   28.748548] CPU: 0 PID: 1 Comm: swapper Tainted: G        W         5.9.0-rc3-00324-ge2aad6f1d232b4 #1
>> [   28.750188] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.12.0-1 04/01/2014
>> [   28.751641] EIP: ptep_get+0x0/0x3
>> [   28.752226] Code: 5d fc c9 c3 55 c1 e8 1a 89 e5 53 31 db 83 f8 1f 6a 00 0f 94 c3 b8 80 67 02 c4 31 c9 89 da e8 16 5c f1 ff 89 d8 8b 5d fc c9 c3 <8b> 00 c3 55 31 c9 89 e5 57 56 53 8b 70 04 89 c3 b8 10 68 02 c4 6a
>> [   28.755465] EAX: fffbbea4 EBX: fffbbea4 ECX: 000047bd EDX: fffbbea4
>> [   28.756418] ESI: 000047bd EDI: 00000025 EBP: f406bed8 ESP: f406bebc
>> [   28.757522] DS: 007b ES: 007b FS: 0000 GS: 0000 SS: 0068 EFLAGS: 00010286
>> [   28.758739] CR0: 80050033 CR2: fffbbea4 CR3: 04928000 CR4: 000406d0
>> [   28.759828] Call Trace:
>> [   28.760235]  ? hugetlb_advanced_tests+0x2a/0x27f
>> [   28.761099]  ? do_raw_spin_unlock+0xd7/0x112
>> [   28.761872]  debug_vm_pgtable+0x927/0x9b5
>> [   28.762578]  ? pte_advanced_tests+0x267/0x267
>> [   28.763462]  do_one_initcall+0x129/0x31c
>> [   28.764134]  ? rcu_read_lock_sched_held+0x46/0x74
>> [   28.764948]  kernel_init_freeable+0x201/0x250
>> [   28.765654]  ? rest_init+0xf8/0xf8
>> [   28.766277]  kernel_init+0xe/0x15d
>> [   28.766878]  ? rest_init+0xf8/0xf8
>> [   28.767488]  ret_from_fork+0x1c/0x30
>> [   28.768052] Modules linked in:
>> [   28.768532] CR2: 00000000fffbbea4
>> [   28.769065] ---[ end trace 9c4395cf49c7b3e7 ]---
>>
> 
> IIUC, Anshuman is reworking the test to follow the page table update rules.

The failure here has been attributed to this particular patch, and
IIRC we did not see this particular failure before this series.

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ