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 ED937C433F5 for ; Mon, 31 Jan 2022 20:55:06 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 7F4F48D0027; Mon, 31 Jan 2022 15:55:06 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 7A5118D0024; Mon, 31 Jan 2022 15:55:06 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 5F7F88D0027; Mon, 31 Jan 2022 15:55:06 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from forelay.hostedemail.com (smtprelay0116.hostedemail.com [216.40.44.116]) by kanga.kvack.org (Postfix) with ESMTP id 4FC118D0024 for ; Mon, 31 Jan 2022 15:55:06 -0500 (EST) Received: from smtpin19.hostedemail.com (10.5.19.251.rfc1918.com [10.5.19.251]) by forelay01.hostedemail.com (Postfix) with ESMTP id 12689181D19FE for ; Mon, 31 Jan 2022 20:55:06 +0000 (UTC) X-FDA: 79091787012.19.9386B53 Received: from mx0a-00069f02.pphosted.com (mx0a-00069f02.pphosted.com [205.220.165.32]) by imf31.hostedemail.com (Postfix) with ESMTP id 6FB4F20006 for ; Mon, 31 Jan 2022 20:55:05 +0000 (UTC) Received: from pps.filterd (m0246617.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.16.1.2/8.16.1.2) with SMTP id 20VJ2ZnP008734; Mon, 31 Jan 2022 20:54:49 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=message-id : date : subject : to : cc : references : from : in-reply-to : content-type : content-transfer-encoding : mime-version; s=corp-2021-07-09; bh=VDZahaboeAyTNcivF2eU2z8gXkaYt1rRjo8BtwVp+xo=; b=bvBe/unU8xyxyLqlDdiNX+pLvbgEkXoqaL3DHH1KxM1CwIFT67HqAhFrAt4CmjoWjQhc ci9gcf7iTmGhozr3iBzL3AcR65+hoOFaCfmXHWHL2kzQFbPxob/nBANVRQcVz7y4p7Lw 0h2Ej6stcjfNSplf58rT/Cy5mhjwW1oLPTwee7Ak7d5rvgDxZGbVNrxo29PmJmxziR59 Akg87IinVMOwAd+Ax9kfFbJD6CsTcaIU8vqtAPRGBPHRC8ApHj4t7FSmJPjJk6PQRFF1 +JoBbTMMMh5VNhwBoOvWD/b93mvg1LGWJH2m+JUZiAMlgiiOowEQgMZZzRJhxEyVk08V Xw== Received: from userp3030.oracle.com (userp3030.oracle.com [156.151.31.80]) by mx0b-00069f02.pphosted.com with ESMTP id 3dxnk2g86e-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Mon, 31 Jan 2022 20:54:49 +0000 Received: from pps.filterd (userp3030.oracle.com [127.0.0.1]) by userp3030.oracle.com (8.16.1.2/8.16.1.2) with SMTP id 20VKlMlv099043; Mon, 31 Jan 2022 20:54:48 GMT Received: from nam10-bn7-obe.outbound.protection.outlook.com (mail-bn7nam10lp2104.outbound.protection.outlook.com [104.47.70.104]) by userp3030.oracle.com with ESMTP id 3dvtpxsrt7-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Mon, 31 Jan 2022 20:54:48 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=nsg8Q50ZFRK4dqLVMvbRXi/sHQJjiQXswUp6oXZbApLzK5w5dIYnqocyefIenUaj0kDOMQYJrx9YfXFrdtmrugR9oUSHYGOApKtEus0XReR2Q8J1f2g9ulL9BNCDphRYWWqU/wy4i720JMGaVGSH0GfcTYnnIODInLGRllT6atu+s6ILQGwx2bgzokuEx6DaKaRRJmfSV/tLlS513a62XFxjbbM/ukOeH386XeZkMMtf39WtQuBVPF+UBN7Q8luTVhHYUouZnAk7COR7Uf9X+BHV6mCQLSZHViT5nyw/Fg+xSIhbagbhsFqMb7loYm3pElqCo4iwuBoulrwbETn2UQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=VDZahaboeAyTNcivF2eU2z8gXkaYt1rRjo8BtwVp+xo=; b=h3JQmVN7q7YGA0vlqRYD0lB5FFKtFDRjS6PU6EJ4pxVDfXKXGEE6yBWhO0m8vavh7xoFX5R48EppPME6eKKJwVshEVe64HDOvqjPEscgjSv7J4Z9b0nQK5zrbg2WWBl7s68AAmp2cXUqrlKLXcqPYpTST+LJ0e5/4xeG2CiXYV5EbeqoAoGIdf0I1YRh1rEJyIyZJhSVDOe/hcy9wYZ0KLhF7vV3dH1nOawDfX3o9/ws+oECKEMDdzFeT4dgK9oMkCpx6rEbEBRVHvV1RCVIuUvzew/4AwsQGtbYPgYZC54Bc4QU/MLg1sgN4GXfWtspLhCNM4unctEXRyXUwcBU0Q== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.onmicrosoft.com; s=selector2-oracle-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=VDZahaboeAyTNcivF2eU2z8gXkaYt1rRjo8BtwVp+xo=; b=oEKvIoJITqlvPtn0E9JF6E6ivIgxNiEGWT24uyBhe/GofX1SQjjgMRNAEU0/gUYluRzXrv77ymqslVnNuve7K26QP3yei4t7WKge77WDGmFycZEv1ej81HcCP0V5PWJBwK7cDQo6q1v/WTLleV3rpwnc7FDTvx2rIFvITbAFjaY= Received: from BLAPR10MB4835.namprd10.prod.outlook.com (2603:10b6:208:331::11) by PH0PR10MB4744.namprd10.prod.outlook.com (2603:10b6:510:3c::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4930.15; Mon, 31 Jan 2022 20:54:45 +0000 Received: from BLAPR10MB4835.namprd10.prod.outlook.com ([fe80::4910:964a:4156:242a]) by BLAPR10MB4835.namprd10.prod.outlook.com ([fe80::4910:964a:4156:242a%5]) with mapi id 15.20.4930.022; Mon, 31 Jan 2022 20:54:45 +0000 Message-ID: <30a327fd-ae49-7412-ef77-9ec19480626e@oracle.com> Date: Mon, 31 Jan 2022 20:54:39 +0000 Subject: Re: [RFC] Missing compound_head() in memory-failure Content-Language: en-US To: Matthew Wilcox , Jane Chu Cc: Naoya Horiguchi , linux-mm@kvack.org, Andrew Morton References: From: Joao Martins In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: PR0P264CA0100.FRAP264.PROD.OUTLOOK.COM (2603:10a6:100:19::16) To BLAPR10MB4835.namprd10.prod.outlook.com (2603:10b6:208:331::11) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 26920959-6c86-4cda-7e5b-08d9e4fbe987 X-MS-TrafficTypeDiagnostic: PH0PR10MB4744:EE_ X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:483; X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: Ig223XLHoCIJnPF/6FcaRalFKDryk/FR3JKtkdZpC6CGyKIYsr3sRcxLVoo8DTycyHXTDVcJFzBNXJ25Ia1i2otXkjm1ZfZu1tA9FkvVvhty8hs4o9yNH5cFTUYZQi51BOUquu1+KOXIoJVhIaxYQenYlLYIuslg2enNEDGJ/3xKR/hmQsdVBs2hu6rqk+05bUghA2b8tVY3aPMhNidY4u1USmG5aOZeq4JaJ544pyPodZCgFABx5xNw+1fIMwczWVjFTWkdWDY4fJO1a2qV2mE81JWFlU4vdJYdohetH+/ZfdH/tAHWlobMOCYkgouymITmTBTMj15PwPAjtT9rMmkEHz852VCwP6ZDZh+aBkCdiVJ+dzTB2aFt0TmfhI+mjqM1lYoTa2F6PQMCTX1+ZznsTTdRzkHQgfkXREGxkMka8vZ5Ja29WlWJWSd5pqSBZTG7XXRKliQ0ff0IWiCqSE09d77W47teALDFISLwEs2a1umc7c8cOvDXkhpRsOSOZWraYF5AimwpzwXzKxl1voYCBDOuY5bJRdjD+L2y+9egWuRzbegCjZKE/cFRPQbSqRXzBk4hxhMoycXKsc8MPzhfPU3MN2aCq/08REygKIR3v3APWDxPBjqVIt9Hr4OYYS8WI8OTE9fbPaLtEJw+cAW8EWvsnEOwrwSkUwBsAFTp6GpoPvpN2pRmK/XiBSNcCt8G3wvEREqmvsstOZK38q8QE1tG3sWXslsB7mQfo2rIgvX8JRvKVSyBy8BWfjtPev4qgENJvLa7G0Cib2P9DhQEpb7A5XGBU9fTxI6kZcI= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BLAPR10MB4835.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230001)(366004)(26005)(6506007)(6512007)(6666004)(66556008)(66476007)(86362001)(53546011)(38100700002)(4326008)(8676002)(8936002)(186003)(2616005)(83380400001)(508600001)(2906002)(31696002)(66946007)(110136005)(31686004)(54906003)(6486002)(966005)(6636002)(316002)(36756003)(5660300002)(45980500001)(20210929001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?Ym5OVU8yZi9SYzJFb1BnTGFyNm1xellpUjA2Wkl1WHNVZXU2V2xFRGNyLzdu?= =?utf-8?B?b1lpZW5qdC8zUUZsR2t5c2s1SXFzWU1mOVI0aVIzWWFaUlUzaGpreVM4M2Fq?= =?utf-8?B?anlJUHY2eVYreVBIUm1kc3I1b2Z5NWxqMHVUODZLOFZaNllCSHhQQlVkQXk2?= =?utf-8?B?a3pwL2RDQzhEVmV6WS9lanNDWE9QMmxMc0piY0tvWWdxbTIyODZ6T09ZSWFH?= =?utf-8?B?NTF6TENaUGRUbHZHbHZGdlRZVE9rY2ZORkxBRFd0dTd0NVhPVDNzZU15Q1Qz?= =?utf-8?B?OHRaTU9QS01jL1RhVllSRG1odGFsb0dVb1k1c1dOSk8xb0grTTh0M0l6MUF1?= =?utf-8?B?SUNKVTQzVmNmZmYyZHVpSEN5WFh0ZkJwVUU1K3ZLUzFmOHlhYlU1UDc1aG44?= =?utf-8?B?TDNIeWV4V1VWTjZ2UnN5aXdSNC9CR2xqZVp6Y0VFVDBnV2xxM3ZwcTIvYmZT?= =?utf-8?B?QnV2S25aVjAwSlRZcDAySGZSQnpyS0xnVWRZbFpNRWdyN1ZQNzFhVG90aVc4?= =?utf-8?B?a1dINXp1MjI2NzNXak5FczhqVy9qaGx5M3EybUVSU0FMZjV1dk9xSVFHQi9J?= =?utf-8?B?eFBFMjdSWEF0bVl2VTZTa0UxK1VKWUJTUDRGdzF1ZWZMczBkUVhWMitoVUFK?= =?utf-8?B?VHZWQVRTMUhBSjFhQjZCOWRlLzc1d0JzY0N4ekwyRjBnaXVhaU5UcEtPcnlJ?= =?utf-8?B?TzZzY2dKLzBiYW5McGRwN3N2UXhVL0JjR3lCbkxMZVNEQUIxMDFIYm12NW9V?= =?utf-8?B?MzdmcmFvUmNxZi9iS2s3U3AvbHRNNmQrVWtQNDRqdUIyeXZuK1pXR1dHRFRi?= =?utf-8?B?ckM4V2gzVzdYSUllVXQyNi9SY1A4NXpMQ2JJNVkySmJWU0FrYm1xYXZkZm4y?= =?utf-8?B?VWdleGlQZXFvTmVpRlV4VENQMTlycm03S2MyLzhhdTR5SEVrOWJwYlFidnA5?= =?utf-8?B?Y1FodHk2ZUR5c2R0R3ZhYmVYa05NcUtpSHhOVHJ4N2xSRjZYbGdMcHZEVUxh?= =?utf-8?B?Rlk3eVVDTmZOcE5XejBXdDBINE5RTmxmbm9tTE1mTytVclQ5bUVYTU5HNzVj?= =?utf-8?B?VThZdWRPR3VqUGFLTE9wQXVncnZoTmxLYkVidkl3M1A1MU1UdTVLeUpPZWgx?= =?utf-8?B?VzhmeEYyRDZKRVhtOUlpS2Fka3FkNklQM2lnRkZzUWhjakJIQ1NvR1lFZnhH?= =?utf-8?B?aERXUTlEZkRqT2VyQ1JWc3N0eHpnamJUVEltWkovaWVSN1EzZGtON3JMMGlG?= =?utf-8?B?bzlpZ0FGUitZemsvSndwT1RIOGV3Yk9rbTVqMG9wRVdFUS9wZC9yamc0QjYw?= =?utf-8?B?LzhQTXFaWTgvdmVqWXpVcUEyakl4ckhvWHVtbFFnTFFVMjNBNmhHcDV4eXJT?= =?utf-8?B?MEl6NlgzN2x2bWN2Rk95UUx2ekkxR2xYa3NJVXluTHpRTkx5WGRCeTB5RURX?= =?utf-8?B?TnAyM2pTQ2Y5aS9IbGZCTnY3b0w2STdKSU9taGJjRit0T0F6SFZTZ09oVkQ5?= =?utf-8?B?TWdVc1lTYWlqZm9tNDFoNzVwdm1EKzNZazdBc2MvZlpvdG9lM2RpU2M0amkr?= =?utf-8?B?bXdJdURza3IyTzBoUTkxWit1ckJGMDVzVmhUWC9IcmFmK2ViSWtUd1BzM1Rm?= =?utf-8?B?UnJQOGtYd3ZlWkx1djdUL1UreDdTNDVWOXE0d0tva29haGFoM0FqVVJ6Ui9G?= =?utf-8?B?VWVPdElHV3ZLR1c5cER1c21md3dNaGMxM3ZGYW45QXhmN29HL1JGTm00SmI0?= =?utf-8?B?YjJYb3hUcysrUDh2YnIwSEkvM1ljallKQTAvTXFBN1ZVSWFCSUVKRzJFVndO?= =?utf-8?B?WGhSNXJ6K3Frbm5HTGwwWVRpTGN4QU1Fc2FxRzVnTWxWdXQ3QmxZdVdOMmpG?= =?utf-8?B?L2VsVTYwVzllV1RRQTF6OGhKd0JZVHc4akF4eG1WcGhqNVVEWitWRTFsREF0?= =?utf-8?B?V0FNdVdBYTFXbW1Rd2lmb1RZUUR2elZ2S3FrTEtDUXpuQnlkNUdkYzlvYi9z?= =?utf-8?B?cHFRcUllSml3QTRPemh1NlU1enlkZU1yNlE0WUtyTmtBek1wTEM2R2s0S2F0?= =?utf-8?B?b1FPbEtoR0Z3b2JwRi9MSnNhR0NDTjArR3ZHTkVXUWFwZXV2NlJCQm92cDYv?= =?utf-8?B?clFkcnR2czFkeklFUTh6czRLL3JlK3g4d2NMcWVuS040SE5wV2gyQ041VlBz?= =?utf-8?B?b3dna0NhY2R4cVBUYWFpQmpVTk4wRW1sTkFNYnd5ald5bTNMeFRXdnYvc3Jl?= =?utf-8?B?YXlyU1hHdWp6RUdzUWdTN3FPTzFBPT0=?= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: 26920959-6c86-4cda-7e5b-08d9e4fbe987 X-MS-Exchange-CrossTenant-AuthSource: BLAPR10MB4835.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 31 Jan 2022 20:54:45.8030 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 4e2c6054-71cb-48f1-bd6c-3a9705aca71b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 3TPaJGTyNQxSCF7ALyOA84CMkOciOKUaP4DfFf/cB2G1XhaQsWXg76MpVcB7lTjqgFnG3BAPxp7JGjlhPnbREPtgx3gwCzqL6ntZjUlwWFc= X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR10MB4744 X-Proofpoint-Virus-Version: vendor=nai engine=6300 definitions=10244 signatures=673430 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 spamscore=0 mlxlogscore=892 adultscore=0 malwarescore=0 bulkscore=0 suspectscore=0 mlxscore=0 phishscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2201110000 definitions=main-2201310132 X-Proofpoint-GUID: 5jZAhrKxtAiHWQ19OgHPZ_pq1DlyED7_ X-Proofpoint-ORIG-GUID: 5jZAhrKxtAiHWQ19OgHPZ_pq1DlyED7_ X-Stat-Signature: nmguqx15m76h8m65mqmnxcm3y6ozzrc5 X-Rspam-User: nil Authentication-Results: imf31.hostedemail.com; dkim=pass header.d=oracle.com header.s=corp-2021-07-09 header.b="bvBe/unU"; dkim=pass header.d=oracle.onmicrosoft.com header.s=selector2-oracle-onmicrosoft-com header.b=oEKvIoJI; spf=none (imf31.hostedemail.com: domain of joao.m.martins@oracle.com has no SPF policy when checking 205.220.165.32) smtp.mailfrom=joao.m.martins@oracle.com; dmarc=pass (policy=none) header.from=oracle.com X-Rspamd-Server: rspam02 X-Rspamd-Queue-Id: 6FB4F20006 X-HE-Tag: 1643662505-863422 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: On 1/31/22 20:29, Matthew Wilcox wrote: > Unless I am mistaken, you have to pass the compound head of the page > which has the error to collect_procs(). Am I mistaken? > -rc2 already has a fix for it: https://lore.kernel.org/linux-mm/20220129021420.PgBIZm-q9%25akpm@linux-foundation.org/ Earlier in that function there's a: page = compound_head(page); So the @page passed to collect_procs() already is a head page. filesystem-dax, though, it's always base pages. So there's no heads. > (found by code inspection as part of the folio work; I think > collect_procs() needs to take a folio, which would eliminate this class > of errors) > > +++ b/mm/memory-failure.c > @@ -1633,7 +1633,7 @@ static int memory_failure_dev_pagemap(unsigned long pfn, int flags, > * SIGBUS (i.e. MF_MUST_KILL) > */ > flags |= MF_ACTION_REQUIRED | MF_MUST_KILL; > - collect_procs(page, &tokill, flags & MF_ACTION_REQUIRED); > + collect_procs(compound_head(page), &tokill, flags & MF_ACTION_REQUIRED); > > list_for_each_entry(tk, &tokill, nd) > if (tk->size_shift) > >