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 C0693C43334 for ; Tue, 19 Jul 2022 09:42:14 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 0F9876B0071; Tue, 19 Jul 2022 05:42:14 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 0827E6B0073; Tue, 19 Jul 2022 05:42:14 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id E16476B0074; Tue, 19 Jul 2022 05:42:13 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0017.hostedemail.com [216.40.44.17]) by kanga.kvack.org (Postfix) with ESMTP id CE4AA6B0071 for ; Tue, 19 Jul 2022 05:42:13 -0400 (EDT) Received: from smtpin17.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay09.hostedemail.com (Postfix) with ESMTP id 802AE35412 for ; Tue, 19 Jul 2022 09:42:13 +0000 (UTC) X-FDA: 79703358546.17.B4264B1 Received: from mx0b-00069f02.pphosted.com (mx0b-00069f02.pphosted.com [205.220.177.32]) by imf01.hostedemail.com (Postfix) with ESMTP id 12EAD40067 for ; Tue, 19 Jul 2022 09:42:11 +0000 (UTC) Received: from pps.filterd (m0246630.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.17.1.5/8.17.1.5) with ESMTP id 26J8F4nd008091; Tue, 19 Jul 2022 09:42:11 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=date : from : to : cc : subject : message-id : content-type : mime-version; s=corp-2022-7-12; bh=prwkGUyQwRj8UECPdWSFMjDgoXOwdRAHDaxMoUggS7w=; b=sJYuFIO/hfq6AHqUf7XKlLwBIezmnpjnvWSqtZhDBAubYGSSb/zUbr2ZVzO0CWr02t2o uMRo7dsMvWetfl+K3IEeSOF03r50gKIH0yf8+SUqwlPZtZ1lPqLYWsIuclp3QZRJvFPp Ur1fL3A4+9BtpRsPjn3UNOH/RRLw/NrRnzUk/dcbNpnzO+prXClNwoXmOSDME87zM66w reeqL/YMVIPqzqdmFIG4BDWZdiNhpkSp8SnhGX0vkX2gS3Sr5bFjohzLCfmlO67T0cvJ XUpTCAb2o3NI89hdrLpxekjfV+RnTC2rty9l8v+Z6jdoe9D8M1GWhEkNFq7SoG1+jdXm 8A== Received: from phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com (phxpaimrmta03.appoci.oracle.com [138.1.37.129]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3hbkrc5p68-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 19 Jul 2022 09:42:11 +0000 Received: from pps.filterd (phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com [127.0.0.1]) by phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com (8.17.1.5/8.17.1.5) with ESMTP id 26J8ZgVV039189; Tue, 19 Jul 2022 09:42:10 GMT Received: from nam04-bn8-obe.outbound.protection.outlook.com (mail-bn8nam04lp2048.outbound.protection.outlook.com [104.47.74.48]) by phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com (PPS) with ESMTPS id 3hc1k4k2tm-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 19 Jul 2022 09:42:10 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Dm9j6JUmIz73OoZBQ37jAZcQfy9wh9Oaxf7mAlKZ6iN3RUbKORTwXW3+M+DckNoGN8MW7KIF+E4e2Rdgke3DIRNcjFJiU1f33gbbxxS2HuIaWIUj7Dn0oilRQuYk3RGk+TWfBwz1MQj91aOEav4KZX3fpDTbeVp1BhvgBUX/nHVYpHwOeVd5R/0Rfb0CELAdZzQoKF3W7MSO2f2WnzPtNcoFihBEPaif1luMYUojLFVvERGOu5r3sE9qMyxdir6Rs9tXFIZ1O5EMvgq1ZGKpiyMy3eUOV/dP1q9n67AX9cWrcm/A5tT5Czs9EkPu4LRDqC7dVvYFEibcQyRLZ0kylA== 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=prwkGUyQwRj8UECPdWSFMjDgoXOwdRAHDaxMoUggS7w=; b=MYqGahofhxdRo8zFvkrOQJFwPc1OkS08bpheD6GeA1fUIYJRV2NUFXyRWN4NENBIWkpPngfoJcrmdRQSlwf+n/qmx9JrMQyO+miIBe5pK9k1pT8v6Hbfp8u8ueSQT88Ja30gY7/BtoEmc9vebTp8qRQQcixHJTScBOMIBmlh2rj1VfKPTW3dTb3jZ8CfGXn862H0xM32u1CuA77UG0FxM/ooE9dSHixNSeFIt+Pds3q0V63eGkfV2gVJ/c5PhOz/3n6PDJEKVGTRXvAMbXZ4oAMi9EW9mwgNNoF5Vr8JQunRnAIt3K4jK+bH29qFtIap2J0ozxQvhiGbjzsbtj4jDw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oracle.com; dmarc=pass action=none header.from=oracle.com; dkim=pass header.d=oracle.com; 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=prwkGUyQwRj8UECPdWSFMjDgoXOwdRAHDaxMoUggS7w=; b=EdegNA0J9vD6Ivro/6x/G4hBNuJfcXfq4IJ/s6ddrjCZnU4F/2mVoPHD4pWc/Ljxvd2mqhb6vO2e/is86+TUtaY6mngkfPkQu0qi++WpHVc+J6veLYgtcgc31toNyAas7Hgnn2OiBBE8x8Scpf2UgRN4sErqrwl4U8ASuNVPFu8= Received: from MWHPR1001MB2365.namprd10.prod.outlook.com (2603:10b6:301:2d::28) by BN0PR10MB4933.namprd10.prod.outlook.com (2603:10b6:408:125::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5438.19; Tue, 19 Jul 2022 09:42:07 +0000 Received: from MWHPR1001MB2365.namprd10.prod.outlook.com ([fe80::5020:9b82:5917:40b]) by MWHPR1001MB2365.namprd10.prod.outlook.com ([fe80::5020:9b82:5917:40b%6]) with mapi id 15.20.5438.023; Tue, 19 Jul 2022 09:42:07 +0000 Date: Tue, 19 Jul 2022 12:41:59 +0300 From: Dan Carpenter To: apopple@nvidia.com Cc: linux-mm@kvack.org Subject: [bug report] mm/gup: migrate device coherent pages when pinning instead of failing Message-ID: Content-Type: text/plain; charset=us-ascii Content-Disposition: inline X-ClientProxiedBy: ZR0P278CA0125.CHEP278.PROD.OUTLOOK.COM (2603:10a6:910:20::22) To MWHPR1001MB2365.namprd10.prod.outlook.com (2603:10b6:301:2d::28) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: c82158df-57dc-461d-8f00-08da696af21a X-MS-TrafficTypeDiagnostic: BN0PR10MB4933:EE_ X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: NDcb36+VIQOLO6uRmPpPsyUzwPpLJNPdIpsOIJ5jNcv9FafionJfAt8OvNa+TlSW//Lx+LTJjPM1MTB5bL/NePZSRjT1ZO3xy9Z7aEnPDAntN7maQhpqLsVLGM4pN+QdOjuqL5hvUN+yDHnz9JGOtWsL3zke3LWAmbAbIQ6Pe0Cs3fHL4HoYOfekDw605zB/R7ArMx+ilxAPAt56QOEcheR4KuXLQfCrWrVQwXy9+NxWIG7l8WhrIn+1WW2wvvDEXdCmAIc/qjgEupM2VNOd0EuRJG/ukVdGb9wO2AU6sti1jFZnhIcdbTRMy2c0VadFKA0twFuevqrSduFTkhzRUTFXhwO13QnW0IDo6hN+7C8H9akPkauIV0iyh/SNVjpw7dFb9ldJYQnmAbNbkUHI2Zd1Xt5VQjVIpGE0DWgch5tu1IDglHvcT2bRMA8wGHxE5KasvMKmdVy5Ftn5++Hu2PZ6Gfe7sQb/kkUQiaxS+zHiBqqmKNa6Ii9HJpHPAgW+meoP4uYY0wMabSYneAs45qTxroFy5X02augmKbyyS2bL3U2n2xMfBeFTPDEHmIZzTEO4pgk3JoWUwKFBPUgVOEdfiTOsDVeyBS2cindC4g1wtdx9TOXdOCFlf+mZlMflrbyJUVeuXqdHv7dhhBT6OS8xyG+O9ji2IbIqDR4LlrlUoU7eUSmQdwWJDdZ2vJsyKVauDdeiLa3CAiseMDCI5yJghSVxLkynJzo+bEoVDuxgQ1aqhC35T6ntLCf+3LiXO+9UOftuDzlRiFKUGhknZlrJiywcSRXx6Us2lV+TclZ+WQspoH3qSuHTJvS72sta X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:MWHPR1001MB2365.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230016)(7916004)(396003)(376002)(39860400002)(366004)(136003)(346002)(8676002)(33716001)(4326008)(66476007)(86362001)(38100700002)(66946007)(38350700002)(186003)(5660300002)(44832011)(83380400001)(66556008)(8936002)(478600001)(52116002)(6486002)(6916009)(6666004)(316002)(9686003)(6512007)(41300700001)(26005)(2906002)(6506007);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?/G5L/lDaTUs/a81pvyPD0eqicpasQVvgmRMxEIiYYnz/ljwzddVZWCAXypwn?= =?us-ascii?Q?wigiKTm80PTauyPrqHHMwf9UNlCen+QE2SYRMTf1Txb4mvMdrOlhMX5D0/uY?= =?us-ascii?Q?h0O7rREbjDKN0Y1B3NUtpVF5ig9HEhP6UMvpAdVWjBD6BPLmmKAeq29A1wdI?= =?us-ascii?Q?o4+CHkmux1s1CvklYeZ5vl6R87Rp55kwO2RxN0jyY4yCZduClB5MfIPKoZOm?= =?us-ascii?Q?cotVBUQzvCsO73qgbhvZJ3/Zt5C1Qd3cfkAgzj+qm2iOf99CsLG+RunSZV2N?= =?us-ascii?Q?T5W3azhA1pzYfPAUVWIWhCdFz5t86uelkxVR99dV+RvxKIWc5LciBK8uhPyx?= =?us-ascii?Q?Q1rI7m6g73WU0VeFrwLiMayty57jDoQ/rmNOzU53jzHmMvYCoFBiZVoRSN6K?= =?us-ascii?Q?HCsdfHDwiX8Q+w3mkkQvc4tpeA7F245VQQ+JiQKuJFt3cyPALgDuuAy5z2XC?= =?us-ascii?Q?7fBFEnBGhKLaLzvr/KdQ2yPX/GYp9uQ5mNCf7ImDg1kw8FkWTbGOTqUzUbPg?= =?us-ascii?Q?n/ItwnmHhf9uDHL2d7nvEdH1nonl1eaG33GGmIvWtO8tOy0fQ5t8S98K1AzP?= =?us-ascii?Q?OQWCtmxAOO400tsvKn3eIv4xn0YvsvLY2CzOeGZzY29qcNhRaZsNITBgEkhj?= =?us-ascii?Q?lfcss5A5+wPqklaNyhfOEhfwlw95Hl6/GQ38SkOKTN7Y8suu5bGvaqhBtjug?= =?us-ascii?Q?vPIhpU00JiQFtnWXBlMzoEuujjjeF37aO81YQr4imH7XYBY35v5bJX0JIx1F?= =?us-ascii?Q?9zVZbcX9vFQNhmevnZppr9Os4IP7wFVYMNdPXQ8+RY4wI+055jwMD6UOhtUM?= =?us-ascii?Q?k9desms5zXpg+Y+CZqDLBor7VkyeyGbRmTri1OMaYCQCi5hh+oXdmzZD9Swo?= =?us-ascii?Q?mSu9k3sWJXu9mMii1k/G4G9a7y+qs48hvlY9GRFLUo4F/n2T3RJiGrEH681p?= =?us-ascii?Q?n4gHazNqO8lRlcCT0V4npwmeAK0nqlJnQEGWcUQ1SFSgyQIRbj/2uHa4OaTp?= =?us-ascii?Q?69wA65dZMdRSxQH+gSqIWB6A+mD+bgzaShWwzcla/DrAMOqkb7PX2eLSlZqp?= =?us-ascii?Q?lCV0sZLn6+/SRRJRjdcAuPjXEpjawdqWCDCf0T1dmBJntxwSTeuUzVG4/sZL?= =?us-ascii?Q?u+l6BX4Pt1A1T5Na79OZSerfCQLjR77aKHa+aRa0PV66OQja+dzwqPCabCjg?= =?us-ascii?Q?tOqBK1258gZXLEB9fMM0oBFqhkP5dzTIUtRVDDX2Bz33ydRviR4wmprmZPv7?= =?us-ascii?Q?goElnhdTI1a/c0EdxlOcnjzfHSC00CEFXV4T4L0aAR9H7udvXmUEbDSh+ZdO?= =?us-ascii?Q?Jp4RUz/2GOaJkZC16y68IvNY/ikW2yIR5qyUUTxQzCUGWrxxWZyz5ABl3BUB?= =?us-ascii?Q?J+BmEIYZ+q5UtlC4Ze2M5X7eouH8bLrV1L8EWevlhvkJos8snZ5rFc5BkQKj?= =?us-ascii?Q?YZhYJMmbN4mXGUaBJ6bPq2GNGwCEZ0uMXqO0Gblultlb+nXFKvj98DBPwzAV?= =?us-ascii?Q?E/I8v3Sp8z+aWQuWQYOn/P7UQ+ycErA2c5cW87qUrbLQ6o6hchU6PcfMDc2v?= =?us-ascii?Q?czN9CT+ff1VuBnPzuAXla7ZR6jkjI5IADiNLUYNMGzPFk9ehyieb8nV5bsVT?= =?us-ascii?Q?Vw=3D=3D?= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: c82158df-57dc-461d-8f00-08da696af21a X-MS-Exchange-CrossTenant-AuthSource: MWHPR1001MB2365.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Jul 2022 09:42:07.7029 (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: LD1xDBCjpUX/UkH4mmUQ1KNY+kvkji677ufmJcOzFIHPKANEcm5nS8nqNJFTwpiwbhjLnS04zuLGsRhrAyDGG1x5OsNlV2u6HmThjksjLRk= X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN0PR10MB4933 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.205,Aquarius:18.0.883,Hydra:6.0.517,FMLib:17.11.122.1 definitions=2022-07-18_22,2022-07-18_01,2022-06-22_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 bulkscore=0 suspectscore=0 mlxlogscore=688 malwarescore=0 adultscore=0 mlxscore=0 spamscore=0 phishscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2206140000 definitions=main-2207190041 X-Proofpoint-GUID: fxbvTX4FMwGk7foTBmWApa4U_OklfRdX X-Proofpoint-ORIG-GUID: fxbvTX4FMwGk7foTBmWApa4U_OklfRdX ARC-Seal: i=2; s=arc-20220608; d=hostedemail.com; t=1658223732; a=rsa-sha256; cv=pass; b=TfrNCXaTrcSQe/2v4TcZsi//vA8xFQYX/In//C4dtQC86IALnRwh4vFsHjo8uFZLuOcAiQ QbgtsntVeW3idOzJ6kMWRi32K15265Q0ttCy6ZrxOQQe51RVgAd1hXklSVKorBueywno/J hQuIenVC6QTOWz7+P1FAoVksuuabLlM= ARC-Authentication-Results: i=2; imf01.hostedemail.com; dkim=pass header.d=oracle.com header.s=corp-2022-7-12 header.b="sJYuFIO/"; dkim=pass header.d=oracle.onmicrosoft.com header.s=selector2-oracle-onmicrosoft-com header.b=EdegNA0J; spf=none (imf01.hostedemail.com: domain of dan.carpenter@oracle.com has no SPF policy when checking 205.220.177.32) smtp.mailfrom=dan.carpenter@oracle.com; arc=pass ("microsoft.com:s=arcselector9901:i=1"); dmarc=pass (policy=none) header.from=oracle.com ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1658223732; 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:in-reply-to: references:dkim-signature; bh=prwkGUyQwRj8UECPdWSFMjDgoXOwdRAHDaxMoUggS7w=; b=K6yFOMTCeD/EDIXWl4ffuRza6hizhIKAPLIz0CwQ/bw6u2HH31Y7sKJ5JdVPfhvHAPVr/D TwvYUkZEZ71smJx1nsKooloWGxzF5jdY5gZk5XNPlHrXhmzlSdCi4VVTRuuCcyLFiQge23 LW41IxT+9koVQr7Wqqju7VLWrN6mSnE= X-Rspamd-Queue-Id: 12EAD40067 Authentication-Results: imf01.hostedemail.com; dkim=pass header.d=oracle.com header.s=corp-2022-7-12 header.b="sJYuFIO/"; dkim=pass header.d=oracle.onmicrosoft.com header.s=selector2-oracle-onmicrosoft-com header.b=EdegNA0J; spf=none (imf01.hostedemail.com: domain of dan.carpenter@oracle.com has no SPF policy when checking 205.220.177.32) smtp.mailfrom=dan.carpenter@oracle.com; arc=pass ("microsoft.com:s=arcselector9901:i=1"); dmarc=pass (policy=none) header.from=oracle.com X-Rspam-User: X-Rspamd-Server: rspam06 X-Stat-Signature: hm7mnfpd15npafjwyb9ot6ufoodc5den X-HE-Tag: 1658223731-131980 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: Hello Alistair Popple, The patch b05a79d4377f: "mm/gup: migrate device coherent pages when pinning instead of failing" from Jul 15, 2022, leads to the following Smatch static checker warning: mm/migrate_device.c:842 migrate_device_coherent_page() warn: duplicate check 'src_pfn & (1 << 1)' (previous on line 832) mm/migrate_device.c 810 int migrate_device_coherent_page(struct page *page) 811 { 812 unsigned long src_pfn, dst_pfn = 0; 813 struct migrate_vma args; 814 struct page *dpage; 815 816 WARN_ON_ONCE(PageCompound(page)); 817 818 lock_page(page); 819 src_pfn = migrate_pfn(page_to_pfn(page)) | MIGRATE_PFN_MIGRATE; 820 args.src = &src_pfn; 821 args.dst = &dst_pfn; 822 args.cpages = 1; 823 args.npages = 1; 824 args.vma = NULL; 825 826 /* 827 * We don't have a VMA and don't need to walk the page tables to find 828 * the source page. So call migrate_vma_unmap() directly to unmap the 829 * page as migrate_vma_setup() will fail if args.vma == NULL. 830 */ 831 migrate_vma_unmap(&args); 832 if (!(src_pfn & MIGRATE_PFN_MIGRATE)) 833 return -EBUSY; Return here. 834 835 dpage = alloc_page(GFP_USER | __GFP_NOWARN); 836 if (dpage) { 837 lock_page(dpage); 838 dst_pfn = migrate_pfn(page_to_pfn(dpage)); 839 } 840 841 migrate_vma_pages(&args); --> 842 if (src_pfn & MIGRATE_PFN_MIGRATE) 843 copy_highpage(dpage, page); No need to check again. Was dst_pfn intended? 844 migrate_vma_finalize(&args); 845 846 if (src_pfn & MIGRATE_PFN_MIGRATE) 847 return 0; Same check again. 848 return -EBUSY; 849 } regards, dan carpenter