Received: by 2002:a05:6358:11c7:b0:104:8066:f915 with SMTP id i7csp5539532rwl; Mon, 3 Apr 2023 23:12:51 -0700 (PDT) X-Google-Smtp-Source: AKy350bVIEuoBgAwb/jujSwmCU6FTkAOacCD7FCccOq9W1QtrLl4FKlRT71jtKGp8nEvLBpzMS8F X-Received: by 2002:a05:6a20:a89b:b0:db:36f0:a5c2 with SMTP id ca27-20020a056a20a89b00b000db36f0a5c2mr1026587pzb.59.1680588771518; Mon, 03 Apr 2023 23:12:51 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1680588771; cv=none; d=google.com; s=arc-20160816; b=vW9d9z6LmWM+nHeRJtMOSYAQGkvpxOlBC+KwRVhmv4A35jkNk1+K/+1l8F98P2sost +QvxdK1k6yQsKaXcMLKKXPDEfZWN7a45X4yyLAUPcugoKaafVvm2r1GlTelQsznTdf9f Vx3bGJi906Y+mQEEdwgMVKJ9uutugqiqwxsdiM8dGGPkvEl5tEbbD1UfgDbDohZR6c5y fuwMpyarnfdmVLCMAFSv6yMTKWvXACt8ODlShWw3lihznI3itnotdhrMmKhv60LxHroP NoHgDhQKwScElVqGa7DkNNslrr0u9bJFygwkGHoDdeOFrXsRuRQ5IC996o5zh9wGUPo1 0Uyw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:cc:to:subject :message-id:date:from:in-reply-to:references:mime-version :dkim-signature; bh=ubgV9hV0Yhsb6l5Ks66gGmhukuZ1NafV2435hbdgAVE=; b=fGW0jCWmLN8nY+jmH7G6N/0/DVSpiYeqE5j77m+3qd+rcGch9bk5sh7KfhjxkE7pnj RYDfwl5yFwucyIN3qz2iDVeYY4Q1+MUoRrriu10OzxYtfvWe3eJkMdP2HHzNxyS2GhZ3 LxAEnD1IixEsBxGoBlwh5gSpA1WMqcOJZjn92w2AfJJpWKzmU+tru7+eFh1M+zwAVptN x+Sx6APSP7Tk1oJyPbBmFlI5/MHnhxgffV6cDD8SprRC4SMBYnWtXsoihUqp1nN+oZSV Fv0zjjHk36Pcbykn0j7p9W18XLimO0AbqFa3FNhIsOAiIgKeWiTAumJYkp9JAZtWX+Pf OdyA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20210112 header.b=CBWpykir; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id i26-20020a63131a000000b00503011cbc38si9877834pgl.91.2023.04.03.23.12.39; Mon, 03 Apr 2023 23:12:51 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@gmail.com header.s=20210112 header.b=CBWpykir; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S233249AbjDDGE0 (ORCPT + 99 others); Tue, 4 Apr 2023 02:04:26 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:53812 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S233552AbjDDGEY (ORCPT ); Tue, 4 Apr 2023 02:04:24 -0400 Received: from mail-qv1-xf31.google.com (mail-qv1-xf31.google.com [IPv6:2607:f8b0:4864:20::f31]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 09BEE1BC7 for ; Mon, 3 Apr 2023 23:04:22 -0700 (PDT) Received: by mail-qv1-xf31.google.com with SMTP id dw2so5594881qvb.11 for ; Mon, 03 Apr 2023 23:04:22 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; t=1680588261; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=ubgV9hV0Yhsb6l5Ks66gGmhukuZ1NafV2435hbdgAVE=; b=CBWpykirvUIJpCeg68XRsCGwC1j5vDbWu/AKjSp2TIT77S5BsfqfGvTTyrNZWp14b5 s9iQDm+QTIvsB7s1icRkXbeXhDr/MHGJVWMcNTpxPns7EpCGsBN0PbmmmfnvC7FI9QiI EirMRZYMiVrRqZlfaOmkBipD2npb90RBA28XhVVQiRRqztt3bttHDX7/B69OG62g9eId hE3hEmSxwXkRz2yyevPASJqEOeJ5whBsTiy1W4/h4rBYDEwr/PzZMO9TIZfbGZAjXWf8 nVy+mgEEhm5dwxTs43V2nEPWUiynXOu2o5HKxe24abawKdkaiBVLo61JfQCwTKAD7z4j Egwg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; t=1680588261; h=content-transfer-encoding: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=ubgV9hV0Yhsb6l5Ks66gGmhukuZ1NafV2435hbdgAVE=; b=kNWjMA6iqtQZrksAa4RmxEV+FjjJO4txAh/TCrwDqx8g2UXx8MOnNboPv29ukjHHSh xnRygC3aJAukHa1neXdXLSIOj3TK3db/xB+NWuzUWuo8W60wkJboJ9pt/cWAZKYv8qry WmAykvZMmZYjcmCvH7y03oAIr29bFeUU+2o3udND5O1NeoKraHYqkl3Av/0TO7lzpT7B BDg0YzwGAzlMP7rj8HNBXm9fDie/LldupE9wYepqWmGWuaS5PkJE6mK01k7llNHBouZ4 2oh3GbwJt49X34i/8Kd3NmTakQI5WZnn7qYgVMSRaLptdrZwf/mIoGee+KOCHua502Ow 1zsA== X-Gm-Message-State: AAQBX9dZ6YAyU9tV0Dqz5TO6p2nDK4+/kraOCqzfmyAHF20V3x11CMe8 4NWWrN4x8/VhEPdtzkijoFM2z2+ZAAcWIhNXVmfBA3ULX/n8/w== X-Received: by 2002:a05:6214:192e:b0:5a9:5b2d:cd57 with SMTP id es14-20020a056214192e00b005a95b2dcd57mr254115qvb.3.1680588260768; Mon, 03 Apr 2023 23:04:20 -0700 (PDT) MIME-Version: 1.0 References: <20230228161426.4508-1-ubizjak@gmail.com> In-Reply-To: <20230228161426.4508-1-ubizjak@gmail.com> From: Uros Bizjak Date: Tue, 4 Apr 2023 08:04:09 +0200 Message-ID: Subject: Re: [PATCH] sched/core: Use do-while instead of for loop in set_nr_if_polling To: linux-kernel@vger.kernel.org Cc: Ingo Molnar , Peter Zijlstra , Juri Lelli , Vincent Guittot , Dietmar Eggemann , Steven Rostedt , Ben Segall , Mel Gorman , Daniel Bristot de Oliveira , Christian Brauner Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Spam-Status: No, score=-0.2 required=5.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,DKIM_VALID_EF,FREEMAIL_FROM,RCVD_IN_DNSWL_NONE, SPF_HELO_NONE,SPF_PASS autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org I would like to ping for the patch below. The patch normalizes try_cmpxchg loop to a more readable "while" instead of "for (;;)" loop, otherwise it is a nop. https://lore.kernel.org/lkml/20230228161426.4508-1-ubizjak@gmail.com/ Uros. On Tue, Feb 28, 2023 at 5:14=E2=80=AFPM Uros Bizjak wro= te: > > Use equivalent do-while loop instead of infinite for loop. > > There are no asm code changes. > > Signed-off-by: Uros Bizjak > Cc: Ingo Molnar > Cc: Peter Zijlstra > Cc: Juri Lelli > Cc: Vincent Guittot > Cc: Dietmar Eggemann > Cc: Steven Rostedt > Cc: Ben Segall > Cc: Mel Gorman > Cc: Daniel Bristot de Oliveira > Cc: Christian Brauner > --- > kernel/sched/core.c | 7 +++---- > 1 file changed, 3 insertions(+), 4 deletions(-) > > diff --git a/kernel/sched/core.c b/kernel/sched/core.c > index af017e038b48..349c018eaf09 100644 > --- a/kernel/sched/core.c > +++ b/kernel/sched/core.c > @@ -899,14 +899,13 @@ static bool set_nr_if_polling(struct task_struct *p= ) > struct thread_info *ti =3D task_thread_info(p); > typeof(ti->flags) val =3D READ_ONCE(ti->flags); > > - for (;;) { > + do { > if (!(val & _TIF_POLLING_NRFLAG)) > return false; > if (val & _TIF_NEED_RESCHED) > return true; > - if (try_cmpxchg(&ti->flags, &val, val | _TIF_NEED_RESCHED= )) > - break; > - } > + } while (!try_cmpxchg(&ti->flags, &val, val | _TIF_NEED_RESCHED))= ; > + > return true; > } > > -- > 2.39.2 >