From patchwork Mon Nov 23 17:56:22 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Alex Belits X-Patchwork-Id: 1404940 Return-Path: X-Original-To: patchwork-incoming-netdev@ozlabs.org Delivered-To: patchwork-incoming-netdev@ozlabs.org Authentication-Results: ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=vger.kernel.org (client-ip=23.128.96.18; helo=vger.kernel.org; envelope-from=netdev-owner@vger.kernel.org; receiver=) Authentication-Results: ozlabs.org; dmarc=pass (p=none dis=none) header.from=marvell.com Authentication-Results: ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=marvell.com header.i=@marvell.com header.a=rsa-sha256 header.s=pfpt0220 header.b=McX3ZCTl; dkim=pass (1024-bit key; unprotected) header.d=marvell.onmicrosoft.com header.i=@marvell.onmicrosoft.com header.a=rsa-sha256 header.s=selector1-marvell-onmicrosoft-com header.b=GqU8KpzX; dkim-atps=neutral Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by ozlabs.org (Postfix) with ESMTP id 4Cfvy81SvTz9sTR for ; Tue, 24 Nov 2020 04:57:52 +1100 (AEDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2390486AbgKWR5I (ORCPT ); Mon, 23 Nov 2020 12:57:08 -0500 Received: from mx0a-0016f401.pphosted.com ([67.231.148.174]:4366 "EHLO mx0b-0016f401.pphosted.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S2390464AbgKWR5H (ORCPT ); Mon, 23 Nov 2020 12:57:07 -0500 Received: from pps.filterd (m0045849.ppops.net [127.0.0.1]) by mx0a-0016f401.pphosted.com (8.16.0.43/8.16.0.43) with SMTP id 0ANHteWq032523; Mon, 23 Nov 2020 09:56:25 -0800 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=marvell.com; h=from : to : cc : subject : date : message-id : references : in-reply-to : content-type : content-id : content-transfer-encoding : mime-version; s=pfpt0220; bh=q+mezuTzgLgTkL4t+dz/4pR2SMeorDqyG2uWP3LYDUw=; b=McX3ZCTlxlzhcdoZkRTWVg8gNbqWQK31s8fM34jMFigGk58PoZahNP2psKPBXUTTcnuf bFOrrbBmHpshSRNuH71cBKBRQB8y+QdUPxefEq+W7RHOzw+G3sgeQUkdPC6kPIBiyjc+ U+YscLg5ye+AAZ+mrhi8xKfuQE17mnFG+rzeMDJnJORng3R1ojxoJdyaNGu6tJfQeoug M9A7gMqq6Pquya5cVAIeCQfqc7kLT16M52shBUKTXQgfVqpK/MtZ+BcEl85ew/ShSJmW tDexlEsDgJXt+6A71+vjmMKFVpXfxSVoLaHLReJRgm5U3PRWlAldpIrxMaM6ALfzXhV6 lw== Received: from sc-exch02.marvell.com ([199.233.58.182]) by mx0a-0016f401.pphosted.com with ESMTP id 34y14u6tut-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-SHA384 bits=256 verify=NOT); Mon, 23 Nov 2020 09:56:24 -0800 Received: from SC-EXCH02.marvell.com (10.93.176.82) by SC-EXCH02.marvell.com (10.93.176.82) with Microsoft SMTP Server (TLS) id 15.0.1497.2; Mon, 23 Nov 2020 09:56:23 -0800 Received: from NAM10-DM6-obe.outbound.protection.outlook.com (104.47.58.104) by SC-EXCH02.marvell.com (10.93.176.82) with Microsoft SMTP Server (TLS) id 15.0.1497.2 via Frontend Transport; Mon, 23 Nov 2020 09:56:23 -0800 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Av2cxbm7/wyadtuE+JqKotc5Uz+C8Y10+ZXqQLxa/1x1AOHGz3BEwulrwKwq1ACKy80pGMssVIfWNA3j7INX+NLrqx7KtgqfuC3C+iPctz5P1ggzfxhlYn+F0J+F92FAn6MNQogg64oLeuKBig53HrHt/I3YVhf3orTaHOPrDtwaDQLxWPl6gi1vb7/QmXVVRpZQFIjYUNn7TR/1xs/6IEx8EJFvPuhf68d1H/KE83jpY4vxoVSaUTOLGQCUvG+xiZOZahf5U5lYZ2Z4g8S9yozAxSkEVRaoRXFlxkQjjUPHEI3fHOA+uWgAx34NKqeLL6MXIeBvXc6p65mjIGHYcQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=q+mezuTzgLgTkL4t+dz/4pR2SMeorDqyG2uWP3LYDUw=; b=KI5IhuLt4jOrlf/v49l5cCx0eo3lW3TKN2bmA85jFO2jz+l4CNlj9ZU53DqhMxNFcAnuDPTdo+FOmKqfPN880tqD8Mu9pD/7RNfdn64dGxfciegWgxxd+3VvP+1dFxvd7XvPhbmFG2sgLjwtCUX1NeAfIWUtoO0NG+eYwTCqUBIAEyDhn+iCAWyfVe+++woX2jUqsH7PvvaaK4niL64de/tTElialzrSZY6DzQz051yBPh42DfprSzgjflCbncLI40mEydUO3nPHnVgppnPFrqpeLj9qk6VtNxMoUNj5ISuqh/sQa7zEsi8+1hX1fpbl0YCVFcQde1sJUCX8E2kACw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=marvell.com; dmarc=pass action=none header.from=marvell.com; dkim=pass header.d=marvell.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=marvell.onmicrosoft.com; s=selector1-marvell-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=q+mezuTzgLgTkL4t+dz/4pR2SMeorDqyG2uWP3LYDUw=; b=GqU8KpzX2DQuRBDK9d/fQfHt38Yw1ASW0+IXSAk0ro2SWJGQgFgQX+RmL3HhVKoZxcpuQ9VJqicRWk57lVWBOpsJcs0o/dLWgk1jULO+wvQp89kxp9rLIZbAI51hgIRKcXEBWMDpZEVJMQBe4o5NLs2WkP1aUME6JQWrrMPae74= Received: from MW2PR18MB2267.namprd18.prod.outlook.com (2603:10b6:907:3::11) by CO6PR18MB3954.namprd18.prod.outlook.com (2603:10b6:5:34d::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3589.22; Mon, 23 Nov 2020 17:56:22 +0000 Received: from MW2PR18MB2267.namprd18.prod.outlook.com ([fe80::e17f:37fb:4eb3:c703]) by MW2PR18MB2267.namprd18.prod.outlook.com ([fe80::e17f:37fb:4eb3:c703%4]) with mapi id 15.20.3564.039; Mon, 23 Nov 2020 17:56:22 +0000 From: Alex Belits To: "nitesh@redhat.com" , "frederic@kernel.org" CC: Prasun Kapoor , "linux-api@vger.kernel.org" , "davem@davemloft.net" , "trix@redhat.com" , "mingo@kernel.org" , "catalin.marinas@arm.com" , "rostedt@goodmis.org" , "linux-kernel@vger.kernel.org" , "peterx@redhat.com" , "tglx@linutronix.de" , "linux-arch@vger.kernel.org" , "mtosatti@redhat.com" , "will@kernel.org" , "peterz@infradead.org" , "leon@sidebranch.com" , "linux-arm-kernel@lists.infradead.org" , "pauld@redhat.com" , "netdev@vger.kernel.org" Subject: [PATCH v5 2/9] task_isolation: vmstat: add vmstat_idle function Thread-Topic: [PATCH v5 2/9] task_isolation: vmstat: add vmstat_idle function Thread-Index: AQHWwcH0WzY0i0qVVUKJ5jpW2camEQ== Date: Mon, 23 Nov 2020 17:56:22 +0000 Message-ID: <6ac7143e5038614e3950636456cef67b5bc0c9e4.camel@marvell.com> References: <8d887e59ca713726f4fcb25a316e1e932b02823e.camel@marvell.com> In-Reply-To: <8d887e59ca713726f4fcb25a316e1e932b02823e.camel@marvell.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: redhat.com; dkim=none (message not signed) header.d=none;redhat.com; dmarc=none action=none header.from=marvell.com; x-originating-ip: [173.228.7.197] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: bb56586a-20f3-4f14-8455-08d88fd916fa x-ms-traffictypediagnostic: CO6PR18MB3954: x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:4502; x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: iC46aZQXsW84tTGGPEAR0wY7aGRsc9zS5hS8jZCvYC2GH5EVLqFFPWuYE/hcGY9RTGDMgXBfvok6NTB0RHC6O+LRojFyoVvjeNTiCDgJiKtekJ9jJa3jZsIoXkbBMbiBRrB1VWfasgpv4YGCuBhFuXc5yjjyWEpT1KQ3KoLC11sEboDt/UrJiSV+we3zmxeW1gQkbGocL8thw/V1DQPSVkdr/ZU4RgCR5ir2uEz5KI/N4Vru0AuhpwDGc0O9JBNyf3LmwxL93AFgpSBr+CB5n4Ch056rfPuEbLNv26sWZXV5WCk/wIIJif2+mE7dm99lyBilc34r9Fr1nFJH+xYRwQ== x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:MW2PR18MB2267.namprd18.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(346002)(136003)(376002)(366004)(396003)(39860400002)(2906002)(6506007)(6512007)(64756008)(8676002)(66476007)(66446008)(66556008)(7416002)(6486002)(4326008)(8936002)(71200400001)(26005)(36756003)(2616005)(478600001)(54906003)(66946007)(86362001)(5660300002)(316002)(76116006)(83380400001)(91956017)(186003)(110136005);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata: fTcOVmxDyvg2KsMbgTCkSVkpAVbzlpUDLEcHZeN3Uv9oRChomFWyPtxPi6/p2KWPPMi1RTOZ+nuq8/9kKkEBWaxv/+0DIZdW7LsJQ6g2j3wpCzMmJTmyvlyMVqPrARKAh2Kq9zk4G0TCxKak03YGu0ZdgGSfdNl2eaFo8xWDpuamz4ipIbNt5XEL0rqwkY1BO+7Ix8/jAXjbe3XUYX/Fdr0F1PclSo9Ec/RKIW6k1aL5ePU9zCn4ipjza+vmUttK2URprw35kTFObuA5anGiCLlENwHUQcjPRLu4ATjRIWxu0Wcywbyq8emXk/4hovV06Mw4FWrnCdLVs/0CchH5U9Gvcfu9dtRKgjzM3r4AhhUoYAvbWYNZH3NSTVstcHlCQU21XaqtEpBw9WAi94GGgzV8ry47xKE+mSWJ8dhjogq1OsAdzhhiKEFocIAfwvTLF/Pc7ctUKBY/zoOqeEdT3b67W3m+4gSbmaBAxtosgFDywZeEKl0D8b4O54WmbJ6ZvKzxIusJdrwPLtCX9acBTGwpWWdHvIUJUXIWnJx8FL4oXAhxiYGGFVLztQNLMqwYUCaOk8ZtPMg6HC60NyR/5Vb/nyxxUgTxlemWVzymrPMLNm3X/GeS6278z8rdV0bGAvtdvKD12T4dzvLTNEaibGEmtvqOIRuwftUezfev9TKewwkMxBPi1FHetAbNNBzPZbJ399n7+DxJuS5svGFuAERKNeCXtfaASymyOpxiH8S33w3suv/GwRfPQDYV85qBg23xhK/7sB1yj/A0P7LfLxKtTy1+wuyiYhB311SPLRA2Zgrtnau+hOAs8xApU6gM7fOz62zgoHeLW6WNpbSyvn6BSiTn/2T5UdmvQfgtWCieoZ+wTeo3ilZ8a8RDKcz9NzXFMX/+w76OnRUK2dcjnA== Content-ID: <9E079E53BC0AE046828BEDFA6A41E3AA@namprd18.prod.outlook.com> MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: MW2PR18MB2267.namprd18.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: bb56586a-20f3-4f14-8455-08d88fd916fa X-MS-Exchange-CrossTenant-originalarrivaltime: 23 Nov 2020 17:56:22.7008 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 70e1fb47-1155-421d-87fc-2e58f638b6e0 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: vTaf1fFIh1Wzq5+NwrpSPp83djATvtNv+yydeGSuAqletBkNda1I76fl/mCHqSdwABqny/m/YS+3d6Caypf6pA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: CO6PR18MB3954 X-OriginatorOrg: marvell.com X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:6.0.312,18.0.737 definitions=2020-11-23_17:2020-11-23,2020-11-23 signatures=0 Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org From: Chris Metcalf This function checks to see if a vmstat worker is not running, and the vmstat diffs don't require an update. The function is called from the task-isolation code to see if we need to actually do some work to quiet vmstat. Signed-off-by: Chris Metcalf Signed-off-by: Alex Belits --- include/linux/vmstat.h | 2 ++ mm/vmstat.c | 10 ++++++++++ 2 files changed, 12 insertions(+) diff --git a/include/linux/vmstat.h b/include/linux/vmstat.h index 300ce6648923..24392a957cfc 100644 --- a/include/linux/vmstat.h +++ b/include/linux/vmstat.h @@ -285,6 +285,7 @@ extern void __dec_node_state(struct pglist_data *, enum node_stat_item); void quiet_vmstat(void); void quiet_vmstat_sync(void); +bool vmstat_idle(void); void cpu_vm_stats_fold(int cpu); void refresh_zone_stat_thresholds(void); @@ -393,6 +394,7 @@ static inline void refresh_zone_stat_thresholds(void) { } static inline void cpu_vm_stats_fold(int cpu) { } static inline void quiet_vmstat(void) { } static inline void quiet_vmstat_sync(void) { } +static inline bool vmstat_idle(void) { return true; } static inline void drain_zonestat(struct zone *zone, struct per_cpu_pageset *pset) { } diff --git a/mm/vmstat.c b/mm/vmstat.c index 43999caf47a4..5b0ad7ed65f7 100644 --- a/mm/vmstat.c +++ b/mm/vmstat.c @@ -1945,6 +1945,16 @@ void quiet_vmstat_sync(void) refresh_cpu_vm_stats(false); } +/* + * Report on whether vmstat processing is quiesced on the core currently: + * no vmstat worker running and no vmstat updates to perform. + */ +bool vmstat_idle(void) +{ + return !delayed_work_pending(this_cpu_ptr(&vmstat_work)) && + !need_update(smp_processor_id()); +} + /* * Shepherd worker thread that checks the * differentials of processors that have their worker