Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755199AbcLSJZT (ORCPT ); Mon, 19 Dec 2016 04:25:19 -0500 Received: from mx2.suse.de ([195.135.220.15]:44389 "EHLO mx2.suse.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753042AbcLSJZO (ORCPT ); Mon, 19 Dec 2016 04:25:14 -0500 Date: Mon, 19 Dec 2016 10:25:08 +0100 From: Jan Kara To: Mike Galbraith Cc: Michal Hocko , linux-mm@kvack.org, linux-fsdevel@vger.kernel.org, Andrew Morton , Dave Chinner , "Theodore Ts'o" , Chris Mason , David Sterba , Jan Kara , ceph-devel@vger.kernel.org, cluster-devel@redhat.com, linux-nfs@vger.kernel.org, logfs@logfs.org, linux-xfs@vger.kernel.org, linux-ext4@vger.kernel.org, linux-btrfs@vger.kernel.org, linux-mtd@lists.infradead.org, reiserfs-devel@vger.kernel.org, linux-ntfs-dev@lists.sourceforge.net, linux-f2fs-devel@lists.sourceforge.net, linux-afs@lists.infradead.org, LKML , "Peter Zijlstra (Intel)" Subject: Re: [PATCH 0/9 v2] scope GFP_NOFS api Message-ID: <20161219092508.GC17598@quack2.suse.cz> References: <20161215140715.12732-1-mhocko@kernel.org> <1481900758.31172.20.camel@gmail.com> <20161216153502.GP13940@dhcp22.suse.cz> <1481905648.4304.12.camel@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1481905648.4304.12.camel@gmail.com> User-Agent: Mutt/1.5.24 (2015-08-30) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 24245 Lines: 392 On Fri 16-12-16 17:27:28, Mike Galbraith wrote: > On Fri, 2016-12-16 at 16:35 +0100, Michal Hocko wrote: > > On Fri 16-12-16 16:05:58, Mike Galbraith wrote: > > > On Thu, 2016-12-15 at 15:07 +0100, Michal Hocko wrote: > > > > Hi, > > > > I have posted the previous version here [1]. Since then I have added a > > > > support to suppress reclaim lockdep warnings (__GFP_NOLOCKDEP) to allow > > > > removing GFP_NOFS usage motivated by the lockdep false positives. On top > > > > of that I've tried to convert few KM_NOFS usages to use the new flag in > > > > the xfs code base. This would need a review from somebody familiar with > > > > xfs of course. > > > > > > The wild ass guess below prevents the xfs explosion below when running > > > ltp zram tests. > > > > Yes this looks correct. Thanks for noticing. I will fold it to the > > patch2. Thanks for testing Mike! > > I had ulterior motives, was hoping you might have made the irksome RT > gripe below just _go away_, as staring at it ain't working out ;-) > > [ 1441.309006] ========================================================= > [ 1441.309006] [ INFO: possible irq lock inversion dependency detected ] > [ 1441.309007] 4.10.0-rt9-rt #11 Tainted: G E > [ 1441.309007] --------------------------------------------------------- > [ 1441.309008] kswapd0/165 just changed the state of lock: > [ 1441.309009] (&journal->j_state_lock){+.+.-.}, at: [] jbd2_complete_transaction+0x20/0x90 [jbd2] > [ 1441.309017] but this lock took another, RECLAIM_FS-unsafe lock in the past: > [ 1441.309017] (&tb->tb6_lock){+.+.+.} > [ 1441.309018] and interrupts could create inverse lock ordering between them. > [ 1441.309018] other info that might help us debug this: > [ 1441.309018] Chain exists of: &journal->j_state_lock --> &journal->j_list_lock --> &tb->tb6_lock > [ 1441.309019] Possible interrupt unsafe locking scenario: > [ 1441.309019] CPU0 CPU1 > [ 1441.309019] ---- ---- > [ 1441.309019] lock(&tb->tb6_lock); > [ 1441.309020] local_irq_disable(); > [ 1441.309020] lock(&journal->j_state_lock); > [ 1441.309020] lock(&journal->j_list_lock); > [ 1441.309021] > [ 1441.309021] lock(&journal->j_state_lock); Hum, so AFAICT this is just a false positive resulting from lockdep allocation context tracking being implemented via interrupt context tracking. At least I don't see how you could possibly enter FS reclaim under &tb->tb6_lock... Honza > [ 1441.309021] *** DEADLOCK *** > [ 1441.309022] 2 locks held by kswapd0/165: > [ 1441.309022] #0: (shrinker_rwsem){+.+...}, at: [] shrink_slab+0x7a/0x6c0 > [ 1441.309027] #1: (&type->s_umount_key#29){+.+.+.}, at: [] trylock_super+0x1b/0x50 > [ 1441.309030] the shortest dependencies between 2nd lock and 1st lock: > [ 1441.309031] -> (&tb->tb6_lock){+.+.+.} ops: 271 { > [ 1441.309032] HARDIRQ-ON-W at: > [ 1441.309035] [] __lock_acquire+0x938/0x1770 > [ 1441.309036] [] lock_acquire+0xd4/0x270 > [ 1441.309039] [] rt_write_lock+0x31/0x40 > [ 1441.309041] [] __ip6_ins_rt+0x33/0x70 > [ 1441.309043] [] ip6_route_add+0x81/0xd0 > [ 1441.309044] [] addrconf_prefix_route+0x133/0x1d0 > [ 1441.309046] [] inet6_addr_add+0x1eb/0x250 > [ 1441.309047] [] inet6_rtm_newaddr+0x33b/0x410 > [ 1441.309049] [] rtnetlink_rcv_msg+0x95/0x220 > [ 1441.309051] [] netlink_rcv_skb+0xa7/0xc0 > [ 1441.309053] [] rtnetlink_rcv+0x28/0x30 > [ 1441.309054] [] netlink_unicast+0x143/0x1f0 > [ 1441.309055] [] netlink_sendmsg+0x322/0x3a0 > [ 1441.309057] [] sock_sendmsg+0x38/0x50 > [ 1441.309058] [] SYSC_sendto+0xf6/0x170 > [ 1441.309060] [] SyS_sendto+0xe/0x10 > [ 1441.309061] [] entry_SYSCALL_64_fastpath+0x23/0xc6 > [ 1441.309061] SOFTIRQ-ON-W at: > [ 1441.309063] [] __lock_acquire+0x283/0x1770 > [ 1441.309064] [] lock_acquire+0xd4/0x270 > [ 1441.309064] [] rt_write_lock+0x31/0x40 > [ 1441.309065] [] __ip6_ins_rt+0x33/0x70 > [ 1441.309067] [] ip6_route_add+0x81/0xd0 > [ 1441.309067] [] addrconf_prefix_route+0x133/0x1d0 > [ 1441.309068] [] inet6_addr_add+0x1eb/0x250 > [ 1441.309069] [] inet6_rtm_newaddr+0x33b/0x410 > [ 1441.309071] [] rtnetlink_rcv_msg+0x95/0x220 > [ 1441.309073] [] netlink_rcv_skb+0xa7/0xc0 > [ 1441.309074] [] rtnetlink_rcv+0x28/0x30 > [ 1441.309075] [] netlink_unicast+0x143/0x1f0 > [ 1441.309077] [] netlink_sendmsg+0x322/0x3a0 > [ 1441.309078] [] sock_sendmsg+0x38/0x50 > [ 1441.309079] [] SYSC_sendto+0xf6/0x170 > [ 1441.309080] [] SyS_sendto+0xe/0x10 > [ 1441.309081] [] entry_SYSCALL_64_fastpath+0x23/0xc6 > [ 1441.309081] RECLAIM_FS-ON-W at: > [ 1441.309082] [] mark_held_locks+0x66/0x90 > [ 1441.309084] [] lockdep_trace_alloc+0xd8/0x120 > [ 1441.309085] [] kmem_cache_alloc_node+0x36/0x310 > [ 1441.309086] [] __alloc_skb+0x4e/0x280 > [ 1441.309088] [] inet6_rt_notify+0x5c/0x130 > [ 1441.309089] [] fib6_add+0x56b/0xa30 > [ 1441.309090] [] __ip6_ins_rt+0x48/0x70 > [ 1441.309091] [] ip6_route_add+0x81/0xd0 > [ 1441.309092] [] addrconf_prefix_route+0x133/0x1d0 > [ 1441.309093] [] inet6_addr_add+0x1eb/0x250 > [ 1441.309094] [] inet6_rtm_newaddr+0x33b/0x410 > [ 1441.309096] [] rtnetlink_rcv_msg+0x95/0x220 > [ 1441.309097] [] netlink_rcv_skb+0xa7/0xc0 > [ 1441.309098] [] rtnetlink_rcv+0x28/0x30 > [ 1441.309099] [] netlink_unicast+0x143/0x1f0 > [ 1441.309100] [] netlink_sendmsg+0x322/0x3a0 > [ 1441.309102] [] sock_sendmsg+0x38/0x50 > [ 1441.309103] [] SYSC_sendto+0xf6/0x170 > [ 1441.309104] [] SyS_sendto+0xe/0x10 > [ 1441.309105] [] entry_SYSCALL_64_fastpath+0x23/0xc6 > [ 1441.309105] INITIAL USE at: > [ 1441.309106] [] __lock_acquire+0x2ce/0x1770 > [ 1441.309107] [] lock_acquire+0xd4/0x270 > [ 1441.309108] [] rt_write_lock+0x31/0x40 > [ 1441.309109] [] __ip6_ins_rt+0x33/0x70 > [ 1441.309110] [] ip6_route_add+0x81/0xd0 > [ 1441.309111] [] addrconf_prefix_route+0x133/0x1d0 > [ 1441.309112] [] inet6_addr_add+0x1eb/0x250 > [ 1441.309113] [] inet6_rtm_newaddr+0x33b/0x410 > [ 1441.309115] [] rtnetlink_rcv_msg+0x95/0x220 > [ 1441.309116] [] netlink_rcv_skb+0xa7/0xc0 > [ 1441.309117] [] rtnetlink_rcv+0x28/0x30 > [ 1441.309118] [] netlink_unicast+0x143/0x1f0 > [ 1441.309119] [] netlink_sendmsg+0x322/0x3a0 > [ 1441.309120] [] sock_sendmsg+0x38/0x50 > [ 1441.309121] [] SYSC_sendto+0xf6/0x170 > [ 1441.309122] [] SyS_sendto+0xe/0x10 > [ 1441.309123] [] entry_SYSCALL_64_fastpath+0x23/0xc6 > [ 1441.309123] } > [ 1441.309125] ... key at: [] __key.59908+0x0/0x8 > [ 1441.309125] ... acquired at: > [ 1441.309126] [] lock_acquire+0xd4/0x270 > [ 1441.309127] [] rt_read_lock+0x47/0x60 > [ 1441.309128] [] ip6_pol_route+0x61/0xa60 > [ 1441.309130] [] ip6_pol_route_input+0x1a/0x20 > [ 1441.309131] [] fib6_rule_action+0xa1/0x1e0 > [ 1441.309133] [] fib_rules_lookup+0x153/0x2e0 > [ 1441.309134] [] fib6_rule_lookup+0x59/0xc0 > [ 1441.309135] [] ip6_route_input_lookup+0x4e/0x60 > [ 1441.309136] [] ip6_route_input+0xdd/0x1a0 > [ 1441.309137] [] ip6_rcv_finish+0x60/0x200 > [ 1441.309139] [] ip_sabotage_in+0x30/0x40 [br_netfilter] > [ 1441.309141] [] nf_hook_slow+0x2c/0xf0 > [ 1441.309142] [] ipv6_rcv+0x72a/0x980 > [ 1441.309143] [] __netif_receive_skb_core+0x38f/0xd20 > [ 1441.309144] [] __netif_receive_skb+0x18/0x60 > [ 1441.309145] [] netif_receive_skb_internal+0x61/0x1d0 > [ 1441.309147] [] netif_receive_skb+0x38/0x180 > [ 1441.309151] [] br_pass_frame_up+0xd5/0x2c0 [bridge] > [ 1441.309154] [] br_handle_frame_finish+0x256/0x5c0 [bridge] > [ 1441.309156] [] br_nf_hook_thresh+0xac/0x220 [br_netfilter] > [ 1441.309157] [] br_nf_pre_routing_finish_ipv6+0x1c3/0x340 [br_netfilter] > [ 1441.309158] [] br_nf_pre_routing_ipv6+0xdd/0x27a [br_netfilter] > [ 1441.309159] [] br_nf_pre_routing+0x1b2/0x540 [br_netfilter] > [ 1441.309160] [] nf_hook_slow+0x2c/0xf0 > [ 1441.309163] [] br_handle_frame+0x227/0x5b0 [bridge] > [ 1441.309164] [] __netif_receive_skb_core+0x1d6/0xd20 > [ 1441.309165] [] __netif_receive_skb+0x18/0x60 > [ 1441.309166] [] netif_receive_skb_internal+0x61/0x1d0 > [ 1441.309167] [] napi_gro_receive+0x192/0x250 > [ 1441.309171] [] rtl8169_poll+0x183/0x6a0 [r8169] > [ 1441.309172] [] net_rx_action+0x3b0/0x700 > [ 1441.309173] [] do_current_softirqs+0x285/0x680 > [ 1441.309174] [] __local_bh_enable+0x67/0x80 > [ 1441.309177] [] irq_forced_thread_fn+0x41/0x60 > [ 1441.309178] [] irq_thread+0x13f/0x1e0 > [ 1441.309179] [] kthread+0x10c/0x140 > [ 1441.309180] [] ret_from_fork+0x2a/0x40 > [ 1441.309181] -> (&per_cpu(local_softirq_locks[i], __cpu).lock){+.+...} ops: 3582145 { > [ 1441.309182] HARDIRQ-ON-W at: > [ 1441.309183] [] __lock_acquire+0x938/0x1770 > [ 1441.309184] [] lock_acquire+0xd4/0x270 > [ 1441.309185] [] rt_spin_lock__no_mg+0x5a/0x70 > [ 1441.309186] [] do_current_softirqs+0x174/0x680 > [ 1441.309187] [] __local_bh_enable+0x67/0x80 > [ 1441.309188] [] cgroup_idr_alloc.constprop.41+0x61/0x80 > [ 1441.309190] [] cgroup_setup_root+0x65/0x28f > [ 1441.309191] [] cgroup_init+0xf7/0x3e5 > [ 1441.309193] [] start_kernel+0x43f/0x484 > [ 1441.309194] [] x86_64_start_reservations+0x2a/0x2c > [ 1441.309195] [] x86_64_start_kernel+0x13d/0x14c > [ 1441.309196] [] start_cpu+0x5/0x14 > [ 1441.309196] SOFTIRQ-ON-W at: > [ 1441.309197] [] __lock_acquire+0x283/0x1770 > [ 1441.309198] [] lock_acquire+0xd4/0x270 > [ 1441.309199] [] rt_spin_lock__no_mg+0x5a/0x70 > [ 1441.309200] [] do_current_softirqs+0x174/0x680 > [ 1441.309201] [] __local_bh_enable+0x67/0x80 > [ 1441.309202] [] cgroup_idr_alloc.constprop.41+0x61/0x80 > [ 1441.309203] [] cgroup_setup_root+0x65/0x28f > [ 1441.309204] [] cgroup_init+0xf7/0x3e5 > [ 1441.309204] [] start_kernel+0x43f/0x484 > [ 1441.309205] [] x86_64_start_reservations+0x2a/0x2c > [ 1441.309206] [] x86_64_start_kernel+0x13d/0x14c > [ 1441.309207] [] start_cpu+0x5/0x14 > [ 1441.309207] INITIAL USE at: > [ 1441.309208] [] __lock_acquire+0x2ce/0x1770 > [ 1441.309209] [] lock_acquire+0xd4/0x270 > [ 1441.309210] [] rt_spin_lock__no_mg+0x5a/0x70 > [ 1441.309211] [] do_current_softirqs+0x174/0x680 > [ 1441.309212] [] __local_bh_enable+0x67/0x80 > [ 1441.309213] [] cgroup_idr_alloc.constprop.41+0x61/0x80 > [ 1441.309213] [] cgroup_setup_root+0x65/0x28f > [ 1441.309215] [] cgroup_init+0xf7/0x3e5 > [ 1441.309216] [] start_kernel+0x43f/0x484 > [ 1441.309216] [] x86_64_start_reservations+0x2a/0x2c > [ 1441.309217] [] x86_64_start_kernel+0x13d/0x14c > [ 1441.309218] [] start_cpu+0x5/0x14 > [ 1441.309218] } > [ 1441.309220] ... key at: [] __key.38555+0x0/0x8 > [ 1441.309220] ... acquired at: > [ 1441.309221] [] lock_acquire+0xd4/0x270 > [ 1441.309222] [] rt_spin_lock__no_mg+0x5a/0x70 > [ 1441.309222] [] do_current_softirqs+0x174/0x680 > [ 1441.309223] [] __local_bh_enable+0x67/0x80 > [ 1441.309225] [] wb_wakeup_delayed+0x69/0x70 > [ 1441.309226] [] __mark_inode_dirty+0x60b/0x7c0 > [ 1441.309227] [] mark_buffer_dirty+0xb5/0x240 > [ 1441.309231] [] __jbd2_journal_temp_unlink_buffer+0xbd/0xe0 [jbd2] > [ 1441.309233] [] __jbd2_journal_refile_buffer+0xba/0xe0 [jbd2] > [ 1441.309235] [] jbd2_journal_commit_transaction+0x112d/0x2130 [jbd2] > [ 1441.309237] [] kjournald2+0xcd/0x270 [jbd2] > [ 1441.309239] [] kthread+0x10c/0x140 > [ 1441.309239] [] ret_from_fork+0x2a/0x40 > [ 1441.309240] -> (&journal->j_list_lock){+.+...} ops: 587416 { > [ 1441.309241] HARDIRQ-ON-W at: > [ 1441.309242] [] __lock_acquire+0x938/0x1770 > [ 1441.309243] [] lock_acquire+0xd4/0x270 > [ 1441.309244] [] rt_spin_lock+0x5f/0x80 > [ 1441.309246] [] do_get_write_access+0x3b9/0x5c0 [jbd2] > [ 1441.309248] [] jbd2_journal_get_write_access+0x31/0x60 [jbd2] > [ 1441.309259] [] __ext4_journal_get_write_access+0x49/0x90 [ext4] > [ 1441.309264] [] ext4_file_open+0x1c2/0x230 [ext4] > [ 1441.309265] [] do_dentry_open+0x231/0x360 > [ 1441.309266] [] vfs_open+0x52/0x80 > [ 1441.309268] [] path_openat+0x476/0xdd0 > [ 1441.309269] [] do_filp_open+0x7e/0xd0 > [ 1441.309270] [] do_open_execat+0x67/0x150 > [ 1441.309271] [] do_execveat_common.isra.34+0x25c/0x9a0 > [ 1441.309272] [] do_execve+0x2c/0x30 > [ 1441.309274] [] call_usermodehelper_exec_async+0xf6/0x130 > [ 1441.309274] [] ret_from_fork+0x2a/0x40 > [ 1441.309275] SOFTIRQ-ON-W at: > [ 1441.309276] [] __lock_acquire+0x283/0x1770 > [ 1441.309277] [] lock_acquire+0xd4/0x270 > [ 1441.309277] [] rt_spin_lock+0x5f/0x80 > [ 1441.309279] [] do_get_write_access+0x3b9/0x5c0 [jbd2] > [ 1441.309281] [] jbd2_journal_get_write_access+0x31/0x60 [jbd2] > [ 1441.309288] [] __ext4_journal_get_write_access+0x49/0x90 [ext4] > [ 1441.309293] [] ext4_file_open+0x1c2/0x230 [ext4] > [ 1441.309294] [] do_dentry_open+0x231/0x360 > [ 1441.309295] [] vfs_open+0x52/0x80 > [ 1441.309296] [] path_openat+0x476/0xdd0 > [ 1441.309297] [] do_filp_open+0x7e/0xd0 > [ 1441.309298] [] do_open_execat+0x67/0x150 > [ 1441.309299] [] do_execveat_common.isra.34+0x25c/0x9a0 > [ 1441.309300] [] do_execve+0x2c/0x30 > [ 1441.309301] [] call_usermodehelper_exec_async+0xf6/0x130 > [ 1441.309302] [] ret_from_fork+0x2a/0x40 > [ 1441.309302] INITIAL USE at: > [ 1441.309303] [] __lock_acquire+0x2ce/0x1770 > [ 1441.309304] [] lock_acquire+0xd4/0x270 > [ 1441.309305] [] rt_spin_lock+0x5f/0x80 > [ 1441.309307] [] do_get_write_access+0x3b9/0x5c0 [jbd2] > [ 1441.309308] [] jbd2_journal_get_write_access+0x31/0x60 [jbd2] > [ 1441.309314] [] __ext4_journal_get_write_access+0x49/0x90 [ext4] > [ 1441.309319] [] ext4_file_open+0x1c2/0x230 [ext4] > [ 1441.309319] [] do_dentry_open+0x231/0x360 > [ 1441.309320] [] vfs_open+0x52/0x80 > [ 1441.309321] [] path_openat+0x476/0xdd0 > [ 1441.309322] [] do_filp_open+0x7e/0xd0 > [ 1441.309323] [] do_open_execat+0x67/0x150 > [ 1441.309324] [] do_execveat_common.isra.34+0x25c/0x9a0 > [ 1441.309325] [] do_execve+0x2c/0x30 > [ 1441.309326] [] call_usermodehelper_exec_async+0xf6/0x130 > [ 1441.309327] [] ret_from_fork+0x2a/0x40 > [ 1441.309327] } > [ 1441.309330] ... key at: [] __key.47251+0x0/0xffffffffffff9a40 [jbd2] > [ 1441.309330] ... acquired at: > [ 1441.309331] [] lock_acquire+0xd4/0x270 > [ 1441.309331] [] rt_spin_lock+0x5f/0x80 > [ 1441.309333] [] jbd2_journal_commit_transaction+0x365/0x2130 [jbd2] > [ 1441.309335] [] kjournald2+0xcd/0x270 [jbd2] > [ 1441.309337] [] kthread+0x10c/0x140 > [ 1441.309337] [] ret_from_fork+0x2a/0x40 > [ 1441.309338] -> (&journal->j_state_lock){+.+.-.} ops: 5849939 { > [ 1441.309339] HARDIRQ-ON-W at: > [ 1441.309340] [] __lock_acquire+0x938/0x1770 > [ 1441.309341] [] lock_acquire+0xd4/0x270 > [ 1441.309341] [] rt_write_lock+0x31/0x40 > [ 1441.309348] [] ext4_init_journal_params+0x4d/0xc0 [ext4] > [ 1441.309353] [] ext4_fill_super+0x1e4e/0x3770 [ext4] > [ 1441.309355] [] mount_bdev+0x18a/0x1c0 > [ 1441.309360] [] ext4_mount+0x15/0x20 [ext4] > [ 1441.309361] [] mount_fs+0x39/0x170 > [ 1441.309362] [] vfs_kern_mount+0x67/0x130 > [ 1441.309363] [] do_mount+0x1bb/0xc60 > [ 1441.309364] [] SyS_mount+0x83/0xd0 > [ 1441.309365] [] entry_SYSCALL_64_fastpath+0x23/0xc6 > [ 1441.309365] SOFTIRQ-ON-W at: > [ 1441.309366] [] __lock_acquire+0x283/0x1770 > [ 1441.309367] [] lock_acquire+0xd4/0x270 > [ 1441.309368] [] rt_write_lock+0x31/0x40 > [ 1441.309373] [] ext4_init_journal_params+0x4d/0xc0 [ext4] > [ 1441.309378] [] ext4_fill_super+0x1e4e/0x3770 [ext4] > [ 1441.309379] [] mount_bdev+0x18a/0x1c0 > [ 1441.309383] [] ext4_mount+0x15/0x20 [ext4] > [ 1441.309385] [] mount_fs+0x39/0x170 > [ 1441.309385] [] vfs_kern_mount+0x67/0x130 > [ 1441.309386] [] do_mount+0x1bb/0xc60 > [ 1441.309387] [] SyS_mount+0x83/0xd0 > [ 1441.309388] [] entry_SYSCALL_64_fastpath+0x23/0xc6 > [ 1441.309388] IN-RECLAIM_FS-W at: > [ 1441.309390] [] __lock_acquire+0x2b6/0x1770 > [ 1441.309391] [] lock_acquire+0xd4/0x270 > [ 1441.309391] [] rt_read_lock+0x47/0x60 > [ 1441.309394] [] jbd2_complete_transaction+0x20/0x90 [jbd2] > [ 1441.309398] [] ext4_evict_inode+0x37e/0x700 [ext4] > [ 1441.309400] [] evict+0xd1/0x1a0 > [ 1441.309401] [] dispose_list+0x4d/0x70 > [ 1441.309402] [] prune_icache_sb+0x4b/0x60 > [ 1441.309404] [] super_cache_scan+0x141/0x190 > [ 1441.309405] [] shrink_slab+0x277/0x6c0 > [ 1441.309406] [] shrink_node+0x2e3/0x2f0 > [ 1441.309407] [] kswapd+0x34f/0x980 > [ 1441.309409] [] kthread+0x10c/0x140 > [ 1441.309409] [] ret_from_fork+0x2a/0x40 > [ 1441.309410] INITIAL USE at: > [ 1441.309411] [] __lock_acquire+0x2ce/0x1770 > [ 1441.309412] [] lock_acquire+0xd4/0x270 > [ 1441.309412] [] rt_write_lock+0x31/0x40 > [ 1441.309417] [] ext4_init_journal_params+0x4d/0xc0 [ext4] > [ 1441.309422] [] ext4_fill_super+0x1e4e/0x3770 [ext4] > [ 1441.309423] [] mount_bdev+0x18a/0x1c0 > [ 1441.309427] [] ext4_mount+0x15/0x20 [ext4] > [ 1441.309429] [] mount_fs+0x39/0x170 > [ 1441.309429] [] vfs_kern_mount+0x67/0x130 > [ 1441.309430] [] do_mount+0x1bb/0xc60 > [ 1441.309431] [] SyS_mount+0x83/0xd0 > [ 1441.309432] [] entry_SYSCALL_64_fastpath+0x23/0xc6 > [ 1441.309432] } > [ 1441.309435] ... key at: [] __key.47253+0x0/0xffffffffffff9a50 [jbd2] > [ 1441.309435] ... acquired at: > [ 1441.309436] [] check_usage_forwards+0x11e/0x120 > [ 1441.309437] [] mark_lock+0x1e8/0x2f0 > [ 1441.309437] [] __lock_acquire+0x2b6/0x1770 > [ 1441.309438] [] lock_acquire+0xd4/0x270 > [ 1441.309439] [] rt_read_lock+0x47/0x60 > [ 1441.309441] [] jbd2_complete_transaction+0x20/0x90 [jbd2] > [ 1441.309446] [] ext4_evict_inode+0x37e/0x700 [ext4] > [ 1441.309447] [] evict+0xd1/0x1a0 > [ 1441.309448] [] dispose_list+0x4d/0x70 > [ 1441.309449] [] prune_icache_sb+0x4b/0x60 > [ 1441.309450] [] super_cache_scan+0x141/0x190 > [ 1441.309451] [] shrink_slab+0x277/0x6c0 > [ 1441.309452] [] shrink_node+0x2e3/0x2f0 > [ 1441.309453] [] kswapd+0x34f/0x980 > [ 1441.309454] [] kthread+0x10c/0x140 > [ 1441.309455] [] ret_from_fork+0x2a/0x40 > [ 1441.309455] stack backtrace: > [ 1441.309457] CPU: 0 PID: 165 Comm: kswapd0 Tainted: G E 4.10.0-rt9-rt #11 > [ 1441.309457] Hardware name: MEDION MS-7848/MS-7848, BIOS M7848W08.20C 09/23/2013 > [ 1441.309457] Call Trace: > [ 1441.309459] dump_stack+0x85/0xc8 > [ 1441.309461] print_irq_inversion_bug.part.34+0x1ac/0x1b8 > [ 1441.309462] check_usage_forwards+0x11e/0x120 > [ 1441.309463] ? check_usage_backwards+0x120/0x120 > [ 1441.309463] mark_lock+0x1e8/0x2f0 > [ 1441.309464] __lock_acquire+0x2b6/0x1770 > [ 1441.309465] ? __lock_acquire+0x420/0x1770 > [ 1441.309466] lock_acquire+0xd4/0x270 > [ 1441.309468] ? jbd2_complete_transaction+0x20/0x90 [jbd2] > [ 1441.309469] rt_read_lock+0x47/0x60 > [ 1441.309471] ? jbd2_complete_transaction+0x20/0x90 [jbd2] > [ 1441.309472] jbd2_complete_transaction+0x20/0x90 [jbd2] > [ 1441.309477] ext4_evict_inode+0x37e/0x700 [ext4] > [ 1441.309478] evict+0xd1/0x1a0 > [ 1441.309479] dispose_list+0x4d/0x70 > [ 1441.309480] prune_icache_sb+0x4b/0x60 > [ 1441.309481] super_cache_scan+0x141/0x190 > [ 1441.309482] shrink_slab+0x277/0x6c0 > [ 1441.309483] shrink_node+0x2e3/0x2f0 > [ 1441.309485] kswapd+0x34f/0x980 > [ 1441.309487] kthread+0x10c/0x140 > [ 1441.309488] ? mem_cgroup_shrink_node+0x390/0x390 > [ 1441.309488] ? kthread_park+0x90/0x90 > [ 1441.309489] ret_from_fork+0x2a/0x40 -- Jan Kara SUSE Labs, CR