From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id C1EE8C83F10 for ; Wed, 9 Jul 2025 22:37:56 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 3B6516B0096; Wed, 9 Jul 2025 18:37:56 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 366F46B0099; Wed, 9 Jul 2025 18:37:56 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 27D056B009D; Wed, 9 Jul 2025 18:37:56 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0013.hostedemail.com [216.40.44.13]) by kanga.kvack.org (Postfix) with ESMTP id 187396B0096 for ; Wed, 9 Jul 2025 18:37:56 -0400 (EDT) Received: from smtpin14.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay06.hostedemail.com (Postfix) with ESMTP id B36D810B9CD for ; Wed, 9 Jul 2025 22:37:55 +0000 (UTC) X-FDA: 83646190110.14.9C3879F Received: from nyc.source.kernel.org (nyc.source.kernel.org [147.75.193.91]) by imf18.hostedemail.com (Postfix) with ESMTP id E33E21C0010 for ; Wed, 9 Jul 2025 22:37:53 +0000 (UTC) Authentication-Results: imf18.hostedemail.com; dkim=pass header.d=linux-foundation.org header.s=korg header.b=TVkOOLw6; dmarc=none; spf=pass (imf18.hostedemail.com: domain of akpm@linux-foundation.org designates 147.75.193.91 as permitted sender) smtp.mailfrom=akpm@linux-foundation.org ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1752100674; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=McsZdvtwUMSKLyt/52qKppyxpUC+vrLXMsm5dpjpzmQ=; b=fuobcm6dm8oL+2iI27+Y1yVyl8Kydf/PPu/pR49WbomPCQbydpsRe85nBIlqZkNx7vsKLh zjp1ZPrPWR9NLtEh2yGrqG8iGg1ySkLR6ocovZ2xmvMmNQG2AsRA3SgXApmfjHCPUxI69f tc5ZjaZIIQgpm+nVEpgeg+inaCt4rxU= ARC-Authentication-Results: i=1; imf18.hostedemail.com; dkim=pass header.d=linux-foundation.org header.s=korg header.b=TVkOOLw6; dmarc=none; spf=pass (imf18.hostedemail.com: domain of akpm@linux-foundation.org designates 147.75.193.91 as permitted sender) smtp.mailfrom=akpm@linux-foundation.org ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1752100674; a=rsa-sha256; cv=none; b=ckDEKJfIkSdJhxWBZNX1QdTlkD46PFdzd6FbimDscPXqoFwf4LxCPmybW18OfvxIyVqZwp crgftEZEIXkHDGaKAdg9MlgFq9C86GH9ul1Vf+85Lcu7JSNB6FG+A6OzfJ021mfEUkYyZw BKMOhThZA33qa14HqAJqfHnuOKk/AnU= Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58]) by nyc.source.kernel.org (Postfix) with ESMTP id 0B976A54986; Wed, 9 Jul 2025 22:37:53 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 43A32C4CEEF; Wed, 9 Jul 2025 22:37:52 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linux-foundation.org; s=korg; t=1752100672; bh=3Yo7S9AlDHTOVi1lH1wCOpYInVI0gXSaPoeLmvy4qU8=; h=Date:From:To:Cc:Subject:In-Reply-To:References:From; b=TVkOOLw65NVOFSXfa22OygcpxRMZFGshWoJQFUda4xXmvD4IHovmZ2vAMt9BZZHQH CoxNO+CCKuV8fhS6k1qHycJPRTHSi8snKSxSM0t0UrZGYfT6wqzBZrM7woW1HQ2n2e Z9g7jTalKtw4E9c/50kfvhZfO9vMuYDBhibknCpI= Date: Wed, 9 Jul 2025 15:37:51 -0700 From: Andrew Morton To: Alexey Dobriyan Cc: linux-kernel@vger.kernel.org, linux-mm@kvack.org, David Hildenbrand , Lorenzo Stoakes , "Liam R. Howlett" , Vlastimil Babka , Mike Rapoport , Suren Baghdasaryan , Michal Hocko Subject: Re: [PATCH] mm: implement "memory.oops_if_bad_pte=1" boot option Message-Id: <20250709153751.222ea2d1de1313a22a69e64e@linux-foundation.org> In-Reply-To: <4e1b7d2d-ed54-4e0a-a0a4-906b14d9cd41@p183> References: <4e1b7d2d-ed54-4e0a-a0a4-906b14d9cd41@p183> X-Mailer: Sylpheed 3.7.0 (GTK+ 2.24.33; x86_64-pc-linux-gnu) Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit X-Rspamd-Server: rspam04 X-Rspamd-Queue-Id: E33E21C0010 X-Stat-Signature: 3ipeppt3jgm3didn7km5e3auiwj4ec31 X-Rspam-User: X-HE-Tag: 1752100673-619640 X-HE-Meta: U2FsdGVkX19fwDhUZfPrWIQv3wQGsX5pJ4QHfe64unvWBVny2/DdooRymcWJBaTfI6QxmodWBzDlJhkVhzc+QIuNhXfoh7xvl2u8cvbx8rQjhhVZpJnnl8K4AiA4Qs11cBbZ/dT43hOqLq7m5Swr+2z0NPe/pn0+HLkmJ0vyh0KRZGU+QVpfFDuA/sz1oglikAQx+b48NAwyEP1hlsZvhXMHowzXbacYwcj2qIHsbWqe8R1Kj6xEc1XUTIJzM71jYQkEyucsHQCjBl4p4mYoo+sj4xDW0At8ODRYzdbMdNNcYIeoSKxcguONKnGhbQ/b2g7E7SlyJPTtg9qZ/pOPb9D6BbAcC0VIJTJWxdmcQo/O5/gx0wZpeWMaazTiTUg04OJya8IxYbIKvZT4i+q0C85KbJsMIl5ePIdOmuaOB4dfT77mo7XMFbZ8wkE07mcP+Kh2OCQHgYM1eTosCy9epHN4fvRQYpUW2YfGQEn4QluD11g8e3qak9aTnN0+npLSbJbRNeSu4wGGYnYCsKh2AN1bZayqbQ1NsfWuwE5GvAy3u9NlRPILvoAGGaIo8BgpAwkLCmh2rXVqKcXpbiAaEmXihgGOwtEh/ZM7x4PU5Lnf1MWMCYd64H+moWe01/HccYPwDxQG5grhC4wls3fHr42PssOwEu93sOK5aoHiwcsA6lAJUmewBP8j4TiKpCSn61HEp0mYqa6mAml/aicgntZo/PmbcUal1jVI00E1UMMBU70wjZPHhT7qqZiMZiKrqtffrlgdqNYJtaRDT2qgjjPBm0GDqEwi08NFBo9bsTVlGDgxSXpCdheotNEVdJ/XtRjfET0EcJHANiCEdb1yM6V23q9/HL1cEBb1H+206niUPEi3k7aEJguslolmzGgUXx8ZEtLFtkf0pNXdvVl4d1xP5Az59DnBnOTeENs4RDhlJLltY3Ikg72bKL9SywkCPKNWiQqGHdYdaWjqjt+ Xze7mYce XbhBQeQRV1yw/Z+dTrV6L9xgD9xgl/5FtEfZ53v+1hT4PuKsXrMN9T2nt1M8CQouOf7EX7Euoz5Vy9wSSRB/oCp96g+itxcRgcIpybbjEwGpNshl85kYMuZgvV8vNMbI5hTXYRIZJnuPMeXwlsypU8UmfqXaOdoTdVpAIPGajBmrgwnTHb0yebmR4CuZ/9NsRmFiI3Pg32rKY8QCfXJrfOSUxYxTJKQGX85CTZHYz6LeXqA3zwtVCKtuhtrRRQy2CWAvuvg2BhfUTBxDIIxcjwWecuSeZFsGOwtj0eOo/hfTfuHQa7+2uOH12l1GgBf2fQI0A5olti01i3k55yGPCDye8pjnJbxieDLp+BZn2m5qznSYIA+CxkL8fyFK0UKtqct9RcdFd6wYB1FoWVigVfWhM2rAu0+HTrtQY X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: On Wed, 9 Jul 2025 21:10:59 +0300 Alexey Dobriyan wrote: > Implement > > memory.oops_if_bad_pte=1 > > boot option which oopses the machine instead of dreadful > > BUG: Bad page map in process > > message. > > This is intended > for people who want to panic at the slightest provocation and > for people who ruled out hardware problems which in turn means that > delaying vmcore collection is counter-productive. > > Linux doesn't (never?) panicked on PTE corruption and even implemented > ratelimited version of the message meaning it can go for minutes and > even hours without anyone noticing which is exactly the opposite of what > should be done to facilitate debugging. > > Not enabled by default. > > Not advertised. > > @@ -490,6 +498,13 @@ static inline void add_mm_rss_vec(struct mm_struct *mm, int *rss) > static void print_bad_pte(struct vm_area_struct *vma, unsigned long addr, > pte_t pte, struct page *page) > { > + /* > + * This line is a formality to collect vmcore ASAP. Real bug > + * (hardware or software) happened earlier, current registers and > + * backtrace aren't interesting. > + */ > + BUG_ON(oops_if_bad_pte); > + Oh. A pretty simple thing to do with bpf? A script to tell the kernel "dump vmcore if you get here" would have applications in places other than print_bad_pte()? That's what bpf_panic() was for (https://lwn.net/Articles/901284/) but it apparently didn't get merged for .