Received: by 2002:a05:6358:11c7:b0:104:8066:f915 with SMTP id i7csp364602rwl; Tue, 11 Apr 2023 20:14:14 -0700 (PDT) X-Google-Smtp-Source: AKy350aW0HW52E7buxj2F6YEwmNIgrI7XbTK+7OGn2g1nBHCMZzCPZ29S8KTsM1uo/5ZZQA+TI/s X-Received: by 2002:a17:90a:5892:b0:246:f9ff:8e70 with SMTP id j18-20020a17090a589200b00246f9ff8e70mr1043074pji.26.1681269253727; Tue, 11 Apr 2023 20:14:13 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1681269253; cv=none; d=google.com; s=arc-20160816; b=KqswEGK1GZS0TRDCwiZGerPclXesKvjG8D/C78/M3WPHvH/aEkVpqEetU5vcrD34Yz JLppTw1uBFPNe38urGmWMNaSe2NEbROnUC4sGQAkxtBfceqJcWRRALcpVxhhUcHYC8Ar rXUjpberUdmdmrV1GFn7C8w7KUJhKFcoat2gVP1DczW0cU26f/pZyMhw+obKVrrCz+qQ eR8aA0O31ndhuDO4/1+S9nqM6svXkpX2UMQuhIsdHo7esWIz9DBtgHw8weASckPZTYvo rEdVoBvnD4jWN/J5XVvW23s/b69DPhsCfbwLprtz1O4lQzEgWOY/WMWt7GP4ElHGY5rW GY4A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from; bh=rCwbKHzS5B2cVM1dGjLbK+ZRKwxijRieLrkaTebsXc4=; b=bp79DlJvdzsmNqwJ/EzDuq9faScT5a5BO15hJcT27cAhTtsBI2MU1rJTvOGD9NCEd7 PWYwwwVNCi1nSbhgnTKarVy+mFVH7pEaI3gIN55bs65dBFGYGfcE2efIeHDsbRcW+Nij Is8mayYNIM3LdctBqqXRsRIuGxvk09EN9Et5OsJXJ2jq5Ahu3Z2GsS8+1/AMZafpnnxo FZ7ANV5lBb/oOAwvJkX3E+fqoF6NyKSRkWtLUmoK77McE+Bhbg+5vzwETT8+gnMZPEpG AYuotBgQSu61KTcDnS4iVXe8A8TQxYNyqZwcipY/RNDCNtS6nScgWKD0yV6ecSiytrqO vERw== ARC-Authentication-Results: i=1; mx.google.com; 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=fail (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=antgroup.com Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id q6-20020a17090a304600b002469436d3a8si838727pjl.6.2023.04.11.20.14.01; Tue, 11 Apr 2023 20:14:13 -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; 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=fail (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=antgroup.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S229567AbjDLDHs (ORCPT + 99 others); Tue, 11 Apr 2023 23:07:48 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:56216 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229490AbjDLDHo (ORCPT ); Tue, 11 Apr 2023 23:07:44 -0400 Received: from out0-196.mail.aliyun.com (out0-196.mail.aliyun.com [140.205.0.196]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 081E74225 for ; Tue, 11 Apr 2023 20:07:42 -0700 (PDT) X-Alimail-AntiSpam: AC=PASS;BC=-1|-1;BR=01201311R181e4;CH=green;DM=||false|;DS=||;FP=0|-1|-1|-1|0|-1|-1|-1;HT=ay29a033018047207;MF=yanyan.yan@antgroup.com;NM=1;PH=DS;RN=14;SR=0;TI=SMTPD_---.SDVQYX4_1681268855; Received: from localhost(mailfrom:yanyan.yan@antgroup.com fp:SMTPD_---.SDVQYX4_1681268855) by smtp.aliyun-inc.com; Wed, 12 Apr 2023 11:07:36 +0800 From: "=?UTF-8?B?5pmP6ImzKOmHh+iLkyk=?=" To: linux-kernel@vger.kernel.org Cc: "=?UTF-8?B?6LCI6Ym06ZSL?=" , "=?UTF-8?B?5pmP6ImzKOmHh+iLkyk=?=" , "Tiwei Bie" , "Ingo Molnar" , "Peter Zijlstra" , "Juri Lelli" , "Vincent Guittot" , "Dietmar Eggemann" , "Steven Rostedt" , "Ben Segall" , "Mel Gorman" , "Daniel Bristot de Oliveira" , "Valentin Schneider" Subject: [PATCH v1 1/3] sched/debug: use int type and fix wrong print for rq->nr_uninterruptible Date: Wed, 12 Apr 2023 11:07:29 +0800 Message-Id: <20230412030731.24990-2-yanyan.yan@antgroup.com> X-Mailer: git-send-email 2.32.0.3.g01195cf9f In-Reply-To: <20230412030731.24990-1-yanyan.yan@antgroup.com> References: <20230412030731.24990-1-yanyan.yan@antgroup.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,SPF_HELO_NONE, SPF_PASS,UNPARSEABLE_RELAY autolearn=ham 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 commit e6fe3f422be1 ("sched: Make multiple runqueue task counters 32-bit") changed rq->nr_uninterruptible from 'unsigned long' to 'unsigned int', but left the wrong print to /sys/kernel/debug/sched/debug and to the console. For example: Current type is 'unsigned int' and value is fffffff7, and the print will run the sentences, "do { \ if (sizeof(rq->x) == 4) \ SEQ_printf(m, " .%-30s: %ld\n", #x, (long)(rq->x)); \ else \ SEQ_printf(m, " .%-30s: %Ld\n", #x, (long long)(rq->x));\ } while (0)" The result will be 4294967287 on 64-bit machines to print (long)(rq->x) while old type 'unsigned long' will print -9. And the other places that use its value will cast to int to return expected output, so we convert its type from 'unsigned int' to int. Signed-off-by: Yan Yan --- kernel/sched/loadavg.c | 2 +- kernel/sched/sched.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/kernel/sched/loadavg.c b/kernel/sched/loadavg.c index 52c8f8226b0d..b9867495fe8b 100644 --- a/kernel/sched/loadavg.c +++ b/kernel/sched/loadavg.c @@ -80,7 +80,7 @@ long calc_load_fold_active(struct rq *this_rq, long adjust) long nr_active, delta = 0; nr_active = this_rq->nr_running - adjust; - nr_active += (int)this_rq->nr_uninterruptible; + nr_active += this_rq->nr_uninterruptible; if (nr_active != this_rq->calc_load_active) { delta = nr_active - this_rq->calc_load_active; diff --git a/kernel/sched/sched.h b/kernel/sched/sched.h index 060616944d7a..23c643948331 100644 --- a/kernel/sched/sched.h +++ b/kernel/sched/sched.h @@ -1006,7 +1006,7 @@ struct rq { * one CPU and if it got migrated afterwards it may decrease * it on another CPU. Always updated under the runqueue lock: */ - unsigned int nr_uninterruptible; + int nr_uninterruptible; struct task_struct __rcu *curr; struct task_struct *idle; -- 2.32.0.3.g01195cf9f