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 A1DFECDE01B for ; Thu, 26 Sep 2024 15:59:10 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 31E0E6B0093; Thu, 26 Sep 2024 11:59:10 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 2CCC76B0095; Thu, 26 Sep 2024 11:59:10 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 16DB96B0096; Thu, 26 Sep 2024 11:59:10 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0016.hostedemail.com [216.40.44.16]) by kanga.kvack.org (Postfix) with ESMTP id E8F986B0093 for ; Thu, 26 Sep 2024 11:59:09 -0400 (EDT) Received: from smtpin22.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay03.hostedemail.com (Postfix) with ESMTP id 6B05FA1AAE for ; Thu, 26 Sep 2024 15:59:09 +0000 (UTC) X-FDA: 82607348418.22.405203D Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.129.124]) by imf28.hostedemail.com (Postfix) with ESMTP id 65A36C0008 for ; Thu, 26 Sep 2024 15:59:06 +0000 (UTC) Authentication-Results: imf28.hostedemail.com; dkim=pass header.d=redhat.com header.s=mimecast20190719 header.b="fFji/aaD"; spf=pass (imf28.hostedemail.com: domain of peterx@redhat.com designates 170.10.129.124 as permitted sender) smtp.mailfrom=peterx@redhat.com; dmarc=pass (policy=none) header.from=redhat.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1727366226; 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:in-reply-to:references:references:dkim-signature; bh=gFAsLAn7aoKzo71RR9rydtziNxEzX6MqXWWWxfPqW18=; b=EYgpOOhEY7Pc/pc5afKp3+kfDzyXrgXZ850ZGlHwrCq9SVlQLIDn3aVifULIFor516jSD4 QbOHfda6S1reyV9kSIuxJPD26V2Mgl1Ekxzr4HoPh5zS5o5zMimHXOKbefJkIpyWlVN/JL yp6Zla/K1C1T1XwzFNMKe/vOPa9HRmk= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1727366226; a=rsa-sha256; cv=none; b=Hj/dHAJq19WPUH9eyrNpBGXErnbab1HOGYRkVfcjBXQWNaTUOQXMCE91dRPdRDo8+HARYu WemSWHnS/tX6/QvlXUWd0aCohey3wkxdSCEhG3/WubLs2qc4xUVxublfie5jNzQzOhwIkc XmD/38ypvxeGVRK0R/ss0AWOltSEeGE= ARC-Authentication-Results: i=1; imf28.hostedemail.com; dkim=pass header.d=redhat.com header.s=mimecast20190719 header.b="fFji/aaD"; spf=pass (imf28.hostedemail.com: domain of peterx@redhat.com designates 170.10.129.124 as permitted sender) smtp.mailfrom=peterx@redhat.com; dmarc=pass (policy=none) header.from=redhat.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1727366345; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=gFAsLAn7aoKzo71RR9rydtziNxEzX6MqXWWWxfPqW18=; b=fFji/aaDeHjiKB5BJM2TItb42ZsBKivtXQwbYMzXpb6dR184LbRL+sOuCfkhAWD8Y7G0Dv 5Iuli2sEWp/Y1vz2OHu18Y2w6IAs5fqMfomeVtCqUY/K1GMipFTWpVT9L2Wly3YrxthlYj xXtkv9LsYuwv2yGN6CKdqcMENkzlzS0= Received: from mail-qk1-f197.google.com (mail-qk1-f197.google.com [209.85.222.197]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-487-HB9FX2XYOfKIMqbm7RdB7g-1; Thu, 26 Sep 2024 11:59:04 -0400 X-MC-Unique: HB9FX2XYOfKIMqbm7RdB7g-1 Received: by mail-qk1-f197.google.com with SMTP id af79cd13be357-7ac9b08cb77so255821785a.1 for ; Thu, 26 Sep 2024 08:59:04 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1727366344; x=1727971144; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=gFAsLAn7aoKzo71RR9rydtziNxEzX6MqXWWWxfPqW18=; b=vLAPPj8+btUcv405YaBOFwWVOouq5eTrBM8wEPwoMpXPeJHOn/w97HlImgeU3CH9hs JaftxrBJ3hzqVApf+6gRjWUGVoA4pWmauqQ0EV/pC3U3VStX896mAyZcIBHsXrmUhkyA CLJmuwXnSTrnTBNhEy+Wipu2+ucs6opxNLtLjxgGrMMaA2k4mrqo2zrmAJjsGWHwMaAm 460BYIpU7HBP53rtkuO849Wl8vXYCeq0GL76nrpaMpP2uN5VN78Wxi64IEPs7xvbqN5m Ep7w1ex+TUQgj6d4ZeR2ob0Mw35jaMFqlnCRJTMLx2BnfUqasVFwf317m8zB97vMt/Ds j8UQ== X-Forwarded-Encrypted: i=1; AJvYcCXGkxGujau2LAUyB/m6urqJOlmPMVp57WAs+2QRl4Fk7VKxoUnRlJyo/6Gk0VEcs14uDvc2S4BAcw==@kvack.org X-Gm-Message-State: AOJu0YzLodtHgQ8v3ix/CSDYx12I0THRO5s91hwFQ5utffX0NP0UpmF9 D5slg8OKbpzEbEMMOE9aN+tfJbSBsSn55RfA9Rw5V0ilIvOO7S6dlk5rWVc0GwMyLJ8U81b76LT reXp1olug5d1eAUgJDZV+7DQrBVP6OiUCXh5OiZXszODiNA8c X-Received: by 2002:a05:620a:3907:b0:7ac:c348:6a55 with SMTP id af79cd13be357-7ae3785aa4dmr7320985a.38.1727366344021; Thu, 26 Sep 2024 08:59:04 -0700 (PDT) X-Google-Smtp-Source: AGHT+IGRrdxCsCY8RTL63d/BLOR3iT34tGRFX8LGr+whBimlqLf5fLkvQQDVmOR5aqdwd7HjXAlecA== X-Received: by 2002:a05:620a:3907:b0:7ac:c348:6a55 with SMTP id af79cd13be357-7ae3785aa4dmr7318385a.38.1727366343632; Thu, 26 Sep 2024 08:59:03 -0700 (PDT) Received: from x1n (pool-99-254-121-117.cpe.net.cable.rogers.com. [99.254.121.117]) by smtp.gmail.com with ESMTPSA id af79cd13be357-7ae377ecc96sm2434085a.68.2024.09.26.08.59.02 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 26 Sep 2024 08:59:03 -0700 (PDT) Date: Thu, 26 Sep 2024 11:59:00 -0400 From: Peter Xu To: David Hildenbrand Cc: linux-kernel@vger.kernel.org, linux-mm@kvack.org, syzbot+bf2c35fa302ebe3c7471@syzkaller.appspotmail.com Subject: Re: [PATCH v1] mm/huge_memory: check pmd_special() only after pmd_present() Message-ID: References: <20240926154234.2247217-1-david@redhat.com> MIME-Version: 1.0 In-Reply-To: <20240926154234.2247217-1-david@redhat.com> X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Type: text/plain; charset=utf-8 Content-Disposition: inline X-Rspamd-Queue-Id: 65A36C0008 X-Stat-Signature: axdy8obng5shp3waois9ye66a9t4moqu X-Rspamd-Server: rspam09 X-Rspam-User: X-HE-Tag: 1727366346-647975 X-HE-Meta: U2FsdGVkX18db9Cvj0+/aOzdK9iLeSDZOmnhino0/jAz0S0k/o9p7bOLX4MtMwEatczvlvQZvMunaFsFdTOcpz+wp63MfkfwmlbHvt7MUsgbxm8Zs5xXDFZNZFVqmp5+InwfZMInenSEwxqbQsHjNyO1YcIVLIpUnoxvWBGu8O0G/7Z9SHGsgQ/iGR+ey0gs9tlb97GD8MD38C/LxLeoGyNNbhbGNKFgUFauR4EEdXUNZPizhZwOO/CDrTBR6d6dMA6Fw55Ip31XRqD5Vz7Bck4VN9dn5IcZ/QEckaECueTz5yGsEZ0Kr+Vmg3HQxIqPr/FYacqU2nAnpnTJGYlWEqacpt7jMvDCmmXmWlGiK8Rpq5NVDZNmS9Wv6L+/lw19O4K+sOhaTuSpHxDfw8C/gAwb5TXN9TgYXResATIDIreLkewDdOdjtbpRq9VZH1XO/tPd/DtcJziW2Bd2Ccebn7poT3eYWkDsyyJy2ipTdULytfA+GaBb23VFLRWbI2EYLJV0cV1LUwesCmy9pwGViTtYadn4cLsmO+CqXX5ES1QbbWrOktCwan3XmFJK4vzrvowTv6Ipk7VU23zFULYcYdgxUBkBCdCzDpXibmr1tv1Rp31TyxmYUddIyQx8jFnl3Mq5A6ilYjeRgsSd+WgeM9Htaeaxyuc4ZESCskaHqFf4Itm5lTmYtMSMjBSZvHqfhIckIHE5R7hJBQRm0Vy6eoFpPNHPSroI+dickNuCGC9R1lVG0EHzPBmL2yf09klgL2px5PtG33AYacWEX/6h4CfdmXWMuGfqPb0ClWAGj/tFw9BMxuG7x9E5LaWCcOfL6Yp15G9fGzBb/3CgKdLRxsm1pzOqNPFta+/Z7B4TERlwE6FJPv74ughEoJ5KbVbxBVAch0p6oddmyC2XAYFQ8np6lFYoGjqMz1qTEHTGztE7ADboftzEoXyYDwhPtxmml7S5+KeIwFuzFTW62Ow X6vrpAjC yxEA9Ws11BS1E9rtSCKpyuXSHHwKYGTjs/OsJmFhDkXxRaCj1CMx5lMvZ8uV6eTsCAL0kRVHHMuN+5KJfsahBLEv4qQPQE8xd2+I0sf64ehx5npsxhdsN64nRwZTlDsAlbhTy9jfNNHISQTihJy/Bu/THrjls5mras+LZwOvPn2OxWdPPHG1x9xwruRyf19zArrdjmZOwa6lUjGLHJ/xG9C/SgLH50ltyk1u+wEy1R7mOQonykvX6KTkrnanGH4SaGTIFB+J45+nHtZkMCpSCBkTkCP7IH+keiEkjFbzS5niM1yRNJhMJG1bTv50bZL4Jg8FcGObemjMsciWpEY1mioyU0qhJ9yb1VkOmdgzmAz2MKYvXd+d2PAxLRU4nK5fTiZNLbF7lOf7gpCZ6yviV7stP2jBut44DuaYDhppEs+2xS4stRPMsvn7Knm6gOiMUL7/1FZKit6ISOm+SGU/x6ZLUTbdok4ntFD+oMk8qsdAC52gDx6giE/5gKHnMAmH2y4oCneaWA/OkFbI2WXb8ItLIzEqHMxsH9yJP5P2WJiNIpxjmHHwxFaJYbUEq0u+HG2ipAg9QP0fTsvYTOCNX+T7gVzJLaN2o3/HluiIEf/VytgVM8jmKhvgHrv6LLPfN98TQG6iUArdRI7I= X-Bogosity: Ham, tests=bogofilter, spamicity=0.000635, 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 Thu, Sep 26, 2024 at 05:42:34PM +0200, David Hildenbrand wrote: > We should only check for pmd_special() after we made sure that we > have a present PMD. For example, if we have a migration PMD, > pmd_special() might indicate that we have a special PMD although we > really don't. > > This fixes confusing migration entries as PFN mappings, and not > doing what we are supposed to do in the "is_swap_pmd()" case further > down in the function -- including messing up COW, page table handling > and accounting. > > Reported-by: syzbot+bf2c35fa302ebe3c7471@syzkaller.appspotmail.com > Closes: https://lore.kernel.org/lkml/66f15c8d.050a0220.c23dd.000f.GAE@google.com/ > Fixes: bc02afbd4d73 ("mm/fork: accept huge pfnmap entries") > Cc: Peter Xu > Signed-off-by: David Hildenbrand Reviewed-by: Peter Xu -- Peter Xu