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 5A099EE14C3 for ; Sat, 9 Sep 2023 21:17:19 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 6C1F86B011F; Sat, 9 Sep 2023 17:17:18 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 672176B0120; Sat, 9 Sep 2023 17:17:18 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 539D36B0121; Sat, 9 Sep 2023 17:17:18 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0011.hostedemail.com [216.40.44.11]) by kanga.kvack.org (Postfix) with ESMTP id 44D496B011F for ; Sat, 9 Sep 2023 17:17:18 -0400 (EDT) Received: from smtpin20.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay01.hostedemail.com (Postfix) with ESMTP id 1580A1CA1A2 for ; Sat, 9 Sep 2023 21:17:18 +0000 (UTC) X-FDA: 81218319756.20.09D7E4E Received: from mail-lf1-f51.google.com (mail-lf1-f51.google.com [209.85.167.51]) by imf23.hostedemail.com (Postfix) with ESMTP id E664C14001B for ; Sat, 9 Sep 2023 21:17:15 +0000 (UTC) Authentication-Results: imf23.hostedemail.com; dkim=pass header.d=linux-foundation.org header.s=google header.b=HVBBT4rO; dmarc=none; spf=pass (imf23.hostedemail.com: domain of torvalds@linuxfoundation.org designates 209.85.167.51 as permitted sender) smtp.mailfrom=torvalds@linuxfoundation.org ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1694294236; 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=FUTX2wZtyaGuqkUm3+lfhlNbLIAZVk0Z/0uyTAczRl0=; b=WR3C1XunF1djxW0GJmcWm4oVYteLWbWDilM45QmQCNfZcn0E0a4a4+hii2cre28WqVA93L haC+OWZPOmiO62q0LUPr7biziKGMhlGOzB/n6offFu2CZxFUcDFbzCyB86zHgi01VMnq0s JydY5oRPmj3lyHsttLL1eGRPsQCufjw= ARC-Authentication-Results: i=1; imf23.hostedemail.com; dkim=pass header.d=linux-foundation.org header.s=google header.b=HVBBT4rO; dmarc=none; spf=pass (imf23.hostedemail.com: domain of torvalds@linuxfoundation.org designates 209.85.167.51 as permitted sender) smtp.mailfrom=torvalds@linuxfoundation.org ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1694294236; a=rsa-sha256; cv=none; b=s6KLkbxYgfdEleLkWJIb1qdkylFFQP+5Hm6mUvzzVj4euN64FdUg4QKxckM4EuDcE9L8WS bi2oxBMlsiJ+E0AxjsdpxQjGkESwR4DeuKGgNbW3xqGWscZ56kutDB5h4RjRDL44vhADuY /8R+aOkwGSj5JkSH0Kmuf9ZXIRxGVlE= Received: by mail-lf1-f51.google.com with SMTP id 2adb3069b0e04-501be2d45e0so5342105e87.3 for ; Sat, 09 Sep 2023 14:17:15 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linux-foundation.org; s=google; t=1694294234; x=1694899034; darn=kvack.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=FUTX2wZtyaGuqkUm3+lfhlNbLIAZVk0Z/0uyTAczRl0=; b=HVBBT4rOhvSucyyeSSvfLp1v1HvoZSvcZDD2d0vQBHlMgYzCBsj/0E37FMRGCDQPGm jK/esRG5EJ3pPwGFsH6Vo/J9TP8DtNBW+oGrJiC9NhdRdEqd7Yw1K/ZtZ6Q9fXKfIEAd IW8VYVdeeZiZLI7rxgHKmU34KF/rsZEuUeH/M= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1694294234; x=1694899034; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=FUTX2wZtyaGuqkUm3+lfhlNbLIAZVk0Z/0uyTAczRl0=; b=XpmxmFJ9trbYo4StlzWxi8hGBE/BT8UI0hrFTQBCwC2cjm13B2wXsL/uww6NSNDxEm 3pGqAMCtG+W06LN48rsQCptMZd4FrlMj5nqkZZpZy52U5v3a5HWLXf3DsVY6AcBMiKyC v06SLObfJgNsbvytVojAWUylOXHRzkMEJFBmwlK/+O7Qg/cNawnSmbt5I3JI3VsLPNDo vFXQXqycbRG4UcDnomO78eBqhKWsgG4+Sq6FOg3Stxdse88yq+TL748Vp31bpCzkZjty 6RNt8xUjO35XtTmZRuTuykv5nJi0O8CVTJlPqadIY8JzhBk7G6VeK0LXZSJOGhAUxr6x c5tg== X-Gm-Message-State: AOJu0YwQbzkraQVaiuKvh7xXP3TpiqppK9mGklfPE8goDEDTcy9+6/f+ WJccPZdNuhnmxuFZOeqVsY04GPY8r1ep2K9/QQWKLtxy X-Google-Smtp-Source: AGHT+IFXHpC8cCkHCbNC8f3AT3KbFl+vuxrIE/qCkkYB1Qlke2qrea/I6oq2eitH/qEX6If9O4uu3A== X-Received: by 2002:a05:6512:6c3:b0:502:adbc:9b75 with SMTP id u3-20020a05651206c300b00502adbc9b75mr1904344lff.51.1694294233886; Sat, 09 Sep 2023 14:17:13 -0700 (PDT) Received: from mail-lf1-f53.google.com (mail-lf1-f53.google.com. [209.85.167.53]) by smtp.gmail.com with ESMTPSA id b6-20020ac25626000000b004edc72be17csm723539lff.2.2023.09.09.14.17.11 for (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Sat, 09 Sep 2023 14:17:12 -0700 (PDT) Received: by mail-lf1-f53.google.com with SMTP id 2adb3069b0e04-502934c88b7so4894730e87.2 for ; Sat, 09 Sep 2023 14:17:11 -0700 (PDT) X-Received: by 2002:ac2:597b:0:b0:500:a092:d085 with SMTP id h27-20020ac2597b000000b00500a092d085mr4467355lfp.68.1694294231470; Sat, 09 Sep 2023 14:17:11 -0700 (PDT) MIME-Version: 1.0 References: <20230830184958.2333078-1-ankur.a.arora@oracle.com> <20230830184958.2333078-8-ankur.a.arora@oracle.com> <20230908070258.GA19320@noisy.programming.kicks-ass.net> <87zg1v3xxh.fsf@oracle.com> In-Reply-To: <87zg1v3xxh.fsf@oracle.com> From: Linus Torvalds Date: Sat, 9 Sep 2023 14:16:54 -0700 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: [PATCH v2 7/9] sched: define TIF_ALLOW_RESCHED To: Ankur Arora Cc: Peter Zijlstra , linux-kernel@vger.kernel.org, linux-mm@kvack.org, x86@kernel.org, akpm@linux-foundation.org, luto@kernel.org, bp@alien8.de, dave.hansen@linux.intel.com, hpa@zytor.com, mingo@redhat.com, juri.lelli@redhat.com, vincent.guittot@linaro.org, willy@infradead.org, mgorman@suse.de, rostedt@goodmis.org, tglx@linutronix.de, jon.grimm@amd.com, bharata@amd.com, raghavendra.kt@amd.com, boris.ostrovsky@oracle.com, konrad.wilk@oracle.com Content-Type: text/plain; charset="UTF-8" X-Rspamd-Server: rspam09 X-Rspamd-Queue-Id: E664C14001B X-Stat-Signature: nsagyd8efyer5qwnfbptquys1wpenbkj X-Rspam-User: X-HE-Tag: 1694294235-66637 X-HE-Meta: U2FsdGVkX1807Vn2oCDiaYS+hvT3pGtNgDiGWKEDMynjPNiiKWUzgMMBkMmUUxJZC9VOzBkogciEPI+szlxTkQzf5t6aK+ai+NWqX9WqWMU7qK4ELHPGQGv5s9NLByNXYaoP02NRJl1tEEBiWzEV0PgvT0iKO7MmmUMqO1P652lK5hy07Asi+afzF/XrgwR/Me532xbJQYebPSV1uZ7k7pKIxQvG6Tg7nFUCvR2K25RFpWLG3b2DDh5wmT0NTdCNT0cSVVeLtqKwDJypTULmqAvLCmUPlFIl3R2e7j3PcvwoHIKhLtI4fhjiGagBdOC8ISOrAIXImP0QxQBzHC+Zk/t6cvrLceTVAtMpu7s4iZ1cY38jmr+pC0j+aRtipxLgGmzRrOJ1xpiWwsNNZ6Hfm22e3BN34Ek7FLpwWsNmFmPwCoKRKtZrMRMEarJxExzLR/wwtk0Zmi/T+4DYqWTq5cjbhyIUiGoFdyenuxOYBLiuJVE9AJxf0qMXfrKKJLaGgxVwEe7nSAK7adUoqaUl7sncRihNyVjsJXwsrM00QTQyI37Fj6aCnonUX4j+2b9sD3FO0V8z4nEyK1ImSTMRHUdr8t+/vXC/Vm0aVI4D+ltzCnZ9jTve6blBG+FUMRA7Z1dIKgyMklQJfonUARSX/H+m1EnVNEHOFm1HghOtC3GBqL6/ft/FdpWofmrJgdIqpfzd6+u4Ifi3xTs7IXF8oC4jFlwM1WonFxWgg2yVZnwAAqQveSn+IANJHnxXSn9dCvzX3uP05YRvvUExDCv6c8qWiXyQODZoChxpVOeo9JIhGi71RiMg4EO4Xx/jN6f/CIo/J/bGoQ+U0cB7lLekIqsYkR4Z/FUPw/LNd0ytxfvbJlmH20HwiX1L9JiTzDXRXxJ1RuYykifSRHHrtRT4QTYRdXWjY3E7Ye4SME0vsYjHoEySwn82pIs0qU2qV/rbGfU8a7UB+EuvM6j95QU bl626pW1 A/VbhDKesqlVAy2IDg7LR2ow0YCWISILHc88e90PK6C/z8wHwaSSpWh+3a0Lbd2LxipxB5HU0+6cZTRgw9jakRdgTqCSupe4vRbX8qPGT04+QSujY6ZjDSq/vClWBMOWb8falVwGTQFGfR04JsWXqN2itKuq0fq5ZNZMWBedgTBUH/XRK4CYTI2Myi0LZ8xvRlCBuAtf6g8lE5w2Ljbxeaj7/pPRxBt3rAo/ZSv9VNO1YmIBfFlQlIfbI9aoCq2VCYx5J0fBprT7JD6U+B/jX7j6nqeRp0dfcCfA3+Wgu2LTr28ddxn1WzdtgRVT+rT5oNJw4JfcW2eVMmV1sXSsYVEbM3R61luQL0g6qgrDry9buy/1caYe/t3AO/9Koljoj6oJs7iDLdrWLU/7gWzyn4BHDPvebpY3FebsJcvZxdPioGF27+P8KU7slaepnewHf16lXz6zwk0OLh/jPPpe5mg7TIHWEy9ocoyECn1OW8L1Z/59vta3A1VRqw2NXrQaZdGD58FsJj4SbdEcXf4FjLMDrH2mATYVTkaaldgG1KHo0YnqiZP+YmII1LrxkcUrLNFV1 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 Sat, 9 Sept 2023 at 13:16, Ankur Arora wrote: > > > + if (WARN_ON(resched_allowed())) > > + return; > > And, maybe something like this to guard against __this_cpu_read() > etc: > > +++ b/lib/smp_processor_id.c > @@ -13,6 +13,9 @@ unsigned int check_preemption_disabled(const char *what1, const char *what2) > { > int this_cpu = raw_smp_processor_id(); > > + if (unlikely(resched_allowed())) > + goto out_error; Again, both of those checks are WRONG. They'll error out even in exceptions / interrupts, when we have a preempt count already from the exception itself. So testing "resched_allowed()" that only tests the TIF_RESCHED_ALLOW bit is wrong, wrong, wrong. These situations aren't errors if we already had a preemption count for other reasons. Only trying to disable preemption when in process context (while TIF_RESCHED_ALLOW) is a problem. Your patch is missing the check for "are we in a process context" part. Linus