Received: by 2002:a05:6a10:c604:0:0:0:0 with SMTP id y4csp3703339pxt; Tue, 10 Aug 2021 09:24:32 -0700 (PDT) X-Google-Smtp-Source: ABdhPJzrEaPvn4ZjW5IacoymcxZv6YQH3EW7TXScUiXj/MOcQ29mzZxHUjIJR5mlQ4n0fD4DyKs/ X-Received: by 2002:a05:6602:587:: with SMTP id v7mr360451iox.54.1628612672523; Tue, 10 Aug 2021 09:24:32 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1628612672; cv=none; d=google.com; s=arc-20160816; b=UszGVQqP3YJ+WJ/0Yv+rP4x+2CA8aHDsv2EMQ3qJsCFDBjYcDZt6A0DVzzsZWRuu6f y/caica1cZmNUy40W8zv8FG3zfnYxQUPQDA6wmQjbq2wRgz41DrxNxLZ13Kro0gRV4uh +Ix3kVx46NDTCeAzuGp0otsxTxFZhUSLwVcVJ3CEy/rf0LpGkfluIKtKTliK1xSdlHA6 VAw7AyZzwtulgJqzWm2a3n3alM1ZLIVfjW5LQDNSSCwG5eT04inGTlRSKurf9GjR1s4l 672iIjdr0jR0aetbkxK7srdGTGrPyqN0+DXeuipbdnBBdczyFbRBGREzD/6ZTJF7gYhA 0t/A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:content-language :in-reply-to:mime-version:user-agent:date:message-id:from:references :cc:to:subject:dkim-signature; bh=IWF7YnjMUZ36VVps825FuadCPSXkcIXXEF9D9EXb+Jw=; b=N5CdXVjF5WtZ2dhWg1Ty4EeXjjkCCy9l3VF181TgTlRf+bKtsRbwONwSsrq5MzBIJu oaWlRNnmZgQ1H7R29REbHShpNvi/Fb09RZsFHhMfM1ZH1C4B7KehnVm0pyMeW7toN909 EcFsfLZ3D+SvdatRRvlT/O63mb+Sud5535S/Z2jYKj7jTAwBknI3UTDyYg4BQqCb5cDD OZcXTvkKJ3fbJiqKTmrRmKEnJZYbAb/OOJf8T6RZZb3tNo4BsAcJmCGS5VMyJ4RIAH1s NL92nckbhu3CAcU+fOu95HFaTzwTfvRn7cZ0NgJmJRTCNiorMeuUabdY2l8JOa7cFduV eSYA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@virtuozzo.com header.s=relay header.b=jfqhwSls; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=virtuozzo.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id y5si21143404ion.91.2021.08.10.09.24.21; Tue, 10 Aug 2021 09:24:32 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@virtuozzo.com header.s=relay header.b=jfqhwSls; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=virtuozzo.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S240010AbhHJLEf (ORCPT + 99 others); Tue, 10 Aug 2021 07:04:35 -0400 Received: from relay.sw.ru ([185.231.240.75]:40252 "EHLO relay.sw.ru" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S240026AbhHJLEd (ORCPT ); Tue, 10 Aug 2021 07:04:33 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=virtuozzo.com; s=relay; h=Content-Type:MIME-Version:Date:Message-ID:From: Subject; bh=IWF7YnjMUZ36VVps825FuadCPSXkcIXXEF9D9EXb+Jw=; b=jfqhwSlskPaXHRioD gd3dJw7xEkdzxwW4uAG6nzxFaR86y7Gm1PXlTlit1dPLVildLYwWGKwRXkFIx2euTkd/3JthQm+mD PC8/8C9ptqj/YCqDDcHqlnAVgJMBPfAl/dQUQnGDI+uCVZ0Pdhcs+T+q7Zh3KpGmUv35hP90WB1Go =; Received: from [10.93.0.56] by relay.sw.ru with esmtp (Exim 4.94.2) (envelope-from ) id 1mDPYG-006wYL-96; Tue, 10 Aug 2021 14:04:08 +0300 Subject: Re: [PATCH] mm: use in_task() in __gfp_pfmemalloc_flags() To: Andrew Morton Cc: linux-mm@kvack.org, linux-kernel@vger.kernel.org, kernel@openvz.org References: <20210809112448.3d7d8f2522e18e75ba6e31c0@linux-foundation.org> From: Vasily Averin Message-ID: <8bbc1658-03b2-f64e-d11a-153da3eb723a@virtuozzo.com> Date: Tue, 10 Aug 2021 14:04:07 +0300 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.11.0 MIME-Version: 1.0 In-Reply-To: <20210809112448.3d7d8f2522e18e75ba6e31c0@linux-foundation.org> Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 7bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 8/9/21 9:24 PM, Andrew Morton wrote: > On Mon, 9 Aug 2021 11:23:29 +0300 Vasily Averin wrote: > >> obsoleted in_interrupt() include task context with disabled BH, >> it's better to use in_task() instead. > > Are these just blind conversions, or have you verified in each case > that it is correct to newly take these code paths inside > local_bh_disable()? > > If "yes" then please provide the reasoning in each changelog? I cannot say that it is blind conversion. In all fixed patches in_interrupt() is used to identify task context and access current. it is incorrect because in_interrupt() include task context with disabled BH Recently I hit some bug and spend a lot of time for its investigation. Right now I investigate some other issue in neighborhood, noticed sadly familiar pattern and decided fix them too. Then noticed few more similar places. In fact I would like to replace all such places in mm in one patch. Do you want to consider each of these cases separately? In this particular case in_interrupt() is used to prevent current access. I think it is safe to look at current->flags and call oom_reserves_allowed() for tasks with disabled BH and I believe this should provide more correct result. Historically this check was added to handle interrupt context and said nothing special about task context with disabled BH. Could you please clarify wich kind of arguments should I provide? Thank you, Vasily Averin