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 AFA1DC433F5 for ; Tue, 8 Mar 2022 17:27:15 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 356978D000A; Tue, 8 Mar 2022 12:27:15 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 3059A8D0001; Tue, 8 Mar 2022 12:27:15 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 1F4948D000A; Tue, 8 Mar 2022 12:27:15 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (relay.hostedemail.com [64.99.140.26]) by kanga.kvack.org (Postfix) with ESMTP id 0FB958D0001 for ; Tue, 8 Mar 2022 12:27:15 -0500 (EST) Received: from smtpin05.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay12.hostedemail.com (Postfix) with ESMTP id D426E120803 for ; Tue, 8 Mar 2022 17:27:14 +0000 (UTC) X-FDA: 79221899988.05.66B4F8B Received: from mail-lj1-f175.google.com (mail-lj1-f175.google.com [209.85.208.175]) by imf01.hostedemail.com (Postfix) with ESMTP id 74CF54000A for ; Tue, 8 Mar 2022 17:27:14 +0000 (UTC) Received: by mail-lj1-f175.google.com with SMTP id 25so12401760ljv.10 for ; Tue, 08 Mar 2022 09:27:14 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linux-foundation.org; s=google; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=pBQK4ptu5eu2CzXY/y3b95Ceol5gDBseg1AS4dXHJSU=; b=QU6dkM5L6DYfyvH3o0dpNFOmDFylySug8m5L3qgKK6V5c8lg8QrTruPxg85qI+5sPk LkI5S5XEiNwiuN1kP91fSxyfy5flySXCqOk3vBfhsp6fjOxF8K8sHKh8L3to/d668dCH 7E+gqw0RScaNfcrTSTDNHD/elU9jbJacJnGLk= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=pBQK4ptu5eu2CzXY/y3b95Ceol5gDBseg1AS4dXHJSU=; b=YXsBcNPo588NdPWJ8HaNBjF4FHth9n0I+KwM36CBi2uezx5zQgoUDE8DIVAvvVntPG oPVH+qX1/6ODCwfQMxRhlKYYdQ5BEgKA6BNpRmi1MF/S1yWFtobr3fKkspx2HpYVkkgG tN7lG7Kfd1qdwekGN5rwO7xtB4laeMUfNeWvliHq8W0DlWL78XoXVKFYo59QHzO63eUS FAJMKsfjnldXlXCUndqac+fbf4f5YzyL0JQBQiCI/ECMzf8N9+lKNFlpbMcnjh5h1I/v aZtAYjgqo0VQzzU0pvhq9dhGSl7E1F03HnkEDAyYKP798RDc1Edqf+Nrt495vAcjmCy2 24hw== X-Gm-Message-State: AOAM532CHdyxzCRlramZAU8dZ1NFg1PN/cyMjc4DAZTvqwpdRscrnvyA RJy3xzhl4E4pJWKoCwEv8+DBLeQOcNogWqnTwNU= X-Google-Smtp-Source: ABdhPJz6ehGTCQsrr/WKW+4ccSXdVitIp0OjEs/p6WImZ2949bNyhGj6J5+3AiITtbrMHfyc+uFMrw== X-Received: by 2002:a2e:834f:0:b0:247:dbb3:ac4a with SMTP id l15-20020a2e834f000000b00247dbb3ac4amr10656847ljh.372.1646760430120; Tue, 08 Mar 2022 09:27:10 -0800 (PST) Received: from mail-lf1-f45.google.com (mail-lf1-f45.google.com. [209.85.167.45]) by smtp.gmail.com with ESMTPSA id p21-20020a056512139500b00447c9b87945sm2996864lfa.172.2022.03.08.09.27.09 for (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Tue, 08 Mar 2022 09:27:09 -0800 (PST) Received: by mail-lf1-f45.google.com with SMTP id w7so19811415lfd.6 for ; Tue, 08 Mar 2022 09:27:09 -0800 (PST) X-Received: by 2002:a05:6512:e8a:b0:443:7b8c:579a with SMTP id bi10-20020a0565120e8a00b004437b8c579amr11552290lfb.687.1646760428865; Tue, 08 Mar 2022 09:27:08 -0800 (PST) MIME-Version: 1.0 References: In-Reply-To: From: Linus Torvalds Date: Tue, 8 Mar 2022 09:26:52 -0800 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: Buffered I/O broken on s390x with page faults disabled (gfs2) To: David Hildenbrand Cc: Andreas Gruenbacher , Alexander Viro , linux-s390 , Linux-MM , linux-fsdevel , linux-btrfs Content-Type: text/plain; charset="UTF-8" X-Rspamd-Server: rspam09 X-Rspamd-Queue-Id: 74CF54000A X-Stat-Signature: m6jakqcbr93rh1syric4xrjuof6u5ea4 Authentication-Results: imf01.hostedemail.com; dkim=pass header.d=linux-foundation.org header.s=google header.b=QU6dkM5L; spf=pass (imf01.hostedemail.com: domain of torvalds@linuxfoundation.org designates 209.85.208.175 as permitted sender) smtp.mailfrom=torvalds@linuxfoundation.org; dmarc=none X-Rspam-User: X-HE-Tag: 1646760434-521322 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 Tue, Mar 8, 2022 at 12:21 AM David Hildenbrand wrote: > > As raised offline already, I suspect > > shrink_active_list() > ->page_referenced() > ->page_referenced_one() > ->ptep_clear_flush_young_notify() > ->ptep_clear_flush_young() > > which results on s390x in: > > static inline pte_t pte_mkold(pte_t pte) > { > pte_val(pte) &= ~_PAGE_YOUNG; > pte_val(pte) |= _PAGE_INVALID; > return pte; > } Yeah, that looks likely. It looks to me like GUP just doesn't care about _PAGE_INVALID on s390, and happily looks up that page despite it not being "present" as far as hardware is concerned. Your actual patch looks pretty nasty, though. We avoid marking it accessed on purpose (to avoid atomicity issues wrt hw-dirty bits etc), but still, that patch makes me go "there has to be a better way". Linus