Received: by 2002:a25:d7c1:0:0:0:0:0 with SMTP id o184csp4078301ybg; Fri, 25 Oct 2019 13:01:07 -0700 (PDT) X-Google-Smtp-Source: APXvYqwYAbwOi4iNu4ZLoUjO/CjK7HhF2vXmdo0Yr6VLpwjQGeUTrA/FFTjwILc23w2MvYybJzQl X-Received: by 2002:a17:906:6ad7:: with SMTP id q23mr5069052ejs.214.1572033666928; Fri, 25 Oct 2019 13:01:06 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1572033666; cv=none; d=google.com; s=arc-20160816; b=nNrj2vbUvkk9eh70cDir7Qb2q7MYf0wdG0gY+F4nC5CEoIaO+tVyyC2wbe+Ikp0vev Q4RwP8raTLwhk2eBwu60355kMfPU8j4i3en9WwNuSD3PNkvo88+imMi/R/VPNOL1wbcl s3CupQX2KgaTTnTi5OZPUc5qjC4bYPPN0/cI2LgVflIp0DUuI7V8F0AhlxjfI4xeRmeu JqRbxMPoVxwzk2YJDj5LXcSkJpgSA/jGTrWNgUQ3PE6qKFWSxedEhzvcbSQF22jx9EHD BV6q5gCEgZHpTpBEVecgVe1mPCpHG6negfB6EZx1jkwH2X3mhm1rTa0Tes5HEnBC4PQO 5tyQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :user-agent:references:in-reply-to:date:cc:to:reply-to:from:subject :message-id:dkim-signature; bh=kE4dzQSQqDs+211vlbp5XX/pasbIB42w5gfNcauQ34U=; b=osxK+47uXOQAwNWYkJd3kj8mz80OblbwtW7Acz88qtNnXMRyyoqj7/f1oS7VN6gH/Z yNv4+Mf9iKJ2dsEtMOnIV3FiTlPPMcANf9WRpVe9+tJwlF/iXd4OfccnDQXluALl4QsH /srSPL4C73l3jMxqMoLJSYrsGX2f8EPSzKTz+HCypMevGLSjrsL36U6C2a8riFP38+lI K9kMG1QBqYukCAKDrEtibvY0MoJQQpJ0K5ri4TLPc+43Jotxl2Dy7RAxdomQmPOniRnd jsfXmn+4tZaZ3G29FWr0oEpz+EJH6+wSXUbLycAakQCrOWtUDx0XEQEZC14khloZdvNf V5RA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmx.net header.s=badeba3b8450 header.b=dDbon0qm; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id z37si1912574edz.281.2019.10.25.13.00.19; Fri, 25 Oct 2019 13:01:06 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@gmx.net header.s=badeba3b8450 header.b=dDbon0qm; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2393536AbfJYLz1 (ORCPT + 99 others); Fri, 25 Oct 2019 07:55:27 -0400 Received: from mout.gmx.net ([212.227.15.19]:44325 "EHLO mout.gmx.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726484AbfJYLz1 (ORCPT ); Fri, 25 Oct 2019 07:55:27 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=gmx.net; s=badeba3b8450; t=1572004515; bh=mLDxk03QgZ49jLBWzJk07zrzftgPYbqYvmcg2mY5ycA=; h=X-UI-Sender-Class:Subject:From:Reply-To:To:Cc:Date:In-Reply-To: References; b=dDbon0qmEYRdDCA8JWudMc2B08QtrpSI70J48PhNyA4bQePEKdauZ5emLd3cx4z02 SoUN4d4JEimPvJpjFjsRlqwRwIcxMeFhjFPMEdkhxfR2/gEbgmRFIAFkhf0NDT/3Ul DThNKvNv8+0RLXToE4l5cM3qAPnVrzREwjvEw3qI= X-UI-Sender-Class: 01bb95c1-4bf8-414a-932a-4f6e2808ef9c Received: from bear.fritz.box ([80.128.101.49]) by mail.gmx.com (mrgmx005 [212.227.17.190]) with ESMTPSA (Nemesis) id 1Mnps0-1hd4e11Vso-00pNxA; Fri, 25 Oct 2019 13:55:15 +0200 Message-ID: Subject: Re: mlockall(MCL_CURRENT) blocking infinitely From: Robert Stupp Reply-To: snazy@snazy.de To: Michal Hocko , snazy@snazy.de Cc: Randy Dunlap , linux-kernel@vger.kernel.org, Linux MM , Andrew Morton , "Potyra, Stefan" Date: Fri, 25 Oct 2019 13:55:13 +0200 In-Reply-To: <20191025114633.GE17610@dhcp22.suse.cz> References: <4576b336-66e6-e2bb-cd6a-51300ed74ab8@snazy.de> <20191025092143.GE658@dhcp22.suse.cz> <70393308155182714dcb7485fdd6025c1fa59421.camel@gmx.de> <20191025114633.GE17610@dhcp22.suse.cz> Content-Type: text/plain; charset="UTF-8" User-Agent: Evolution 3.34.1-2 MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-Provags-ID: V03:K1:cNUvOUD9nrltn6/gYgTexXM/uEZqc30ijw4NkgQvGpOvolVX00J b408xrKUAZ9HQfCGo7fRA03Lro5arpDxTSfurS8/NfK0ks/UWThAd+0MUH1RL22JDs/57yZ AH17KRh7KXV0EdQyVIzrQ2IuE3YCK1gEriC1hMzgV8oTBzZ3QCCaX41uC+AGg82QxG/G4Fm V3oMf2P3DcI26OMPdtXIQ== X-Spam-Flag: NO X-UI-Out-Filterresults: notjunk:1;V03:K0:38xgz3rSgBw=:G7lsGuMYS1aNz2KyfxDTPn rMVxSgm6FkKrsQ7VGpMo2/qaHdxIZmM407ia+jo5TnYHVaX/n7q5gsQcK0dSZMcOUt5EbyG/Z HSP9A2fidEqPUQAnQQnfxREzoS0ngwYuIKHowSj0/4k01nCP8RZwq8STcKN59oLoHtZOJz/S4 kUdFVLRTGt5bXunbg+NrUv4cuD+uTPSaKN/W8QfNhItFqK1mO1MDep9aFazkfqi/oRVGktSAs jkc4PgVa47LvOSNZF8KdI8SLXuu/zNbk3DFEWKEhKEauI2IIqcqYUxO5u7UyR8z29uIzgKJW+ bNTcfzwfYHFnYe5EpUOJWfAldgir52ALMIiAKij+OPw4tLPJ7biOjymlvIMc4Tm9roCYyoH2c WdEt/q7/bdpE//sA0Y/442JyJ3iIhTx0Oqg3BXhq7v1RRqQzVfLsxeyUGqTQBKCsxNgUW2Gjn lutHjFbtxfqCR3XPh4rtjL5MMbfzBrHSsVNx8CV02Jn9ezskQsVqeB1oGQ1lNCYu3hIqxOcuT Yt31sgwyVraTrxWq+CUdEd7a7DQ4zaNq12BQF/wA7oHA1SXVY4K0u334nf7wqc8m5PEzavCkY ZQP364yqDEGN+4+l4HxhwLiI5U08u4sn9M6FdH1z2fCKB57eDZ+77cyHWC+KXv8dsA9lpRtUc HfWw8xEnR016PRTExq8LysJfyEq8VQDBouXbb798C5CZtX28cZjqsqazp1Q6b9ZI6zZ86S0lt e6dLPmgMVouG6oojsdmmdTm5Qicxbh7N0E4F1ydPEGYk4KSH3VvIvTdCWOWPiVVD2B5e8bmkb dOFvsf967Sd0w9wCNlB1Jk/E83RnbxmHQuf3nU3WTEsbKcOCUlcTOx0BA0jg5XNNMnAoaQPJn v2KxB+LA8TCJKASPpMUc0JoRZauj5QCfOkh+yRuf2jJzYjFg+7lPERNEbe0N8+ReSmAINUCVv b4bEXbwnfIQXbeRdgsdlbVYAHcCieWZmq7vbiAO/zDJLT/kRg9XwzKDbE7AqHFZu5WsGIUL+/ Wp42m8XcqJc/X1Ge5HmhN/BIOAE7XR0uoFM/DnNIIXHS0Jct/WlNjR1EvNLn7Z3oGQ7FBRSz0 DGaS73qqJil49j2rnQSByrjdhGoGtH7GsLi4ZlD9Tu2sDroW4Rajq5/PspBFzhxu6tB+eEnjS SYYiXREdn/Z+jJu1yy0uPqpj8A8k/PsmngtqiZC92BAWlzmeMumcGjB9+HGxoxiYda5fGQKHL dgAqEUWlcteriUf1aHyeIlO1zmMFkzdmKOdNaVA== Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Fri, 2019-10-25 at 13:46 +0200, Michal Hocko wrote: > On Fri 25-10-19 13:02:23, Robert Stupp wrote: > > On Fri, 2019-10-25 at 11:21 +0200, Michal Hocko wrote: > > > On Thu 24-10-19 16:34:46, Randy Dunlap wrote: > > > > [adding linux-mm + people] > > > > > > > > On 10/24/19 12:36 AM, Robert Stupp wrote: > > > > > Hi guys, > > > > > > > > > > I've got an issue with `mlockall(MCL_CURRENT)` after > > > > > upgrading > > > > > Ubuntu 19.04 to 19.10 - i.e. kernel version change from 5.0.x > > > > > to > > > > > 5.3.x. > > > > > > > > > > The following simple program hangs forever with one CPU > > > > > running > > > > > at 100% (kernel): > > > > > > Can you capture everal snapshots of proc/$(pidof $YOURTASK)/stack > > > while > > > this is happening? > > > > Sure, > > > > Approach: > > - one shell running > > while true; do cat /proc/$(pidof test)/stack; done > > - starting ./test in another shell + ctrl-c quite some times > > > > Vast majority of all ./test invocations return an empty 'stack' > > file. > > Some tries, maybe 1 out of 20, returned these snapshots. > > Was running 5.3.7 for this test. > > > > > > [<0>] __handle_mm_fault+0x4c5/0x7a0 > > [<0>] handle_mm_fault+0xca/0x1f0 > > [<0>] __get_user_pages+0x230/0x770 > > [<0>] populate_vma_page_range+0x74/0x80 > > [<0>] __mm_populate+0xb1/0x150 > > [<0>] __x64_sys_mlockall+0x11c/0x190 > > [<0>] do_syscall_64+0x5a/0x130 > > [<0>] entry_SYSCALL_64_after_hwframe+0x44/0xa9 > > [<0>] __handle_mm_fault+0x4c5/0x7a0 > > [<0>] handle_mm_fault+0xca/0x1f0 > > [<0>] __get_user_pages+0x230/0x770 > > [<0>] populate_vma_page_range+0x74/0x80 > > [<0>] __mm_populate+0xb1/0x150 > > [<0>] __x64_sys_mlockall+0x11c/0x190 > > [<0>] do_syscall_64+0x5a/0x130 > > [<0>] entry_SYSCALL_64_after_hwframe+0x44/0xa9 > > > > > > [<0>] __handle_mm_fault+0x4c5/0x7a0 > > [<0>] handle_mm_fault+0xca/0x1f0 > > [<0>] __get_user_pages+0x230/0x770 > > [<0>] populate_vma_page_range+0x74/0x80 > > [<0>] __mm_populate+0xb1/0x150 > > [<0>] __x64_sys_mlockall+0x11c/0x190 > > [<0>] do_syscall_64+0x5a/0x130 > > [<0>] entry_SYSCALL_64_after_hwframe+0x44/0xa9 > > > > > > [<0>] __do_fault+0x3c/0x130 > > [<0>] do_fault+0x248/0x640 > > [<0>] __handle_mm_fault+0x4c5/0x7a0 > > [<0>] handle_mm_fault+0xca/0x1f0 > > [<0>] __get_user_pages+0x230/0x770 > > [<0>] populate_vma_page_range+0x74/0x80 > > [<0>] __mm_populate+0xb1/0x150 > > [<0>] __x64_sys_mlockall+0x11c/0x190 > > [<0>] do_syscall_64+0x5a/0x130 > > [<0>] entry_SYSCALL_64_after_hwframe+0x44/0xa9 > > > > This is expected. > > > // doubt this one is relevant > > [<0>] __wake_up_common_lock+0x7c/0xc0 > > [<0>] __wake_up_sync_key+0x1e/0x30 > > [<0>] __wake_up_parent+0x26/0x30 > > [<0>] do_notify_parent+0x1cc/0x280 > > [<0>] do_exit+0x703/0xaf0 > > [<0>] do_group_exit+0x47/0xb0 > > [<0>] get_signal+0x165/0x880 > > [<0>] do_signal+0x34/0x280 > > [<0>] exit_to_usermode_loop+0xbf/0x160 > > [<0>] do_syscall_64+0x10f/0x130 > > [<0>] entry_SYSCALL_64_after_hwframe+0x44/0xa9 > > Hmm, this means that the task has exited so how come there are > other syscalls happening. Are you sure you are collecting stacks for > the > correct task? I guess that the `cat /proc/$(pidof test)/stack` captured the stack after I hit ctrl-c. Does that make sense? Also tried `syscall(SYS_mlockall, MCL_CURRENT);` instead of `mlockall(MCL_CURRENT)` - same behavior.