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 X-Spam-Level: X-Spam-Status: No, score=-0.9 required=3.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,SPF_HELO_NONE, SPF_PASS autolearn=no autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 84C17C83004 for ; Tue, 28 Apr 2020 03:51:02 +0000 (UTC) Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by mail.kernel.org (Postfix) with ESMTP id 43C74206F0 for ; Tue, 28 Apr 2020 03:51:02 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (1024-bit key) header.d=linux-foundation.org header.i=@linux-foundation.org header.b="fSI/ijUi" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 43C74206F0 Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=linux-foundation.org Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=owner-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix) id E61F38E0005; Mon, 27 Apr 2020 23:51:01 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id E13168E0001; Mon, 27 Apr 2020 23:51:01 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id CB4B78E0005; Mon, 27 Apr 2020 23:51:01 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from forelay.hostedemail.com (smtprelay0167.hostedemail.com [216.40.44.167]) by kanga.kvack.org (Postfix) with ESMTP id ABA208E0001 for ; Mon, 27 Apr 2020 23:51:01 -0400 (EDT) Received: from smtpin18.hostedemail.com (10.5.19.251.rfc1918.com [10.5.19.251]) by forelay04.hostedemail.com (Postfix) with ESMTP id 6D29752C9 for ; Tue, 28 Apr 2020 03:51:01 +0000 (UTC) X-FDA: 76755887922.18.bead09_7d4f7fdb3d029 X-HE-Tag: bead09_7d4f7fdb3d029 X-Filterd-Recvd-Size: 4629 Received: from mail-lf1-f65.google.com (mail-lf1-f65.google.com [209.85.167.65]) by imf33.hostedemail.com (Postfix) with ESMTP for ; Tue, 28 Apr 2020 03:51:00 +0000 (UTC) Received: by mail-lf1-f65.google.com with SMTP id u10so15662729lfo.8 for ; Mon, 27 Apr 2020 20:51:00 -0700 (PDT) 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=VVBS2zR8u10QnId+SjIws+E/mbDlgxt11FVLpUCy9Fk=; b=fSI/ijUiq7Zsrz+mYpIid9wBMr+ufvXZJdEGYfYAV6Wa7WrfJcI8pP8JyJG39ryg8H oS3R8qQuk5cLe0fU2CCWNj05+kTTXNRrrHruAKyDUm0TOEQcvdS9B6OBB0/HcU2kGNsZ OclGbGyiNhfGDIr+gFIj8hC2fmRzB7XJRVfjs= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=VVBS2zR8u10QnId+SjIws+E/mbDlgxt11FVLpUCy9Fk=; b=hQ4v0HKL/qPwb5iPJrQMv6BQAgRQLj+kLdUOUiY5J4ePSmxXn0PR+3NtXS+J8vNsHQ y2uy4jpVDOoFxMFHrdALYHrNQmdcPKxM5nhY/4fYYfbup0M+PDog8IAXoAoPefk9p+Bo 39AfZj4kGrqlWRcihR92nLCSXaVEqHwdhYjECj42e7zIPH97UbqLvzVbl7d3Tcv9PFqs WoJ2+FszXIqzXdKFy0ReB+PmkAkRj1yUhwnVW7qThcLhuOKjF1TiJUWK1SffgijNhxl9 W2oeVKZqrb9JGoVAfHMqobYvfHR8kPmXblVs20X4O0fVJTjbsFPAWvhuTdNaesfcZfRS 5kYw== X-Gm-Message-State: AGi0PuYrP06kknxdYC04ixxhVua4GVbTnG3QxcCPV12peDn0ohMZ5UqH TnxKEE9SO8njFuUwmPoVoixcBjFZ99E= X-Google-Smtp-Source: APiQypJy9srhSmrOZ69OKk2qQma8Xv113/wwrw+BJoBT4vWljYTOYMrp3BuJUGtx6NAF+C0hJ19KSQ== X-Received: by 2002:a05:6512:1095:: with SMTP id j21mr17677707lfg.118.1588045858347; Mon, 27 Apr 2020 20:50:58 -0700 (PDT) Received: from mail-lj1-f176.google.com (mail-lj1-f176.google.com. [209.85.208.176]) by smtp.gmail.com with ESMTPSA id b28sm11479024ljo.1.2020.04.27.20.50.56 for (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Mon, 27 Apr 2020 20:50:57 -0700 (PDT) Received: by mail-lj1-f176.google.com with SMTP id w20so19953516ljj.0 for ; Mon, 27 Apr 2020 20:50:56 -0700 (PDT) X-Received: by 2002:a2e:7308:: with SMTP id o8mr16201494ljc.16.1588045856507; Mon, 27 Apr 2020 20:50:56 -0700 (PDT) MIME-Version: 1.0 References: <20200428032745.133556-1-jannh@google.com> <20200428032745.133556-6-jannh@google.com> In-Reply-To: <20200428032745.133556-6-jannh@google.com> From: Linus Torvalds Date: Mon, 27 Apr 2020 20:50:40 -0700 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: [PATCH 5/5] mm/gup: Take mmap_sem in get_dump_page() To: Jann Horn Cc: Andrew Morton , Christoph Hellwig , Linux Kernel Mailing List , Linux-MM , linux-fsdevel , Alexander Viro , "Eric W . Biederman" , Oleg Nesterov , Russell King , Linux ARM , Mark Salter , Aurelien Jacquiot , linux-c6x-dev@linux-c6x.org, Yoshinori Sato , Rich Felker , Linux-sh list Content-Type: text/plain; charset="UTF-8" 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 Mon, Apr 27, 2020 at 8:28 PM Jann Horn wrote: > > Properly take the mmap_sem before calling into the GUP code from > get_dump_page(); and play nice, allowing __get_user_pages_locked() to drop > the mmap_sem if it has to sleep. This makes my skin crawl. The only reason for this all is that page cache flushing. My gut feeling is that it should be done by get_user_pages() anyway, since all the other users presumably want it to be coherent in the cache. And in fact, looking at __get_user_pages(), it already does that if (pages) { pages[i] = page; flush_anon_page(vma, page, start); flush_dcache_page(page); ctx.page_mask = 0; } and I think that the get_dump_page() logic is unnecessary to begin with. Linus