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=-5.3 required=3.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS,USER_AGENT_SANE_1 autolearn=unavailable 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 2737EC3F2CD for ; Thu, 5 Mar 2020 15:48:18 +0000 (UTC) Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by mail.kernel.org (Postfix) with ESMTP id DF5C72073D for ; Thu, 5 Mar 2020 15:48:17 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org DF5C72073D Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=suse.cz Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=owner-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix) id 7B2656B0005; Thu, 5 Mar 2020 10:48:17 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 762AB6B0006; Thu, 5 Mar 2020 10:48:17 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 651676B0007; Thu, 5 Mar 2020 10:48:17 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from forelay.hostedemail.com (smtprelay0015.hostedemail.com [216.40.44.15]) by kanga.kvack.org (Postfix) with ESMTP id 4A4B86B0005 for ; Thu, 5 Mar 2020 10:48:17 -0500 (EST) Received: from smtpin06.hostedemail.com (10.5.19.251.rfc1918.com [10.5.19.251]) by forelay01.hostedemail.com (Postfix) with ESMTP id 51516180AD802 for ; Thu, 5 Mar 2020 15:48:17 +0000 (UTC) X-FDA: 76561740234.06.oven18_2b2c68c03ea0d X-HE-Tag: oven18_2b2c68c03ea0d X-Filterd-Recvd-Size: 3272 Received: from mx2.suse.de (mx2.suse.de [195.135.220.15]) by imf46.hostedemail.com (Postfix) with ESMTP for ; Thu, 5 Mar 2020 15:48:16 +0000 (UTC) X-Virus-Scanned: by amavisd-new at test-mx.suse.de Received: from relay2.suse.de (unknown [195.135.220.254]) by mx2.suse.de (Postfix) with ESMTP id 535D9AC37; Thu, 5 Mar 2020 15:48:14 +0000 (UTC) Subject: Re: [PATCH v7 1/7] mm: pass task and mm to do_madvise To: Minchan Kim , Andrew Morton Cc: LKML , linux-mm , linux-api@vger.kernel.org, oleksandr@redhat.com, Suren Baghdasaryan , Tim Murray , Daniel Colascione , Sandeep Patil , Sonny Rao , Brian Geffon , Michal Hocko , Johannes Weiner , Shakeel Butt , John Dias , Joel Fernandes , Jann Horn , alexander.h.duyck@linux.intel.com, sj38.park@gmail.com, Jens Axboe References: <20200302193630.68771-1-minchan@kernel.org> <20200302193630.68771-2-minchan@kernel.org> From: Vlastimil Babka Message-ID: <2a767d50-4034-da8c-c40c-280e0dda910e@suse.cz> Date: Thu, 5 Mar 2020 16:48:12 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.5.0 MIME-Version: 1.0 In-Reply-To: <20200302193630.68771-2-minchan@kernel.org> Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 7bit 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 3/2/20 8:36 PM, Minchan Kim wrote: > In upcoming patches, do_madvise will be called from external process > context so we shouldn't asssume "current" is always hinted process's > task_struct. > Furthermore, we couldn't access mm_struct via task->mm > once it's verified by access_mm which will be introduced in next > patch[1]. I would suggest to replace with: Furthermore, we must not access mm_struct via task->mm, but obtain it via access_mm() once (in the following patch) and only use that pointer [1], so pass it to do_madvise() as well. Note the vma->vm_mm pointers are safe, so we can use them further down the call stack. > And let's pass *current* and current->mm as arguments of > do_madvise so it shouldn't change existing behavior but prepare > next patch to make review easy. > > Note: io_madvise pass NULL as target_task argument of do_madvise > because it couldn't know who is target. can't > [1] http://lore.kernel.org/r/CAG48ez27=pwm5m_N_988xT1huO7g7h6arTQL44zev6TD-h-7Tg@mail.gmail.com > > Cc: Jens Axboe > Cc: Jann Horn > Reviewed-by: Suren Baghdasaryan > Signed-off-by: Minchan Kim Reviewed-by: Vlastimil Babka Nit: > @@ -676,7 +677,6 @@ static int madvise_free_pte_range(pmd_t *pmd, unsigned long addr, > if (nr_swap) { > if (current->mm == mm) > sync_mm_rss(mm); > - > add_mm_counter(mm, MM_SWAPENTS, nr_swap); > } > arch_leave_lazy_mmu_mode(); This looks stray and unrelated.