* [PATCH net-next v2 0/2] Avoid explicit cpumask var allocation on stack
@ 2024-03-31 5:34 Dawei Li
2024-03-31 5:34 ` Dawei Li
` (3 more replies)
0 siblings, 4 replies; 8+ messages in thread
From: Dawei Li @ 2024-03-31 5:34 UTC (permalink / raw)
To: davem, edumazet, kuba, pabeni, ioana.ciornei, wintera, twinkler
Cc: netdev, linux-kernel, linux-s390, Dawei Li
Hi,
This is v2 of previous series[1] about cpumask var on stack for net
subsystem.
Change since v1:
- For iucv_setmask_up() which returns void to caller, just make cpumask
var static which is protected by global lock iucv_register_mutex. [Eric]
[1] v1:
https://lore.kernel.org/lkml/20240329105610.922675-1-dawei.li@shingroup.cn/
Dawei Li (2):
net/iucv: Avoid explicit cpumask var allocation on stack
net/dpaa2: Avoid explicit cpumask var allocation on stack
.../net/ethernet/freescale/dpaa2/dpaa2-eth.c | 14 ++++++----
net/iucv/iucv.c | 26 +++++++++++++------
2 files changed, 27 insertions(+), 13 deletions(-)
Thanks,
Dawei
--
2.27.0
^ permalink raw reply [flat|nested] 8+ messages in thread* [PATCH net-next v2 0/2] Avoid explicit cpumask var allocation on stack 2024-03-31 5:34 [PATCH net-next v2 0/2] Avoid explicit cpumask var allocation on stack Dawei Li @ 2024-03-31 5:34 ` Dawei Li 2024-03-31 5:34 ` [PATCH net-next v2 1/2] net/iucv: " Dawei Li ` (2 subsequent siblings) 3 siblings, 0 replies; 8+ messages in thread From: Dawei Li @ 2024-03-31 5:34 UTC (permalink / raw) To: davem, edumazet, kuba, pabeni, ioana.ciornei, wintera, twinkler Cc: netdev, linux-kernel, linux-s390, Dawei Li Hi, This is v2 of previous series[1] about cpumask var on stack for net subsystem. Change since v1: - For iucv_setmask_up() which returns void to caller, just make cpumask var static which is protected by global lock iucv_register_mutex. [Eric] [1] v1: https://lore.kernel.org/lkml/20240329105610.922675-1-dawei.li@shingroup.cn/ Dawei Li (2): net/iucv: Avoid explicit cpumask var allocation on stack net/dpaa2: Avoid explicit cpumask var allocation on stack .../net/ethernet/freescale/dpaa2/dpaa2-eth.c | 14 ++++++---- net/iucv/iucv.c | 26 +++++++++++++------ 2 files changed, 27 insertions(+), 13 deletions(-) Thanks, Dawei -- 2.27.0 X-sender: <netdev+bounces-83539-steffen.klassert=secunet.com@vger.kernel.org> X-Receiver: <steffen.klassert@secunet.com> ORCPT=rfc822;steffen.klassert@secunet.com NOTIFY=NEVER; X-ExtendedProps=BQAVABYAAgAAAAUAFAARAPDFCS25BAlDktII2g02frgPADUAAABNaWNyb3NvZnQuRXhjaGFuZ2UuVHJhbnNwb3J0LkRpcmVjdG9yeURhdGEuSXNSZXNvdXJjZQIAAAUAagAJAAEAAAAAAAAABQAWAAIAAAUAQwACAAAFAEYABwADAAAABQBHAAIAAAUAEgAPAGIAAAAvbz1zZWN1bmV0L291PUV4Y2hhbmdlIEFkbWluaXN0cmF0aXZlIEdyb3VwIChGWURJQk9IRjIzU1BETFQpL2NuPVJlY2lwaWVudHMvY249U3RlZmZlbiBLbGFzc2VydDY4YwUACwAXAL4AAACheZxkHSGBRqAcAp3ukbifQ049REI2LENOPURhdGFiYXNlcyxDTj1FeGNoYW5nZSBBZG1pbmlzdHJhdGl2ZSBHcm91cCAoRllESUJPSEYyM1NQRExUKSxDTj1BZG1pbmlzdHJhdGl2ZSBHcm91cHMsQ049c2VjdW5ldCxDTj1NaWNyb3NvZnQgRXhjaGFuZ2UsQ049U2VydmljZXMsQ049Q29uZmlndXJhdGlvbixEQz1zZWN1bmV0LERDPWRlBQAOABEABiAS9uuMOkqzwmEZDvWNNQUAHQAPAAwAAABtYngtZXNzZW4tMDIFADwAAgAADwA2AAAATWljcm9zb2Z0LkV4Y2hhbmdlLlRyYW5zcG9ydC5NYWlsUmVjaXBpZW50LkRpc3BsYXlOYW1lDwARAAAAS2xhc3NlcnQsIFN0ZWZmZW4FAAwAAgAABQBsAAIAAAUAWAAXAEoAAADwxQktuQQJQ5LSCNoNNn64Q049S2xhc3NlcnQgU3RlZmZlbixPVT1Vc2VycyxPVT1NaWdyYXRpb24sREM9c2VjdW5ldCxEQz1kZQUAJgACAAEFACIADwAxAAAAQXV0b1Jlc3BvbnNlU3VwcHJlc3M6IDANClRyYW5zbWl0SGlzdG9yeTogRmFsc2UNCg8ALwAAAE1pY3Jvc29mdC5FeGNoYW5nZS5UcmFuc3BvcnQuRXhwYW5zaW9uR3JvdXBUeXBlDwAVAAAATWVtYmVyc0dyb3VwRXhwYW5zaW9uBQAjAAIAAQ== X-CreatedBy: MSExchange15 X-HeloDomain: b.mx.secunet.com X-ExtendedProps: BQBjAAoAm3AFfe5Q3AgFAGEACAABAAAABQA3AAIAAA8APAAAAE1pY3Jvc29mdC5FeGNoYW5nZS5UcmFuc3BvcnQuTWFpbFJlY2lwaWVudC5Pcmdhbml6YXRpb25TY29wZREAAAAAAAAAAAAAAAAAAAAAAAUASQACAAEFAAQAFCABAAAAHAAAAHN0ZWZmZW4ua2xhc3NlcnRAc2VjdW5ldC5jb20FAAYAAgABBQApAAIAAQ8ACQAAAENJQXVkaXRlZAIAAQUAAgAHAAEAAAAFAAMABwAAAAAABQAFAAIAAQUAYgAKAGYAAADsigAABQBkAA8AAwAAAEh1Yg== X-Source: SMTP:Default MBX-ESSEN-02 X-SourceIPAddress: 62.96.220.37 X-EndOfInjectedXHeaders: 9842 Received: from cas-essen-02.secunet.de (10.53.40.202) by mbx-essen-02.secunet.de (10.53.40.198) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.37; Sun, 31 Mar 2024 07:37:25 +0200 Received: from b.mx.secunet.com (62.96.220.37) by cas-essen-02.secunet.de (10.53.40.202) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.37 via Frontend Transport; Sun, 31 Mar 2024 07:37:25 +0200 Received: from localhost (localhost [127.0.0.1]) by b.mx.secunet.com (Postfix) with ESMTP id 5B87620199 for <steffen.klassert@secunet.com>; Sun, 31 Mar 2024 07:37:25 +0200 (CEST) X-Virus-Scanned: by secunet X-Spam-Flag: NO X-Spam-Score: -2.651 X-Spam-Level: X-Spam-Status: No, score=-2.651 tagged_above=-999 required=2.1 tests=[BAYES_00=-1.9, HEADER_FROM_DIFFERENT_DOMAINS=0.249, MAILING_LIST_MULTI=-1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001] autolearn=unavailable autolearn_force=no Received: from b.mx.secunet.com ([127.0.0.1]) by localhost (a.mx.secunet.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id QDNM0aQHOZLY for <steffen.klassert@secunet.com>; Sun, 31 Mar 2024 07:37:21 +0200 (CEST) Received-SPF: Pass (sender SPF authorized) identity=mailfrom; client-ip=147.75.199.223; helo=ny.mirrors.kernel.org; envelope-from=netdev+bounces-83539-steffen.klassert=secunet.com@vger.kernel.org; receiver=steffen.klassert@secunet.com DKIM-Filter: OpenDKIM Filter v2.11.0 b.mx.secunet.com E84D720310 Received: from ny.mirrors.kernel.org (ny.mirrors.kernel.org [147.75.199.223]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by b.mx.secunet.com (Postfix) with ESMTPS id E84D720310 for <steffen.klassert@secunet.com>; Sun, 31 Mar 2024 07:37:20 +0200 (CEST) Received: from smtp.subspace.kernel.org (wormhole.subspace.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ny.mirrors.kernel.org (Postfix) with ESMTPS id E71011C20C4F for <steffen.klassert@secunet.com>; Sun, 31 Mar 2024 05:37:19 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id 191166FB2; Sun, 31 Mar 2024 05:37:06 +0000 (UTC) X-Original-To: netdev@vger.kernel.org Received: from bg1.exmail.qq.com (bg1.exmail.qq.com [114.132.65.219]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id E6DB98C1F; Sun, 31 Mar 2024 05:37:00 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=114.132.65.219 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711863425; cv=none; b=VU5sqT4EZDNDIhhJDcEsRmUyK6xfLEfFs/2kDpHkMaqSndvQee+UlyPyQ9pAlCTr9tUHekrlOAk7/8M9QMn+Ozphl5D0Crk/T6wslqghXq6sMHjNK1LGGJw0FEv37pYGqPXJUMlI2uxvsCPVliyJAlvq+eE2k8E6gnodxx7wMN0= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711863425; c=relaxed/simple; bh=hpjQo0KhGps9/VGEa1fBWiX7PTL1ct+EPAiqsmg8ihw=; h=From:To:Cc:Subject:Date:Message-Id:MIME-Version; b=hcedxsIgUnex9W5qPm6h4B/RVb3VxToczR7yicqDvE04hFwnPDaShPwcd+Ap0ehUo5OvEBExAfFUa3CLmV5Duc+um0+KAyFF12SzvgSkjRfwVbj5m3f3/ph7rGN1Efe8WS1eBCTb1Ana7TRsY8URmqHoWvrCFrglxe8L6pfV0ik= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=shingroup.cn; spf=pass smtp.mailfrom=shingroup.cn; arc=none smtp.client-ip=114.132.65.219 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=shingroup.cn Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=shingroup.cn X-QQ-mid: bizesmtp82t1711863322twj5416u X-QQ-Originating-IP: 0rkeoEkh2HalCCEoJiJGaDTGlkyTZd6PhYBWh2BWtmk= Received: from localhost ( [112.0.147.175]) by bizesmtp.qq.com (ESMTP) with id ; Sun, 31 Mar 2024 13:35:20 +0800 (CST) X-QQ-SSF: 01400000000000704000000A0000000 X-QQ-FEAT: znfcQSa1hKbRHAcLRCv1mDsVAG5bHbuYuRsE+M8xuRHH6h2E+rlsyWbE1dXtv UQZFNYuvIRN7KJrZoV1geRqrKHmHP4N5lK23noYgSby8/HP6Uh+yb0lP0JrpeYiYuGmJDDo bQIsdMn0ZZLIdPi7rOkxDKv/Lon9JsOwUgzfj4hZgCMnrV/viuHyuqhnra9S7sz5rIyd2GA YqKJbGSTX0jZxt7WDMzxgMXgKg/TFUGjUdZqIE8ObYckJvG7rSuCw7zD2WXtT4Re1JR+1dG 2B4c9DKNZJ4mzNCzpbR978qR6wHulvH1ysDRAD6aD5b1sT8kAtQgke+IrvxML26dgr6IU3q upE7QoPxntRWx9ZYSOipUsBFfxz7gRbhUDvDRYi7cH7UTiQDaY= X-QQ-GoodBg: 2 X-BIZMAIL-ID: 1667159541051008534 From: Dawei Li <dawei.li@shingroup.cn> To: <davem@davemloft.net>, <edumazet@google.com>, <kuba@kernel.org>, <pabeni@redhat.com>, <ioana.ciornei@nxp.com>, <wintera@linux.ibm.com>, <twinkler@linux.ibm.com> CC: <netdev@vger.kernel.org>, <linux-kernel@vger.kernel.org>, <linux-s390@vger.kernel.org>, Dawei Li <dawei.li@shingroup.cn> Subject: [PATCH net-next v2 0/2] Avoid explicit cpumask var allocation on stack Date: Sun, 31 Mar 2024 13:34:39 +0800 Message-ID: <20240331053441.1276826-1-dawei.li@shingroup.cn> X-Mailer: git-send-email 2.27.0 Precedence: bulk X-Mailing-List: netdev@vger.kernel.org List-Id: <netdev.vger.kernel.org> List-Subscribe: <mailto:netdev+subscribe@vger.kernel.org> List-Unsubscribe: <mailto:netdev+unsubscribe@vger.kernel.org> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-QQ-SENDSIZE: 520 Feedback-ID: bizesmtp:shingroup.cn:qybglogicsvrgz:qybglogicsvrgz5a-1 Return-Path: netdev+bounces-83539-steffen.klassert=secunet.com@vger.kernel.org X-MS-Exchange-Organization-OriginalArrivalTime: 31 Mar 2024 05:37:25.4221 (UTC) X-MS-Exchange-Organization-Network-Message-Id: d4ac858f-a754-4169-aaaf-08dc5144a564 X-MS-Exchange-Organization-OriginalClientIPAddress: 62.96.220.37 X-MS-Exchange-Organization-OriginalServerIPAddress: 10.53.40.202 X-MS-Exchange-Organization-Cross-Premises-Headers-Processed: cas-essen-02.secunet.de X-MS-Exchange-Organization-OrderedPrecisionLatencyInProgress: LSRV=mbx-essen-02.secunet.de:TOTAL-HUB=0.371|SMR=0.321(SMRDE=0.005|SMRC=0.316(SMRCL=0.103|X-SMRCR=0.315))|CAT=0.049(CATOS=0.001 |CATRESL=0.022(CATRESLP2R=0.017)|CATORES=0.022(CATRS=0.022(CATRS-Index Routing Agent=0.020 )));2024-03-31T05:37:25.820Z Content-Type: text/plain X-MS-Exchange-Forest-ArrivalHubServer: mbx-essen-02.secunet.de X-MS-Exchange-Organization-AuthSource: cas-essen-02.secunet.de X-MS-Exchange-Organization-AuthAs: Anonymous X-MS-Exchange-Organization-FromEntityHeader: Internet X-MS-Exchange-Organization-OriginalSize: 6759 X-MS-Exchange-Organization-HygienePolicy: Standard X-MS-Exchange-Organization-MessageLatency: SRV=cas-essen-02.secunet.de:TOTAL-FE=0.026|SMR=0.023(SMRPI=0.020(SMRPI-FrontendProxyAgent=0.020))|SMS=0.003 X-MS-Exchange-Organization-Recipient-Limit-Verified: True X-MS-Exchange-Organization-TotalRecipientCount: 1 X-MS-Exchange-Organization-Rules-Execution-History: 0b0cf904-14ac-4724-8bdf-482ee6223cf2%%%fd34672d-751c-45ae-a963-ed177fcabe23%%%d8080257-b0c3-47b4-b0db-23bc0c8ddb3c%%%95e591a2-5d7d-4afa-b1d0-7573d6c0a5d9%%%f7d0f6bc-4dcc-4876-8c5d-b3d6ddbb3d55%%%16355082-c50b-4214-9c7d-d39575f9f79b X-MS-Exchange-Forest-RulesExecuted: mbx-essen-02 X-MS-Exchange-Organization-RulesExecuted: mbx-essen-02 X-MS-Exchange-Forest-IndexAgent-0: AQ0CZW4AAXoCAAAPAAADH4sIAAAAAAAEAJVSXWvbMBSV4tipXdwU9r S3y54aktix26Y0Txv7YLA97q2U4ChKrMWxjCSnLfQv7j/tSm7YxmAw IcSV7jnnnnvRD/+zmMRRHH0rhQbchxzkBhrFD0K2GjRXguu77B6KlW wNsKbdF3oHh0KBrEGbgu1gIxXU3MSRblf6SRu+T6zk+7Kotxy0qBmH Q7aIoyl8Qqho2WGpubFCy7a5GMFDKVgJiptW1WhBijUYCayoKq4m8L 3VBvbFjh+rxxE4A1jdCPbCRu+NkoYzw9eweoJtJVdFBZVEg66i4luB 3tRy3xr+mMDdRyXYvTVq23P+SmMavUjTSiqe7LiqeZVItU2r3b5K81 l+NbvMb7PZ9TybJbd5Pr+5nmbTdfHARVKJt7oU9VbJtklYnVrdDzYD XwVc5KOFNY1DSq2XBbxzTfLHphJM/DlW7FoybAzHe5zwkbtuiiL/fz LSkyRJrQI3pW3LpBvFucYJ8060O6eYThjAM2RXMHZrigv5R+fusJB/ rmfI5y/88S8ZJ5TDRlRcA3OfYz2B/AZEjd/MetYX49EEsktY84p3D9 NR9zuLeqfdR7X6brD2YiXzJL9JZvYWR4T0yKBP/B7xun1CwoAOKCGU eD4JBuTEI/2eizHwiB+Ss4AM8IpEfOlTMiQ+wnrE7/CdWuCCvk2dIu xI8UISuawtitxXxMeKPoJp1BW1OpR8cfSgK0H8MzLEmJLebyJOkPYd q4MF+IJqneeInDrbIca+A/+VOsMYH1ENs1g0dD1Siv5xLOddadyUvr Ev9LWrZT0MaOgwXkSHXRCS84AMfRpbDO05vGfjn2eLDCExBAAAAQuN Ajw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9InV0Zi0xNiI/Pg 0KPFVybFNldD4NCiAgPFZlcnNpb24+MTUuMC4wLjA8L1ZlcnNpb24+ DQogIDxVcmxzPg0KICAgIDxVcmwgU3RhcnRJbmRleD0iMjY4IiBUeX BlPSJVcmwiPg0KICAgICAgPFVybFN0cmluZz5odHRwczovL2xvcmUu a2VybmVsLm9yZy9sa21sLzIwMjQwMzI5MTA1NjEwLjkyMjY3NS0xLW Rhd2VpLmxpQHNoaW5ncm91cC5jbi88L1VybFN0cmluZz4NCiAgICA8 L1VybD4NCiAgPC9VcmxzPg0KPC9VcmxTZXQ+AQ7OAVJldHJpZXZlck 9wZXJhdG9yLDEwLDA7UmV0cmlldmVyT3BlcmF0b3IsMTEsMjtQb3N0 RG9jUGFyc2VyT3BlcmF0b3IsMTAsMTtQb3N0RG9jUGFyc2VyT3Blcm F0b3IsMTEsMDtQb3N0V29yZEJyZWFrZXJEaWFnbm9zdGljT3BlcmF0 b3IsMTAsMTtQb3N0V29yZEJyZWFrZXJEaWFnbm9zdGljT3BlcmF0b3 IsMTEsMDtUcmFuc3BvcnRXcml0ZXJQcm9kdWNlciwyMCw3 X-MS-Exchange-Forest-IndexAgent: 1 1128 X-MS-Exchange-Forest-EmailMessageHash: B36D1F22 X-MS-Exchange-Forest-Language: en X-MS-Exchange-Organization-Processed-By-Journaling: Journal Agent Hi, This is v2 of previous series[1] about cpumask var on stack for net subsystem. Change since v1: - For iucv_setmask_up() which returns void to caller, just make cpumask var static which is protected by global lock iucv_register_mutex. [Eric] [1] v1: https://lore.kernel.org/lkml/20240329105610.922675-1-dawei.li@shingroup.cn/ Dawei Li (2): net/iucv: Avoid explicit cpumask var allocation on stack net/dpaa2: Avoid explicit cpumask var allocation on stack .../net/ethernet/freescale/dpaa2/dpaa2-eth.c | 14 ++++++---- net/iucv/iucv.c | 26 +++++++++++++------ 2 files changed, 27 insertions(+), 13 deletions(-) Thanks, Dawei -- 2.27.0 X-sender: <linux-kernel+bounces-125960-steffen.klassert=secunet.com@vger.kernel.org> X-Receiver: <steffen.klassert@secunet.com> ORCPT=rfc822;steffen.klassert@secunet.com NOTIFY=NEVER; X-ExtendedProps=BQAVABYAAgAAAAUAFAARAPDFCS25BAlDktII2g02frgPADUAAABNaWNyb3NvZnQuRXhjaGFuZ2UuVHJhbnNwb3J0LkRpcmVjdG9yeURhdGEuSXNSZXNvdXJjZQIAAAUAagAJAAEAAAAAAAAABQAWAAIAAAUAQwACAAAFAEYABwADAAAABQBHAAIAAAUAEgAPAGIAAAAvbz1zZWN1bmV0L291PUV4Y2hhbmdlIEFkbWluaXN0cmF0aXZlIEdyb3VwIChGWURJQk9IRjIzU1BETFQpL2NuPVJlY2lwaWVudHMvY249U3RlZmZlbiBLbGFzc2VydDY4YwUACwAXAL4AAACheZxkHSGBRqAcAp3ukbifQ049REI2LENOPURhdGFiYXNlcyxDTj1FeGNoYW5nZSBBZG1pbmlzdHJhdGl2ZSBHcm91cCAoRllESUJPSEYyM1NQRExUKSxDTj1BZG1pbmlzdHJhdGl2ZSBHcm91cHMsQ049c2VjdW5ldCxDTj1NaWNyb3NvZnQgRXhjaGFuZ2UsQ049U2VydmljZXMsQ049Q29uZmlndXJhdGlvbixEQz1zZWN1bmV0LERDPWRlBQAOABEABiAS9uuMOkqzwmEZDvWNNQUAHQAPAAwAAABtYngtZXNzZW4tMDIFADwAAgAADwA2AAAATWljcm9zb2Z0LkV4Y2hhbmdlLlRyYW5zcG9ydC5NYWlsUmVjaXBpZW50LkRpc3BsYXlOYW1lDwARAAAAS2xhc3NlcnQsIFN0ZWZmZW4FAAwAAgAABQBsAAIAAAUAWAAXAEoAAADwxQktuQQJQ5LSCNoNNn64Q049S2xhc3NlcnQgU3RlZmZlbixPVT1Vc2VycyxPVT1NaWdyYXRpb24sREM9c2VjdW5ldCxEQz1kZQUAJgACAAEFACIADwAxAAAAQXV0b1Jlc3BvbnNlU3VwcHJlc3M6IDANClRyYW5zbWl0SGlzdG9yeTogRmFsc2UNCg8ALwAAAE1pY3Jvc29mdC5FeGNoYW5nZS5UcmFuc3BvcnQuRXhwYW5zaW9uR3JvdXBUeXBlDwAVAAAATWVtYmVyc0dyb3VwRXhwYW5zaW9uBQAjAAIAAQ== X-CreatedBy: MSExchange15 X-HeloDomain: a.mx.secunet.com X-ExtendedProps: BQBjAAoAknAFfe5Q3AgFAGEACAABAAAABQA3AAIAAA8APAAAAE1pY3Jvc29mdC5FeGNoYW5nZS5UcmFuc3BvcnQuTWFpbFJlY2lwaWVudC5Pcmdhbml6YXRpb25TY29wZREAAAAAAAAAAAAAAAAAAAAAAAUASQACAAEFAAQAFCABAAAAHAAAAHN0ZWZmZW4ua2xhc3NlcnRAc2VjdW5ldC5jb20FAAYAAgABBQApAAIAAQ8ACQAAAENJQXVkaXRlZAIAAQUAAgAHAAEAAAAFAAMABwAAAAAABQAFAAIAAQUAYgAKAGcAAADsigAABQBkAA8AAwAAAEh1Yg== X-Source: SMTP:Default MBX-ESSEN-02 X-SourceIPAddress: 62.96.220.36 X-EndOfInjectedXHeaders: 9885 Received: from cas-essen-01.secunet.de (10.53.40.201) by mbx-essen-02.secunet.de (10.53.40.198) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.37; Sun, 31 Mar 2024 07:37:38 +0200 Received: from a.mx.secunet.com (62.96.220.36) by cas-essen-01.secunet.de (10.53.40.201) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.37 via Frontend Transport; Sun, 31 Mar 2024 07:37:38 +0200 Received: from localhost (localhost [127.0.0.1]) by a.mx.secunet.com (Postfix) with ESMTP id 8D5E82087C for <steffen.klassert@secunet.com>; Sun, 31 Mar 2024 07:37:38 +0200 (CEST) X-Virus-Scanned: by secunet X-Spam-Flag: NO X-Spam-Score: -2.651 X-Spam-Level: X-Spam-Status: No, score=-2.651 tagged_above=-999 required=2.1 tests=[BAYES_00=-1.9, HEADER_FROM_DIFFERENT_DOMAINS=0.249, MAILING_LIST_MULTI=-1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no Received: from a.mx.secunet.com ([127.0.0.1]) by localhost (a.mx.secunet.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id m_Ez23TMl8tb for <steffen.klassert@secunet.com>; Sun, 31 Mar 2024 07:37:35 +0200 (CEST) Received-SPF: Pass (sender SPF authorized) identity=mailfrom; client-ip=147.75.48.161; helo=sy.mirrors.kernel.org; envelope-from=linux-kernel+bounces-125960-steffen.klassert=secunet.com@vger.kernel.org; receiver=steffen.klassert@secunet.com DKIM-Filter: OpenDKIM Filter v2.11.0 a.mx.secunet.com 1E48C2083E Received: from sy.mirrors.kernel.org (sy.mirrors.kernel.org [147.75.48.161]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by a.mx.secunet.com (Postfix) with ESMTPS id 1E48C2083E for <steffen.klassert@secunet.com>; Sun, 31 Mar 2024 07:37:34 +0200 (CEST) Received: from smtp.subspace.kernel.org (wormhole.subspace.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by sy.mirrors.kernel.org (Postfix) with ESMTPS id C3316B2167A for <steffen.klassert@secunet.com>; Sun, 31 Mar 2024 05:37:30 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id 12F27A951; Sun, 31 Mar 2024 05:37:07 +0000 (UTC) Received: from bg1.exmail.qq.com (bg1.exmail.qq.com [114.132.65.219]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id E6DB98C1F; Sun, 31 Mar 2024 05:37:00 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=114.132.65.219 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711863425; cv=none; b=VU5sqT4EZDNDIhhJDcEsRmUyK6xfLEfFs/2kDpHkMaqSndvQee+UlyPyQ9pAlCTr9tUHekrlOAk7/8M9QMn+Ozphl5D0Crk/T6wslqghXq6sMHjNK1LGGJw0FEv37pYGqPXJUMlI2uxvsCPVliyJAlvq+eE2k8E6gnodxx7wMN0= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711863425; c=relaxed/simple; bh=hpjQo0KhGps9/VGEa1fBWiX7PTL1ct+EPAiqsmg8ihw=; h=From:To:Cc:Subject:Date:Message-Id:MIME-Version; b=hcedxsIgUnex9W5qPm6h4B/RVb3VxToczR7yicqDvE04hFwnPDaShPwcd+Ap0ehUo5OvEBExAfFUa3CLmV5Duc+um0+KAyFF12SzvgSkjRfwVbj5m3f3/ph7rGN1Efe8WS1eBCTb1Ana7TRsY8URmqHoWvrCFrglxe8L6pfV0ik= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=shingroup.cn; spf=pass smtp.mailfrom=shingroup.cn; arc=none smtp.client-ip=114.132.65.219 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=shingroup.cn Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=shingroup.cn X-QQ-mid: bizesmtp82t1711863322twj5416u X-QQ-Originating-IP: 0rkeoEkh2HalCCEoJiJGaDTGlkyTZd6PhYBWh2BWtmk= Received: from localhost ( [112.0.147.175]) by bizesmtp.qq.com (ESMTP) with id ; Sun, 31 Mar 2024 13:35:20 +0800 (CST) X-QQ-SSF: 01400000000000704000000A0000000 X-QQ-FEAT: znfcQSa1hKbRHAcLRCv1mDsVAG5bHbuYuRsE+M8xuRHH6h2E+rlsyWbE1dXtv UQZFNYuvIRN7KJrZoV1geRqrKHmHP4N5lK23noYgSby8/HP6Uh+yb0lP0JrpeYiYuGmJDDo bQIsdMn0ZZLIdPi7rOkxDKv/Lon9JsOwUgzfj4hZgCMnrV/viuHyuqhnra9S7sz5rIyd2GA YqKJbGSTX0jZxt7WDMzxgMXgKg/TFUGjUdZqIE8ObYckJvG7rSuCw7zD2WXtT4Re1JR+1dG 2B4c9DKNZJ4mzNCzpbR978qR6wHulvH1ysDRAD6aD5b1sT8kAtQgke+IrvxML26dgr6IU3q upE7QoPxntRWx9ZYSOipUsBFfxz7gRbhUDvDRYi7cH7UTiQDaY= X-QQ-GoodBg: 2 X-BIZMAIL-ID: 1667159541051008534 From: Dawei Li <dawei.li@shingroup.cn> To: <davem@davemloft.net>, <edumazet@google.com>, <kuba@kernel.org>, <pabeni@redhat.com>, <ioana.ciornei@nxp.com>, <wintera@linux.ibm.com>, <twinkler@linux.ibm.com> CC: <netdev@vger.kernel.org>, <linux-kernel@vger.kernel.org>, <linux-s390@vger.kernel.org>, Dawei Li <dawei.li@shingroup.cn> Subject: [PATCH net-next v2 0/2] Avoid explicit cpumask var allocation on stack Date: Sun, 31 Mar 2024 13:34:39 +0800 Message-ID: <20240331053441.1276826-1-dawei.li@shingroup.cn> X-Mailer: git-send-email 2.27.0 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: <linux-kernel.vger.kernel.org> List-Subscribe: <mailto:linux-kernel+subscribe@vger.kernel.org> List-Unsubscribe: <mailto:linux-kernel+unsubscribe@vger.kernel.org> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-QQ-SENDSIZE: 520 Feedback-ID: bizesmtp:shingroup.cn:qybglogicsvrgz:qybglogicsvrgz5a-1 Return-Path: linux-kernel+bounces-125960-steffen.klassert=secunet.com@vger.kernel.org X-MS-Exchange-Organization-OriginalArrivalTime: 31 Mar 2024 05:37:38.6367 (UTC) X-MS-Exchange-Organization-Network-Message-Id: 14ed287c-673b-48d1-0ce0-08dc5144ad45 X-MS-Exchange-Organization-OriginalClientIPAddress: 62.96.220.36 X-MS-Exchange-Organization-OriginalServerIPAddress: 10.53.40.201 X-MS-Exchange-Organization-Cross-Premises-Headers-Processed: cas-essen-01.secunet.de X-MS-Exchange-Organization-OrderedPrecisionLatencyInProgress: LSRV=mbx-essen-02.secunet.de:TOTAL-HUB=0.190|SMR=0.145(SMRDE=0.003|SMRC=0.141(SMRCL=0.102|X-SMRCR=0.139))|CAT=0.043(CATOS=0.001 |CATRESL=0.011(CATRESLP2R=0.003)|CATORES=0.028(CATRS=0.028(CATRS-Transport Rule Agent=0.001 (X-ETREX=0.001)|CATRS-Index Routing Agent=0.026))|CATORT=0.001);2024-03-31T05:37:38.826Z Content-Type: text/plain X-MS-Exchange-Forest-ArrivalHubServer: mbx-essen-02.secunet.de X-MS-Exchange-Organization-AuthSource: cas-essen-01.secunet.de X-MS-Exchange-Organization-AuthAs: Anonymous X-MS-Exchange-Organization-FromEntityHeader: Internet X-MS-Exchange-Organization-OriginalSize: 6747 X-MS-Exchange-Organization-HygienePolicy: Standard X-MS-Exchange-Organization-MessageLatency: SRV=cas-essen-01.secunet.de:TOTAL-FE=0.007|SMR=0.007(SMRPI=0.005(SMRPI-FrontendProxyAgent=0.005)) X-MS-Exchange-Organization-Recipient-Limit-Verified: True X-MS-Exchange-Organization-TotalRecipientCount: 1 X-MS-Exchange-Organization-Rules-Execution-History: 0b0cf904-14ac-4724-8bdf-482ee6223cf2%%%fd34672d-751c-45ae-a963-ed177fcabe23%%%d8080257-b0c3-47b4-b0db-23bc0c8ddb3c%%%95e591a2-5d7d-4afa-b1d0-7573d6c0a5d9%%%f7d0f6bc-4dcc-4876-8c5d-b3d6ddbb3d55%%%16355082-c50b-4214-9c7d-d39575f9f79b X-MS-Exchange-Forest-RulesExecuted: mbx-essen-02 X-MS-Exchange-Organization-RulesExecuted: mbx-essen-02 X-MS-Exchange-Forest-IndexAgent-0: AQ0CZW4AAXoCAAAPAAADH4sIAAAAAAAEAJVSXWvbMBSV4tipXdwU9r S3y54aktix26Y0Txv7YLA97q2U4ChKrMWxjCSnLfQv7j/tSm7YxmAw IcSV7jnnnnvRD/+zmMRRHH0rhQbchxzkBhrFD0K2GjRXguu77B6KlW wNsKbdF3oHh0KBrEGbgu1gIxXU3MSRblf6SRu+T6zk+7Kotxy0qBmH Q7aIoyl8Qqho2WGpubFCy7a5GMFDKVgJiptW1WhBijUYCayoKq4m8L 3VBvbFjh+rxxE4A1jdCPbCRu+NkoYzw9eweoJtJVdFBZVEg66i4luB 3tRy3xr+mMDdRyXYvTVq23P+SmMavUjTSiqe7LiqeZVItU2r3b5K81 l+NbvMb7PZ9TybJbd5Pr+5nmbTdfHARVKJt7oU9VbJtklYnVrdDzYD XwVc5KOFNY1DSq2XBbxzTfLHphJM/DlW7FoybAzHe5zwkbtuiiL/fz LSkyRJrQI3pW3LpBvFucYJ8060O6eYThjAM2RXMHZrigv5R+fusJB/ rmfI5y/88S8ZJ5TDRlRcA3OfYz2B/AZEjd/MetYX49EEsktY84p3D9 NR9zuLeqfdR7X6brD2YiXzJL9JZvYWR4T0yKBP/B7xun1CwoAOKCGU eD4JBuTEI/2eizHwiB+Ss4AM8IpEfOlTMiQ+wnrE7/CdWuCCvk2dIu xI8UISuawtitxXxMeKPoJp1BW1OpR8cfSgK0H8MzLEmJLebyJOkPYd q4MF+IJqneeInDrbIca+A/+VOsMYH1ENs1g0dD1Siv5xLOddadyUvr Ev9LWrZT0MaOgwXkSHXRCS84AMfRpbDO05vGfjn2eLDCExBAAAAQuN Ajw/eG1sIHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9InV0Zi0xNiI/Pg 0KPFVybFNldD4NCiAgPFZlcnNpb24+MTUuMC4wLjA8L1ZlcnNpb24+ DQogIDxVcmxzPg0KICAgIDxVcmwgU3RhcnRJbmRleD0iMjY4IiBUeX BlPSJVcmwiPg0KICAgICAgPFVybFN0cmluZz5odHRwczovL2xvcmUu a2VybmVsLm9yZy9sa21sLzIwMjQwMzI5MTA1NjEwLjkyMjY3NS0xLW Rhd2VpLmxpQHNoaW5ncm91cC5jbi88L1VybFN0cmluZz4NCiAgICA8 L1VybD4NCiAgPC9VcmxzPg0KPC9VcmxTZXQ+AQ7PAVJldHJpZXZlck 9wZXJhdG9yLDEwLDE7UmV0cmlldmVyT3BlcmF0b3IsMTEsMjtQb3N0 RG9jUGFyc2VyT3BlcmF0b3IsMTAsMTtQb3N0RG9jUGFyc2VyT3Blcm F0b3IsMTEsMDtQb3N0V29yZEJyZWFrZXJEaWFnbm9zdGljT3BlcmF0 b3IsMTAsMjtQb3N0V29yZEJyZWFrZXJEaWFnbm9zdGljT3BlcmF0b3 IsMTEsMDtUcmFuc3BvcnRXcml0ZXJQcm9kdWNlciwyMCwxMA== X-MS-Exchange-Forest-IndexAgent: 1 1129 X-MS-Exchange-Forest-EmailMessageHash: B36D1F22 X-MS-Exchange-Forest-Language: en X-MS-Exchange-Organization-Processed-By-Journaling: Journal Agent Hi, This is v2 of previous series[1] about cpumask var on stack for net subsystem. Change since v1: - For iucv_setmask_up() which returns void to caller, just make cpumask var static which is protected by global lock iucv_register_mutex. [Eric] [1] v1: https://lore.kernel.org/lkml/20240329105610.922675-1-dawei.li@shingroup.cn/ Dawei Li (2): net/iucv: Avoid explicit cpumask var allocation on stack net/dpaa2: Avoid explicit cpumask var allocation on stack .../net/ethernet/freescale/dpaa2/dpaa2-eth.c | 14 ++++++---- net/iucv/iucv.c | 26 +++++++++++++------ 2 files changed, 27 insertions(+), 13 deletions(-) Thanks, Dawei -- 2.27.0 ^ permalink raw reply [flat|nested] 8+ messages in thread
* [PATCH net-next v2 1/2] net/iucv: Avoid explicit cpumask var allocation on stack 2024-03-31 5:34 [PATCH net-next v2 0/2] Avoid explicit cpumask var allocation on stack Dawei Li 2024-03-31 5:34 ` Dawei Li @ 2024-03-31 5:34 ` Dawei Li 2024-03-31 5:34 ` Dawei Li 2024-04-02 12:41 ` Alexandra Winter 2024-03-31 5:34 ` [PATCH net-next v2 2/2] net/dpaa2: " Dawei Li 2024-04-03 1:40 ` [PATCH net-next v2 0/2] " patchwork-bot+netdevbpf 3 siblings, 2 replies; 8+ messages in thread From: Dawei Li @ 2024-03-31 5:34 UTC (permalink / raw) To: davem, edumazet, kuba, pabeni, ioana.ciornei, wintera, twinkler Cc: netdev, linux-kernel, linux-s390, Dawei Li For CONFIG_CPUMASK_OFFSTACK=y kernel, explicit allocation of cpumask variable on stack is not recommended since it can cause potential stack overflow. Instead, kernel code should always use *cpumask_var API(s) to allocate cpumask var in config-neutral way, leaving allocation strategy to CONFIG_CPUMASK_OFFSTACK. Use *cpumask_var API(s) to address it. Signed-off-by: Dawei Li <dawei.li@shingroup.cn> --- net/iucv/iucv.c | 26 ++++++++++++++++++-------- 1 file changed, 18 insertions(+), 8 deletions(-) diff --git a/net/iucv/iucv.c b/net/iucv/iucv.c index a4ab615ca3e3..5e37a8ceebcb 100644 --- a/net/iucv/iucv.c +++ b/net/iucv/iucv.c @@ -520,7 +520,7 @@ static void iucv_setmask_mp(void) */ static void iucv_setmask_up(void) { - cpumask_t cpumask; + static cpumask_t cpumask; int cpu; /* Disable all cpu but the first in cpu_irq_cpumask. */ @@ -628,23 +628,33 @@ static int iucv_cpu_online(unsigned int cpu) static int iucv_cpu_down_prep(unsigned int cpu) { - cpumask_t cpumask; + cpumask_var_t cpumask; + int ret = 0; if (!iucv_path_table) return 0; - cpumask_copy(&cpumask, &iucv_buffer_cpumask); - cpumask_clear_cpu(cpu, &cpumask); - if (cpumask_empty(&cpumask)) + if (!alloc_cpumask_var(&cpumask, GFP_KERNEL)) + return -ENOMEM; + + cpumask_copy(cpumask, &iucv_buffer_cpumask); + cpumask_clear_cpu(cpu, cpumask); + if (cpumask_empty(cpumask)) { /* Can't offline last IUCV enabled cpu. */ - return -EINVAL; + ret = -EINVAL; + goto __free_cpumask; + } iucv_retrieve_cpu(NULL); if (!cpumask_empty(&iucv_irq_cpumask)) - return 0; + goto __free_cpumask; + smp_call_function_single(cpumask_first(&iucv_buffer_cpumask), iucv_allow_cpu, NULL, 1); - return 0; + +__free_cpumask: + free_cpumask_var(cpumask); + return ret; } /** -- 2.27.0 ^ permalink raw reply related [flat|nested] 8+ messages in thread
* [PATCH net-next v2 1/2] net/iucv: Avoid explicit cpumask var allocation on stack 2024-03-31 5:34 ` [PATCH net-next v2 1/2] net/iucv: " Dawei Li @ 2024-03-31 5:34 ` Dawei Li 2024-04-02 12:41 ` Alexandra Winter 1 sibling, 0 replies; 8+ messages in thread From: Dawei Li @ 2024-03-31 5:34 UTC (permalink / raw) To: davem, edumazet, kuba, pabeni, ioana.ciornei, wintera, twinkler Cc: netdev, linux-kernel, linux-s390, Dawei Li For CONFIG_CPUMASK_OFFSTACK=y kernel, explicit allocation of cpumask variable on stack is not recommended since it can cause potential stack overflow. Instead, kernel code should always use *cpumask_var API(s) to allocate cpumask var in config-neutral way, leaving allocation strategy to CONFIG_CPUMASK_OFFSTACK. Use *cpumask_var API(s) to address it. Signed-off-by: Dawei Li <dawei.li@shingroup.cn> --- net/iucv/iucv.c | 26 ++++++++++++++++++-------- 1 file changed, 18 insertions(+), 8 deletions(-) diff --git a/net/iucv/iucv.c b/net/iucv/iucv.c index a4ab615ca3e3..5e37a8ceebcb 100644 --- a/net/iucv/iucv.c +++ b/net/iucv/iucv.c @@ -520,7 +520,7 @@ static void iucv_setmask_mp(void) */ static void iucv_setmask_up(void) { - cpumask_t cpumask; + static cpumask_t cpumask; int cpu; /* Disable all cpu but the first in cpu_irq_cpumask. */ @@ -628,23 +628,33 @@ static int iucv_cpu_online(unsigned int cpu) static int iucv_cpu_down_prep(unsigned int cpu) { - cpumask_t cpumask; + cpumask_var_t cpumask; + int ret = 0; if (!iucv_path_table) return 0; - cpumask_copy(&cpumask, &iucv_buffer_cpumask); - cpumask_clear_cpu(cpu, &cpumask); - if (cpumask_empty(&cpumask)) + if (!alloc_cpumask_var(&cpumask, GFP_KERNEL)) + return -ENOMEM; + + cpumask_copy(cpumask, &iucv_buffer_cpumask); + cpumask_clear_cpu(cpu, cpumask); + if (cpumask_empty(cpumask)) { /* Can't offline last IUCV enabled cpu. */ - return -EINVAL; + ret = -EINVAL; + goto __free_cpumask; + } iucv_retrieve_cpu(NULL); if (!cpumask_empty(&iucv_irq_cpumask)) - return 0; + goto __free_cpumask; + smp_call_function_single(cpumask_first(&iucv_buffer_cpumask), iucv_allow_cpu, NULL, 1); - return 0; + +__free_cpumask: + free_cpumask_var(cpumask); + return ret; } /** -- 2.27.0 X-sender: <netdev+bounces-83538-steffen.klassert=secunet.com@vger.kernel.org> X-Receiver: <steffen.klassert@secunet.com> ORCPT=rfc822;steffen.klassert@secunet.com NOTIFY=NEVER; X-ExtendedProps=BQBYABcASgAAAPDFCS25BAlDktII2g02frhDTj1LbGFzc2VydCBTdGVmZmVuLE9VPVVzZXJzLE9VPU1pZ3JhdGlvbixEQz1zZWN1bmV0LERDPWRlBQBsAAIAAAUADAACAAAPADYAAABNaWNyb3NvZnQuRXhjaGFuZ2UuVHJhbnNwb3J0Lk1haWxSZWNpcGllbnQuRGlzcGxheU5hbWUPABEAAABLbGFzc2VydCwgU3RlZmZlbgUAPAACAAAFAB0ADwAMAAAAbWJ4LWVzc2VuLTAyBQAOABEABiAS9uuMOkqzwmEZDvWNNQUACwAXAL4AAACheZxkHSGBRqAcAp3ukbifQ049REI2LENOPURhdGFiYXNlcyxDTj1FeGNoYW5nZSBBZG1pbmlzdHJhdGl2ZSBHcm91cCAoRllESUJPSEYyM1NQRExUKSxDTj1BZG1pbmlzdHJhdGl2ZSBHcm91cHMsQ049c2VjdW5ldCxDTj1NaWNyb3NvZnQgRXhjaGFuZ2UsQ049U2VydmljZXMsQ049Q29uZmlndXJhdGlvbixEQz1zZWN1bmV0LERDPWRlBQASAA8AYgAAAC9vPXNlY3VuZXQvb3U9RXhjaGFuZ2UgQWRtaW5pc3RyYXRpdmUgR3JvdXAgKEZZRElCT0hGMjNTUERMVCkvY249UmVjaXBpZW50cy9jbj1TdGVmZmVuIEtsYXNzZXJ0NjhjBQBHAAIAAAUARgAHAAMAAAAFAEMAAgAABQAWAAIAAAUAagAJAAEAAAAAAAAABQAUABEA8MUJLbkECUOS0gjaDTZ+uAUAFQAWAAIAAAAPADUAAABNaWNyb3NvZnQuRXhjaGFuZ2UuVHJhbnNwb3J0LkRpcmVjdG9yeURhdGEuSXNSZXNvdXJjZQIAAAUAIwACAAEFACIADwAxAAAAQXV0b1Jlc3BvbnNlU3VwcHJlc3M6IDANClRyYW5zbWl0SGlzdG9yeTogRmFsc2UNCg8ALwAAAE1pY3Jvc29mdC5FeGNoYW5nZS5UcmFuc3BvcnQuRXhwYW5zaW9uR3JvdXBUeXBlDwAVAAAATWVtYmVyc0dyb3VwRXhwYW5zaW9uBQAmAAIAAQ== X-CreatedBy: MSExchange15 X-HeloDomain: b.mx.secunet.com X-ExtendedProps: BQBjAAoAm3AFfe5Q3AgFAGEACAABAAAABQA3AAIAAA8APAAAAE1pY3Jvc29mdC5FeGNoYW5nZS5UcmFuc3BvcnQuTWFpbFJlY2lwaWVudC5Pcmdhbml6YXRpb25TY29wZREAAAAAAAAAAAAAAAAAAAAAAAUASQACAAEFAAQAFCABAAAAHAAAAHN0ZWZmZW4ua2xhc3NlcnRAc2VjdW5ldC5jb20FAAYAAgABDwAqAAAATWljcm9zb2Z0LkV4Y2hhbmdlLlRyYW5zcG9ydC5SZXN1Ym1pdENvdW50BwABAAAADwAJAAAAQ0lBdWRpdGVkAgABBQACAAcAAQAAAAUAAwAHAAAAAAAFAAUAAgABBQBiAAoAYwAAAOyKAAAFAGQADwADAAAASHViBQApAAIAAQ== X-Source: SMTP:Default MBX-ESSEN-02 X-SourceIPAddress: 62.96.220.37 X-EndOfInjectedXHeaders: 13156 Received: from cas-essen-02.secunet.de (10.53.40.202) by mbx-essen-02.secunet.de (10.53.40.198) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.37; Sun, 31 Mar 2024 07:37:07 +0200 Received: from b.mx.secunet.com (62.96.220.37) by cas-essen-02.secunet.de (10.53.40.202) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.37 via Frontend Transport; Sun, 31 Mar 2024 07:37:07 +0200 Received: from localhost (localhost [127.0.0.1]) by b.mx.secunet.com (Postfix) with ESMTP id B85AA20199 for <steffen.klassert@secunet.com>; Sun, 31 Mar 2024 07:37:07 +0200 (CEST) X-Virus-Scanned: by secunet X-Spam-Flag: NO X-Spam-Score: -4.951 X-Spam-Level: X-Spam-Status: No, score=-4.951 tagged_above=-999 required=2.1 tests=[BAYES_00=-1.9, HEADER_FROM_DIFFERENT_DOMAINS=0.249, MAILING_LIST_MULTI=-1, RCVD_IN_DNSWL_MED=-2.3, SPF_HELO_NONE=0.001, SPF_PASS=-0.001] autolearn=unavailable autolearn_force=no Received: from b.mx.secunet.com ([127.0.0.1]) by localhost (a.mx.secunet.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id W5t16-SzPzNP for <steffen.klassert@secunet.com>; Sun, 31 Mar 2024 07:37:04 +0200 (CEST) Received-SPF: Pass (sender SPF authorized) identity=mailfrom; client-ip=139.178.88.99; helo=sv.mirrors.kernel.org; envelope-from=netdev+bounces-83538-steffen.klassert=secunet.com@vger.kernel.org; receiver=steffen.klassert@secunet.com DKIM-Filter: OpenDKIM Filter v2.11.0 b.mx.secunet.com C26CF20310 Received: from sv.mirrors.kernel.org (sv.mirrors.kernel.org [139.178.88.99]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by b.mx.secunet.com (Postfix) with ESMTPS id C26CF20310 for <steffen.klassert@secunet.com>; Sun, 31 Mar 2024 07:37:03 +0200 (CEST) Received: from smtp.subspace.kernel.org (wormhole.subspace.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by sv.mirrors.kernel.org (Postfix) with ESMTPS id CCA95282445 for <steffen.klassert@secunet.com>; Sun, 31 Mar 2024 05:37:01 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id D7EEF6FB2; Sun, 31 Mar 2024 05:36:53 +0000 (UTC) X-Original-To: netdev@vger.kernel.org Received: from smtpbgbr2.qq.com (smtpbgbr2.qq.com [54.207.22.56]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 71F9D6FA7; Sun, 31 Mar 2024 05:36:46 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=54.207.22.56 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711863413; cv=none; b=RpVDbX2JD0/RlW8D3gN7OWsadmc/olonOAvagvgCKlgPh8iwqleFOAs1g1tsHRmtm5UUYluM5mA1wYn26M5NeINJKyIg90zg4vqzAdudbbmXgcs05AQmoZX3s7pqWOyEbC4QtOoms2WPtUhwcYKE/2gGCjzh8Ce4wGf3gL3KJI8= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711863413; c=relaxed/simple; bh=cRT3X+uLWIo/WDT/dysE7g0AVNehkJ5rdYqVsI+vjX4=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=sJGQalf5ygsLz6W7crwPcqJPg9D2iGQDLglH0ceLy/J91sAwjpOeLVrpyKsKv+GF3c/o5LJ9MTIYYGxWiDZdwZrtpK4DnTjYj/bwd04ljxHUXXks+AJ62V2K+q6ynlRDjwUtctZuSI/7xszZJI9mjsIOksy7n6En4OXN4lYeN9g= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=shingroup.cn; spf=pass smtp.mailfrom=shingroup.cn; arc=none smtp.client-ip=54.207.22.56 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=shingroup.cn Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=shingroup.cn X-QQ-mid: bizesmtp87t1711863353tvqruomb X-QQ-Originating-IP: dHu89vOsfyXlaQKZF86cBB1XYRxM3aKc0t7f88USl8g= Received: from localhost ( [112.0.147.175]) by bizesmtp.qq.com (ESMTP) with id ; Sun, 31 Mar 2024 13:35:52 +0800 (CST) X-QQ-SSF: 01400000000000704000000A0000000 X-QQ-FEAT: rZJGTgY0+YOuhoc1+jgTQzFXybo6WpkwHmAznXexq7mNnvmJOrZ22rJCyRlxA yv+DUYrg83tauZiFD4e5OeolzNLxCkYZAI3ridWwMnx2JQecfKQBp6G915QB7WwOeONSCAQ yiiu0Z+ri/Nw7546cTU5FunYzRvLQVeaNQXN84uh1FHxLo6fpmfcrxm7/+sMZdYHa3cAaRl lTYuZWrjb5rQtysFSnufhD17smjbr9Zod6O8MaB8Un+YnXkUvQCTJjP7wxCo8r0n+rP7Omt ETATyyanGMCSnkBeXJDPkdGNQF1RQgjq6q60WhxSBKe90UnQzoh9rQ6lzMDcGqqJm5fJaTq T82qGnoMMUZejzj1HUiSxMd5lxp71G2bssZRY5kxGdGRmMmri9sTkshPuxG6SH3lpBNpj3e X-QQ-GoodBg: 2 X-BIZMAIL-ID: 4506703939604469898 From: Dawei Li <dawei.li@shingroup.cn> To: <davem@davemloft.net>, <edumazet@google.com>, <kuba@kernel.org>, <pabeni@redhat.com>, <ioana.ciornei@nxp.com>, <wintera@linux.ibm.com>, <twinkler@linux.ibm.com> CC: <netdev@vger.kernel.org>, <linux-kernel@vger.kernel.org>, <linux-s390@vger.kernel.org>, Dawei Li <dawei.li@shingroup.cn> Subject: [PATCH net-next v2 1/2] net/iucv: Avoid explicit cpumask var allocation on stack Date: Sun, 31 Mar 2024 13:34:40 +0800 Message-ID: <20240331053441.1276826-2-dawei.li@shingroup.cn> X-Mailer: git-send-email 2.27.0 In-Reply-To: <20240331053441.1276826-1-dawei.li@shingroup.cn> References: <20240331053441.1276826-1-dawei.li@shingroup.cn> Precedence: bulk X-Mailing-List: netdev@vger.kernel.org List-Id: <netdev.vger.kernel.org> List-Subscribe: <mailto:netdev+subscribe@vger.kernel.org> List-Unsubscribe: <mailto:netdev+unsubscribe@vger.kernel.org> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-QQ-SENDSIZE: 520 Feedback-ID: bizesmtp:shingroup.cn:qybglogicsvrgz:qybglogicsvrgz5a-1 Return-Path: netdev+bounces-83538-steffen.klassert=secunet.com@vger.kernel.org X-MS-Exchange-Organization-OriginalArrivalTime: 31 Mar 2024 05:37:07.8102 (UTC) X-MS-Exchange-Organization-Network-Message-Id: 7ef23b67-34b2-4e2d-6d56-08dc51449ae5 X-MS-Exchange-Organization-OriginalClientIPAddress: 62.96.220.37 X-MS-Exchange-Organization-OriginalServerIPAddress: 10.53.40.202 X-MS-Exchange-Organization-Cross-Premises-Headers-Processed: cas-essen-02.secunet.de X-MS-Exchange-Organization-OrderedPrecisionLatencyInProgress: LSRV=mbx-essen-02.secunet.de:TOTAL-HUB=17530.414|SMR=0.140(SMRDE=0.005|SMRC=0.135(SMRCL=0.101|X-SMRCR=0.135))|CAT=0.081(CATOS=0.001 |CATRESL=0.030(CATRESLP2R=0.018)|CATORES=0.044(CATRS=0.044(CATRS-Transport Rule Agent=0.001 (X-ETREX=0.001)|CATRS-Index Routing Agent=0.041))|CATORT=0.003(CATRT=0.003(CATRT-Journal Agent=0.002 )))|QDM=6662.984|SMSC=0.180(X-SMSDR=0.011)|SMS=1.932(SMSMBXD-INC=1.860)|QDM=10865.222 |UNK=0.001|CAT=0.012(CATRESL=0.009(CATRESLP2R=0.001)|CATORES=0.001(CATRS=0.001));2024-03-31T10:29:18.270Z Content-Type: text/plain X-MS-Exchange-Forest-ArrivalHubServer: mbx-essen-02.secunet.de X-MS-Exchange-Organization-AuthSource: cas-essen-02.secunet.de X-MS-Exchange-Organization-AuthAs: Anonymous X-MS-Exchange-Organization-FromEntityHeader: Internet X-MS-Exchange-Organization-OriginalSize: 8067 X-MS-Exchange-Organization-HygienePolicy: Standard X-MS-Exchange-Organization-MessageLatency: SRV=cas-essen-02.secunet.de:TOTAL-FE=0.045|SMR=0.011(SMRPI=0.008(SMRPI-FrontendProxyAgent=0.008))|SMS=0.035 X-MS-Exchange-Organization-Recipient-Limit-Verified: True X-MS-Exchange-Organization-TotalRecipientCount: 1 X-MS-Exchange-Organization-Rules-Execution-History: 0b0cf904-14ac-4724-8bdf-482ee6223cf2%%%fd34672d-751c-45ae-a963-ed177fcabe23%%%d8080257-b0c3-47b4-b0db-23bc0c8ddb3c%%%95e591a2-5d7d-4afa-b1d0-7573d6c0a5d9%%%f7d0f6bc-4dcc-4876-8c5d-b3d6ddbb3d55%%%16355082-c50b-4214-9c7d-d39575f9f79b X-MS-Exchange-Forest-RulesExecuted: mbx-essen-02 X-MS-Exchange-Organization-RulesExecuted: mbx-essen-02 X-MS-Exchange-Forest-IndexAgent-0: AQ0CZW4AATQFAAAPAAADH4sIAAAAAAAEAI1VW3ObVhA+SAgQNo5rJ2 3SPnT7kki2kG+J44mbTjyOnfH4kkxT55VBcJCZYFC5yPG0/Xv9Xd09 gIUknIZBcDi7++337S7o3+XjKIbD9xfHJ++sww+X5wcfT633x8cf/z g4PH19C595HPKgB/zLKPAdPwU7CCLHTv0ohMgDZ5Rd28lnQx/bsW8P Ag64n6S28xn8BMIohZg70fU1D13uQuKHDgcEcewQf1nCYRSlPEx9O8 ijDD0a89gLopu+oRv6SZik3HZ7BQ1wIpdDchVlgYtEbuzbBAhkraBh IQs4+HDSSbqQRiVVbuiFHcjuY+oo9PyhGfIsjTEz4vQg4PbYD4dVfQ laUz68RSxDv6dEgublVzi4bsyTBEULz4/+MOSuGXmeObh9BW/tG+7D mQ+/urTqB/6b5ApZxFE26jvhb4ZumqahQ8jTDT9zxuLSd+Bv2N6F9b nDLA6M2ALPx244V3Y45FjArT0UnvCYhCWd9W4P9sDlAc+fzS6Rc33P A9McUpc3ZlMOZncM3cemfgH7uT3Y3Xrh2Dt8p99/wXde2nsO5wNnAF ubm7vPnwsR84iGjozrYN+8AfPF9mbvJaznN9zA4Uh9B8aR7wL5WQlP RbWvRx3aRP4Aaxt4vdczm3j+hZQgP8qupeVqH3kVtgKqzqXwwJqK3X 0qX7m3sQZv/US8DDhMZIZBlkJ6xbEncZKKCRxllh//aRWIfcGdhO9u 7/W2d2Cd7js7FemUSeih0CgM/JB3sjAR81TSEF2sDXCjm9AaxXxUF/ Ot9ahMeK2dEGOewmvYnCqI70HnF0FlZKdXVkql6U7M5YGhWRwWsbN8 nGh023laPPXgqYAbZJ7H47KI3f2aMHythUMHfxhW40rsSnd+PUonab rdijbSIL4NVqUMFUbvjj9Yp0e/XxydVcNmtJlHF+/Pj86pZvNlFRL/ V+Fc1LTCGs95gXf6qPOzbcDxPbTDZyl+3j2aMghsnNmTy8NPwENqnU tJ8ok1Z2LvZJ5cfDo426+tA47H/fZhhN9My/Jizq35AftnaqqoPogX +3wsnDsXl2dn3f2ZuZtprYiqvHnUrHtUbH47v0nO5HpkOTgnlpeFDn 1cLfzTGwb8rgPiE9Cp7W5vvhlzh4ijObyxRL9JM37dqwNdpY/nNNtX E03VbTHMNbNTYOGN6prXf2NtjT7phr7d337Z36Q9Q2esyWRFYj8wVW WaxtoSayhiobOFBmuqrI1rXLSYgld0XmCLd2tctJneYqrGDPRUmCqz Fl7xbLKWKrEFpqEbnhJrYojGdFXs4BqTLomk5Mk0TCcSVckYtSBoam AKiRmUBaFkwUduSeyRIIaUGmwBTUgGT0lCH9aQQGIM1cmE2aYd1tSl B/lmmy3LAg3Xk0AMmnqkIiyypUXJUBhT2OK0VZ16lBSZIVyL8KXGZC 3qQz4SeyCEIw2ZLdVtriJim2kIq7IVdKg+ioKsqmVl8rPoC4HQoyot 53mF/OZkzRTRIDlPRwNAHWwLkPadaUWYcjmldaXKQaUWaHnRCkqSIj QuNUotGNtijxVJzffxtsg0mSkq09FhVVRDFUq/YxryF1nQutog/oTf Eg4I2CIfpRyYNsrUifmPOK4Ke1git76K3JpGRjQQVy2XKcCfCMAnTR rjJ1ixpXxm2M8yQRWlkNlyQwxnzhBNy6JcKvupFPuwEvsI2T4WxdRE hauBJdWeTG9ES1DF6uWVNAo0SSuhVvJceetRDvVL+j4fs7zRtP4PHj FOqCAMAAABCvEBPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0i dXRmLTE2Ij8+DQo8RW1haWxTZXQ+DQogIDxWZXJzaW9uPjE1LjAuMC 4wPC9WZXJzaW9uPg0KICA8RW1haWxzPg0KICAgIDxFbWFpbCBTdGFy dEluZGV4PSIzOTAiIFBvc2l0aW9uPSJTaWduYXR1cmUiPg0KICAgIC AgPEVtYWlsU3RyaW5nPmRhd2VpLmxpQHNoaW5ncm91cC5jbjwvRW1h aWxTdHJpbmc+DQogICAgPC9FbWFpbD4NCiAgPC9FbWFpbHM+DQo8L0 VtYWlsU2V0PgEMqgQ8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5n PSJ1dGYtMTYiPz4NCjxDb250YWN0U2V0Pg0KICA8VmVyc2lvbj4xNS 4wLjAuMDwvVmVyc2lvbj4NCiAgPENvbnRhY3RzPg0KICAgIDxDb250 YWN0IFN0YXJ0SW5kZXg9IjM4MCIgUG9zaXRpb249IlNpZ25hdHVyZS I+DQogICAgICA8UGVyc29uIFN0YXJ0SW5kZXg9IjM4MCIgUG9zaXRp b249IlNpZ25hdHVyZSI+DQogICAgICAgIDxQZXJzb25TdHJpbmc+RG F3ZWkgTGk8L1BlcnNvblN0cmluZz4NCiAgICAgIDwvUGVyc29uPg0K ICAgICAgPEVtYWlscz4NCiAgICAgICAgPEVtYWlsIFN0YXJ0SW5kZX g9IjM5MCIgUG9zaXRpb249IlNpZ25hdHVyZSI+DQogICAgICAgICAg PEVtYWlsU3RyaW5nPmRhd2VpLmxpQHNoaW5ncm91cC5jbjwvRW1haW xTdHJpbmc+DQogICAgICAgIDwvRW1haWw+DQogICAgICA8L0VtYWls cz4NCiAgICAgIDxDb250YWN0U3RyaW5nPkRhd2VpIExpICZsdDtkYX dlaS5saUBzaGluZ3JvdXAuY248L0NvbnRhY3RTdHJpbmc+DQogICAg PC9Db250YWN0Pg0KICA8L0NvbnRhY3RzPg0KPC9Db250YWN0U2V0Pg EOzwFSZXRyaWV2ZXJPcGVyYXRvciwxMCwyO1JldHJpZXZlck9wZXJh dG9yLDExLDI7UG9zdERvY1BhcnNlck9wZXJhdG9yLDEwLDE7UG9zdE RvY1BhcnNlck9wZXJhdG9yLDExLDA7UG9zdFdvcmRCcmVha2VyRGlh Z25vc3RpY09wZXJhdG9yLDEwLDI7UG9zdFdvcmRCcmVha2VyRGlhZ2 5vc3RpY09wZXJhdG9yLDExLDA7VHJhbnNwb3J0V3JpdGVyUHJvZHVj ZXIsMjAsMjI= X-MS-Exchange-Forest-IndexAgent: 1 2357 X-MS-Exchange-Forest-EmailMessageHash: 31D07584 X-MS-Exchange-Forest-Language: en X-MS-Exchange-Organization-Processed-By-Journaling: Journal Agent For CONFIG_CPUMASK_OFFSTACK=y kernel, explicit allocation of cpumask variable on stack is not recommended since it can cause potential stack overflow. Instead, kernel code should always use *cpumask_var API(s) to allocate cpumask var in config-neutral way, leaving allocation strategy to CONFIG_CPUMASK_OFFSTACK. Use *cpumask_var API(s) to address it. Signed-off-by: Dawei Li <dawei.li@shingroup.cn> --- net/iucv/iucv.c | 26 ++++++++++++++++++-------- 1 file changed, 18 insertions(+), 8 deletions(-) diff --git a/net/iucv/iucv.c b/net/iucv/iucv.c index a4ab615ca3e3..5e37a8ceebcb 100644 --- a/net/iucv/iucv.c +++ b/net/iucv/iucv.c @@ -520,7 +520,7 @@ static void iucv_setmask_mp(void) */ static void iucv_setmask_up(void) { - cpumask_t cpumask; + static cpumask_t cpumask; int cpu; /* Disable all cpu but the first in cpu_irq_cpumask. */ @@ -628,23 +628,33 @@ static int iucv_cpu_online(unsigned int cpu) static int iucv_cpu_down_prep(unsigned int cpu) { - cpumask_t cpumask; + cpumask_var_t cpumask; + int ret = 0; if (!iucv_path_table) return 0; - cpumask_copy(&cpumask, &iucv_buffer_cpumask); - cpumask_clear_cpu(cpu, &cpumask); - if (cpumask_empty(&cpumask)) + if (!alloc_cpumask_var(&cpumask, GFP_KERNEL)) + return -ENOMEM; + + cpumask_copy(cpumask, &iucv_buffer_cpumask); + cpumask_clear_cpu(cpu, cpumask); + if (cpumask_empty(cpumask)) { /* Can't offline last IUCV enabled cpu. */ - return -EINVAL; + ret = -EINVAL; + goto __free_cpumask; + } iucv_retrieve_cpu(NULL); if (!cpumask_empty(&iucv_irq_cpumask)) - return 0; + goto __free_cpumask; + smp_call_function_single(cpumask_first(&iucv_buffer_cpumask), iucv_allow_cpu, NULL, 1); - return 0; + +__free_cpumask: + free_cpumask_var(cpumask); + return ret; } /** -- 2.27.0 X-sender: <linux-kernel+bounces-125959-steffen.klassert=secunet.com@vger.kernel.org> X-Receiver: <steffen.klassert@secunet.com> ORCPT=rfc822;steffen.klassert@secunet.com; X-ExtendedProps=DwA1AAAATWljcm9zb2Z0LkV4Y2hhbmdlLlRyYW5zcG9ydC5EaXJlY3RvcnlEYXRhLklzUmVzb3VyY2UCAAAFABUAFgACAAAABQAUABEA8MUJLbkECUOS0gjaDTZ+uAUAagAJAAEAAAAAAAAABQAWAAIAAAUAQwACAAAFAEYABwADAAAABQBHAAIAAAUAEgAPAGIAAAAvbz1zZWN1bmV0L291PUV4Y2hhbmdlIEFkbWluaXN0cmF0aXZlIEdyb3VwIChGWURJQk9IRjIzU1BETFQpL2NuPVJlY2lwaWVudHMvY249U3RlZmZlbiBLbGFzc2VydDY4YwUACwAXAL4AAACheZxkHSGBRqAcAp3ukbifQ049REI2LENOPURhdGFiYXNlcyxDTj1FeGNoYW5nZSBBZG1pbmlzdHJhdGl2ZSBHcm91cCAoRllESUJPSEYyM1NQRExUKSxDTj1BZG1pbmlzdHJhdGl2ZSBHcm91cHMsQ049c2VjdW5ldCxDTj1NaWNyb3NvZnQgRXhjaGFuZ2UsQ049U2VydmljZXMsQ049Q29uZmlndXJhdGlvbixEQz1zZWN1bmV0LERDPWRlBQAOABEABiAS9uuMOkqzwmEZDvWNNQUAHQAPAAwAAABtYngtZXNzZW4tMDIFADwAAgAADwA2AAAATWljcm9zb2Z0LkV4Y2hhbmdlLlRyYW5zcG9ydC5NYWlsUmVjaXBpZW50LkRpc3BsYXlOYW1lDwARAAAAS2xhc3NlcnQsIFN0ZWZmZW4FAGwAAgAABQBYABcASgAAAPDFCS25BAlDktII2g02frhDTj1LbGFzc2VydCBTdGVmZmVuLE9VPVVzZXJzLE9VPU1pZ3JhdGlvbixEQz1zZWN1bmV0LERDPWRlBQAMAAIAAAUAJgACAAEFACIADwAxAAAAQXV0b1Jlc3BvbnNlU3VwcHJlc3M6IDANClRyYW5zbWl0SGlzdG9yeTogRmFsc2UNCg8ALwAAAE1pY3Jvc29mdC5FeGNoYW5nZS5UcmFuc3BvcnQuRXhwYW5zaW9uR3JvdXBUeXBlDwAVAAAATWVtYmVyc0dyb3VwRXhwYW5zaW9uBQAjAAIAAQ== X-CreatedBy: MSExchange15 X-HeloDomain: b.mx.secunet.com X-ExtendedProps: BQBjAAoAknAFfe5Q3AgFAGEACAABAAAABQA3AAIAAA8APAAAAE1pY3Jvc29mdC5FeGNoYW5nZS5UcmFuc3BvcnQuTWFpbFJlY2lwaWVudC5Pcmdhbml6YXRpb25TY29wZREAAAAAAAAAAAAAAAAAAAAAAAUASQACAAEFAAQAFCABAAAAHAAAAHN0ZWZmZW4ua2xhc3NlcnRAc2VjdW5ldC5jb20FAAYAAgABDwAqAAAATWljcm9zb2Z0LkV4Y2hhbmdlLlRyYW5zcG9ydC5SZXN1Ym1pdENvdW50BwACAAAADwAJAAAAQ0lBdWRpdGVkAgABBQACAAcAAQAAAAUAAwAHAAAAAAAFAAUAAgABBQBiAAoAZAAAAOyKAAAFAGQADwADAAAASHViBQApAAIAAQ8APwAAAE1pY3Jvc29mdC5FeGNoYW5nZS5UcmFuc3BvcnQuRGlyZWN0b3J5RGF0YS5NYWlsRGVsaXZlcnlQcmlvcml0eQ8AAwAAAExvdw== X-Source: SMTP:Default MBX-ESSEN-02 X-SourceIPAddress: 62.96.220.37 X-EndOfInjectedXHeaders: 13384 Received: from cas-essen-01.secunet.de (10.53.40.201) by mbx-essen-02.secunet.de (10.53.40.198) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.37; Sun, 31 Mar 2024 07:37:14 +0200 Received: from b.mx.secunet.com (62.96.220.37) by cas-essen-01.secunet.de (10.53.40.201) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.37 via Frontend Transport; Sun, 31 Mar 2024 07:37:14 +0200 Received: from localhost (localhost [127.0.0.1]) by b.mx.secunet.com (Postfix) with ESMTP id AA1D120310 for <steffen.klassert@secunet.com>; Sun, 31 Mar 2024 07:37:14 +0200 (CEST) X-Virus-Scanned: by secunet X-Spam-Flag: NO X-Spam-Score: -2.651 X-Spam-Level: X-Spam-Status: No, score=-2.651 tagged_above=-999 required=2.1 tests=[BAYES_00=-1.9, HEADER_FROM_DIFFERENT_DOMAINS=0.249, MAILING_LIST_MULTI=-1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001] autolearn=unavailable autolearn_force=no Received: from b.mx.secunet.com ([127.0.0.1]) by localhost (a.mx.secunet.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 7Tz73JS66gbv for <steffen.klassert@secunet.com>; Sun, 31 Mar 2024 07:37:13 +0200 (CEST) Received-SPF: Pass (sender SPF authorized) identity=mailfrom; client-ip=147.75.80.249; helo=am.mirrors.kernel.org; envelope-from=linux-kernel+bounces-125959-steffen.klassert=secunet.com@vger.kernel.org; receiver=steffen.klassert@secunet.com DKIM-Filter: OpenDKIM Filter v2.11.0 b.mx.secunet.com 7034320199 Received: from am.mirrors.kernel.org (am.mirrors.kernel.org [147.75.80.249]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by b.mx.secunet.com (Postfix) with ESMTPS id 7034320199 for <steffen.klassert@secunet.com>; Sun, 31 Mar 2024 07:37:13 +0200 (CEST) Received: from smtp.subspace.kernel.org (wormhole.subspace.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by am.mirrors.kernel.org (Postfix) with ESMTPS id 15A3E1F212E2 for <steffen.klassert@secunet.com>; Sun, 31 Mar 2024 05:37:13 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id CF6C88BE2; Sun, 31 Mar 2024 05:36:54 +0000 (UTC) Received: from smtpbgbr2.qq.com (smtpbgbr2.qq.com [54.207.22.56]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 71F9D6FA7; Sun, 31 Mar 2024 05:36:46 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=54.207.22.56 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711863413; cv=none; b=RpVDbX2JD0/RlW8D3gN7OWsadmc/olonOAvagvgCKlgPh8iwqleFOAs1g1tsHRmtm5UUYluM5mA1wYn26M5NeINJKyIg90zg4vqzAdudbbmXgcs05AQmoZX3s7pqWOyEbC4QtOoms2WPtUhwcYKE/2gGCjzh8Ce4wGf3gL3KJI8= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711863413; c=relaxed/simple; bh=cRT3X+uLWIo/WDT/dysE7g0AVNehkJ5rdYqVsI+vjX4=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=sJGQalf5ygsLz6W7crwPcqJPg9D2iGQDLglH0ceLy/J91sAwjpOeLVrpyKsKv+GF3c/o5LJ9MTIYYGxWiDZdwZrtpK4DnTjYj/bwd04ljxHUXXks+AJ62V2K+q6ynlRDjwUtctZuSI/7xszZJI9mjsIOksy7n6En4OXN4lYeN9g= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=shingroup.cn; spf=pass smtp.mailfrom=shingroup.cn; arc=none smtp.client-ip=54.207.22.56 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=shingroup.cn Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=shingroup.cn X-QQ-mid: bizesmtp87t1711863353tvqruomb X-QQ-Originating-IP: dHu89vOsfyXlaQKZF86cBB1XYRxM3aKc0t7f88USl8g= Received: from localhost ( [112.0.147.175]) by bizesmtp.qq.com (ESMTP) with id ; Sun, 31 Mar 2024 13:35:52 +0800 (CST) X-QQ-SSF: 01400000000000704000000A0000000 X-QQ-FEAT: rZJGTgY0+YOuhoc1+jgTQzFXybo6WpkwHmAznXexq7mNnvmJOrZ22rJCyRlxA yv+DUYrg83tauZiFD4e5OeolzNLxCkYZAI3ridWwMnx2JQecfKQBp6G915QB7WwOeONSCAQ yiiu0Z+ri/Nw7546cTU5FunYzRvLQVeaNQXN84uh1FHxLo6fpmfcrxm7/+sMZdYHa3cAaRl lTYuZWrjb5rQtysFSnufhD17smjbr9Zod6O8MaB8Un+YnXkUvQCTJjP7wxCo8r0n+rP7Omt ETATyyanGMCSnkBeXJDPkdGNQF1RQgjq6q60WhxSBKe90UnQzoh9rQ6lzMDcGqqJm5fJaTq T82qGnoMMUZejzj1HUiSxMd5lxp71G2bssZRY5kxGdGRmMmri9sTkshPuxG6SH3lpBNpj3e X-QQ-GoodBg: 2 X-BIZMAIL-ID: 4506703939604469898 From: Dawei Li <dawei.li@shingroup.cn> To: <davem@davemloft.net>, <edumazet@google.com>, <kuba@kernel.org>, <pabeni@redhat.com>, <ioana.ciornei@nxp.com>, <wintera@linux.ibm.com>, <twinkler@linux.ibm.com> CC: <netdev@vger.kernel.org>, <linux-kernel@vger.kernel.org>, <linux-s390@vger.kernel.org>, Dawei Li <dawei.li@shingroup.cn> Subject: [PATCH net-next v2 1/2] net/iucv: Avoid explicit cpumask var allocation on stack Date: Sun, 31 Mar 2024 13:34:40 +0800 Message-ID: <20240331053441.1276826-2-dawei.li@shingroup.cn> X-Mailer: git-send-email 2.27.0 In-Reply-To: <20240331053441.1276826-1-dawei.li@shingroup.cn> References: <20240331053441.1276826-1-dawei.li@shingroup.cn> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: <linux-kernel.vger.kernel.org> List-Subscribe: <mailto:linux-kernel+subscribe@vger.kernel.org> List-Unsubscribe: <mailto:linux-kernel+unsubscribe@vger.kernel.org> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-QQ-SENDSIZE: 520 Feedback-ID: bizesmtp:shingroup.cn:qybglogicsvrgz:qybglogicsvrgz5a-1 Return-Path: linux-kernel+bounces-125959-steffen.klassert=secunet.com@vger.kernel.org X-MS-Exchange-Organization-OriginalArrivalTime: 31 Mar 2024 05:37:14.7545 (UTC) X-MS-Exchange-Organization-Network-Message-Id: 19b28e6c-dddc-4bb1-ec3c-08dc51449f08 X-MS-Exchange-Organization-OriginalClientIPAddress: 62.96.220.37 X-MS-Exchange-Organization-OriginalServerIPAddress: 10.53.40.201 X-MS-Exchange-Organization-Cross-Premises-Headers-Processed: cas-essen-01.secunet.de X-MS-Exchange-Organization-OrderedPrecisionLatencyInProgress: LSRV=mbx-essen-02.secunet.de:TOTAL-HUB=17528.705|SMR=0.326(SMRDE=0.005|SMRC=0.320(SMRCL=0.103|X-SMRCR=0.319))|CAT=0.054(CATOS=0.001 (CATSM=0.001)|CATRESL=0.013(CATRESLP2R=0.005)|CATORES=0.036(CATRS=0.036(CATRS-Transport Rule Agent=0.001 |CATRS-Index Routing Agent=0.034))|CATORT=0.001)|UNK=0.001|QDM=6656.202|SMSC=0.018 |SMS=1.820(SMSMBXD-INC=1.814)|QDM=10865.222|CAT=0.023(CATRESL=0.021(CATRESLP2R=0.001 ))|QDM=5.124|CAT=0.052(CATRESL=0.050(CATRESLP2R=0.031));2024-03-31T10:29:23.461Z Content-Type: text/plain X-MS-Exchange-Forest-ArrivalHubServer: mbx-essen-02.secunet.de X-MS-Exchange-Organization-AuthSource: cas-essen-01.secunet.de X-MS-Exchange-Organization-AuthAs: Anonymous X-MS-Exchange-Organization-FromEntityHeader: Internet X-MS-Exchange-Organization-OriginalSize: 8075 X-MS-Exchange-Organization-HygienePolicy: Standard X-MS-Exchange-Organization-MessageLatency: SRV=cas-essen-01.secunet.de:TOTAL-FE=0.008|SMR=0.008(SMRPI=0.006(SMRPI-FrontendProxyAgent=0.006)) X-MS-Exchange-Organization-Recipient-Limit-Verified: True X-MS-Exchange-Organization-TotalRecipientCount: 1 X-MS-Exchange-Organization-Rules-Execution-History: 0b0cf904-14ac-4724-8bdf-482ee6223cf2%%%fd34672d-751c-45ae-a963-ed177fcabe23%%%d8080257-b0c3-47b4-b0db-23bc0c8ddb3c%%%95e591a2-5d7d-4afa-b1d0-7573d6c0a5d9%%%f7d0f6bc-4dcc-4876-8c5d-b3d6ddbb3d55%%%16355082-c50b-4214-9c7d-d39575f9f79b X-MS-Exchange-Forest-RulesExecuted: mbx-essen-02 X-MS-Exchange-Organization-RulesExecuted: mbx-essen-02 X-MS-Exchange-Forest-IndexAgent-0: AQ0CZW4AATQFAAAPAAADH4sIAAAAAAAEAI1VW3ObVhA+SAgQNo5rJ2 3SPnT7kki2kG+J44mbTjyOnfH4kkxT55VBcJCZYFC5yPG0/Xv9Xd09 gIUknIZBcDi7++337S7o3+XjKIbD9xfHJ++sww+X5wcfT633x8cf/z g4PH19C595HPKgB/zLKPAdPwU7CCLHTv0ohMgDZ5Rd28lnQx/bsW8P Ag64n6S28xn8BMIohZg70fU1D13uQuKHDgcEcewQf1nCYRSlPEx9O8 ijDD0a89gLopu+oRv6SZik3HZ7BQ1wIpdDchVlgYtEbuzbBAhkraBh IQs4+HDSSbqQRiVVbuiFHcjuY+oo9PyhGfIsjTEz4vQg4PbYD4dVfQ laUz68RSxDv6dEgublVzi4bsyTBEULz4/+MOSuGXmeObh9BW/tG+7D mQ+/urTqB/6b5ApZxFE26jvhb4ZumqahQ8jTDT9zxuLSd+Bv2N6F9b nDLA6M2ALPx244V3Y45FjArT0UnvCYhCWd9W4P9sDlAc+fzS6Rc33P A9McUpc3ZlMOZncM3cemfgH7uT3Y3Xrh2Dt8p99/wXde2nsO5wNnAF ubm7vPnwsR84iGjozrYN+8AfPF9mbvJaznN9zA4Uh9B8aR7wL5WQlP RbWvRx3aRP4Aaxt4vdczm3j+hZQgP8qupeVqH3kVtgKqzqXwwJqK3X 0qX7m3sQZv/US8DDhMZIZBlkJ6xbEncZKKCRxllh//aRWIfcGdhO9u 7/W2d2Cd7js7FemUSeih0CgM/JB3sjAR81TSEF2sDXCjm9AaxXxUF/ Ot9ahMeK2dEGOewmvYnCqI70HnF0FlZKdXVkql6U7M5YGhWRwWsbN8 nGh023laPPXgqYAbZJ7H47KI3f2aMHythUMHfxhW40rsSnd+PUonab rdijbSIL4NVqUMFUbvjj9Yp0e/XxydVcNmtJlHF+/Pj86pZvNlFRL/ V+Fc1LTCGs95gXf6qPOzbcDxPbTDZyl+3j2aMghsnNmTy8NPwENqnU tJ8ok1Z2LvZJ5cfDo426+tA47H/fZhhN9My/Jizq35AftnaqqoPogX +3wsnDsXl2dn3f2ZuZtprYiqvHnUrHtUbH47v0nO5HpkOTgnlpeFDn 1cLfzTGwb8rgPiE9Cp7W5vvhlzh4ijObyxRL9JM37dqwNdpY/nNNtX E03VbTHMNbNTYOGN6prXf2NtjT7phr7d337Z36Q9Q2esyWRFYj8wVW WaxtoSayhiobOFBmuqrI1rXLSYgld0XmCLd2tctJneYqrGDPRUmCqz Fl7xbLKWKrEFpqEbnhJrYojGdFXs4BqTLomk5Mk0TCcSVckYtSBoam AKiRmUBaFkwUduSeyRIIaUGmwBTUgGT0lCH9aQQGIM1cmE2aYd1tSl B/lmmy3LAg3Xk0AMmnqkIiyypUXJUBhT2OK0VZ16lBSZIVyL8KXGZC 3qQz4SeyCEIw2ZLdVtriJim2kIq7IVdKg+ioKsqmVl8rPoC4HQoyot 53mF/OZkzRTRIDlPRwNAHWwLkPadaUWYcjmldaXKQaUWaHnRCkqSIj QuNUotGNtijxVJzffxtsg0mSkq09FhVVRDFUq/YxryF1nQutog/oTf Eg4I2CIfpRyYNsrUifmPOK4Ke1git76K3JpGRjQQVy2XKcCfCMAnTR rjJ1ixpXxm2M8yQRWlkNlyQwxnzhBNy6JcKvupFPuwEvsI2T4WxdRE hauBJdWeTG9ES1DF6uWVNAo0SSuhVvJceetRDvVL+j4fs7zRtP4PHj FOqCAMAAABCvEBPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0i dXRmLTE2Ij8+DQo8RW1haWxTZXQ+DQogIDxWZXJzaW9uPjE1LjAuMC 4wPC9WZXJzaW9uPg0KICA8RW1haWxzPg0KICAgIDxFbWFpbCBTdGFy dEluZGV4PSIzOTAiIFBvc2l0aW9uPSJTaWduYXR1cmUiPg0KICAgIC AgPEVtYWlsU3RyaW5nPmRhd2VpLmxpQHNoaW5ncm91cC5jbjwvRW1h aWxTdHJpbmc+DQogICAgPC9FbWFpbD4NCiAgPC9FbWFpbHM+DQo8L0 VtYWlsU2V0PgEMqgQ8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5n PSJ1dGYtMTYiPz4NCjxDb250YWN0U2V0Pg0KICA8VmVyc2lvbj4xNS 4wLjAuMDwvVmVyc2lvbj4NCiAgPENvbnRhY3RzPg0KICAgIDxDb250 YWN0IFN0YXJ0SW5kZXg9IjM4MCIgUG9zaXRpb249IlNpZ25hdHVyZS I+DQogICAgICA8UGVyc29uIFN0YXJ0SW5kZXg9IjM4MCIgUG9zaXRp b249IlNpZ25hdHVyZSI+DQogICAgICAgIDxQZXJzb25TdHJpbmc+RG F3ZWkgTGk8L1BlcnNvblN0cmluZz4NCiAgICAgIDwvUGVyc29uPg0K ICAgICAgPEVtYWlscz4NCiAgICAgICAgPEVtYWlsIFN0YXJ0SW5kZX g9IjM5MCIgUG9zaXRpb249IlNpZ25hdHVyZSI+DQogICAgICAgICAg PEVtYWlsU3RyaW5nPmRhd2VpLmxpQHNoaW5ncm91cC5jbjwvRW1haW xTdHJpbmc+DQogICAgICAgIDwvRW1haWw+DQogICAgICA8L0VtYWls cz4NCiAgICAgIDxDb250YWN0U3RyaW5nPkRhd2VpIExpICZsdDtkYX dlaS5saUBzaGluZ3JvdXAuY248L0NvbnRhY3RTdHJpbmc+DQogICAg PC9Db250YWN0Pg0KICA8L0NvbnRhY3RzPg0KPC9Db250YWN0U2V0Pg EOzwFSZXRyaWV2ZXJPcGVyYXRvciwxMCwyO1JldHJpZXZlck9wZXJh dG9yLDExLDE7UG9zdERvY1BhcnNlck9wZXJhdG9yLDEwLDA7UG9zdE RvY1BhcnNlck9wZXJhdG9yLDExLDA7UG9zdFdvcmRCcmVha2VyRGlh Z25vc3RpY09wZXJhdG9yLDEwLDE7UG9zdFdvcmRCcmVha2VyRGlhZ2 5vc3RpY09wZXJhdG9yLDExLDA7VHJhbnNwb3J0V3JpdGVyUHJvZHVj ZXIsMjAsMTc= X-MS-Exchange-Forest-IndexAgent: 1 2357 X-MS-Exchange-Forest-EmailMessageHash: 31D07584 X-MS-Exchange-Forest-Language: en X-MS-Exchange-Organization-Processed-By-Journaling: Journal Agent X-MS-Exchange-Organization-Transport-Properties: DeliveryPriority=Low X-MS-Exchange-Organization-Prioritization: 2:RC:REDACTED-af51df60fd698f80b064826f9ee192ca@secunet.com:42/10|SR X-MS-Exchange-Organization-IncludeInSla: False:RecipientCountThresholdExceeded For CONFIG_CPUMASK_OFFSTACK=y kernel, explicit allocation of cpumask variable on stack is not recommended since it can cause potential stack overflow. Instead, kernel code should always use *cpumask_var API(s) to allocate cpumask var in config-neutral way, leaving allocation strategy to CONFIG_CPUMASK_OFFSTACK. Use *cpumask_var API(s) to address it. Signed-off-by: Dawei Li <dawei.li@shingroup.cn> --- net/iucv/iucv.c | 26 ++++++++++++++++++-------- 1 file changed, 18 insertions(+), 8 deletions(-) diff --git a/net/iucv/iucv.c b/net/iucv/iucv.c index a4ab615ca3e3..5e37a8ceebcb 100644 --- a/net/iucv/iucv.c +++ b/net/iucv/iucv.c @@ -520,7 +520,7 @@ static void iucv_setmask_mp(void) */ static void iucv_setmask_up(void) { - cpumask_t cpumask; + static cpumask_t cpumask; int cpu; /* Disable all cpu but the first in cpu_irq_cpumask. */ @@ -628,23 +628,33 @@ static int iucv_cpu_online(unsigned int cpu) static int iucv_cpu_down_prep(unsigned int cpu) { - cpumask_t cpumask; + cpumask_var_t cpumask; + int ret = 0; if (!iucv_path_table) return 0; - cpumask_copy(&cpumask, &iucv_buffer_cpumask); - cpumask_clear_cpu(cpu, &cpumask); - if (cpumask_empty(&cpumask)) + if (!alloc_cpumask_var(&cpumask, GFP_KERNEL)) + return -ENOMEM; + + cpumask_copy(cpumask, &iucv_buffer_cpumask); + cpumask_clear_cpu(cpu, cpumask); + if (cpumask_empty(cpumask)) { /* Can't offline last IUCV enabled cpu. */ - return -EINVAL; + ret = -EINVAL; + goto __free_cpumask; + } iucv_retrieve_cpu(NULL); if (!cpumask_empty(&iucv_irq_cpumask)) - return 0; + goto __free_cpumask; + smp_call_function_single(cpumask_first(&iucv_buffer_cpumask), iucv_allow_cpu, NULL, 1); - return 0; + +__free_cpumask: + free_cpumask_var(cpumask); + return ret; } /** -- 2.27.0 ^ permalink raw reply related [flat|nested] 8+ messages in thread
* Re: [PATCH net-next v2 1/2] net/iucv: Avoid explicit cpumask var allocation on stack 2024-03-31 5:34 ` [PATCH net-next v2 1/2] net/iucv: " Dawei Li 2024-03-31 5:34 ` Dawei Li @ 2024-04-02 12:41 ` Alexandra Winter 1 sibling, 0 replies; 8+ messages in thread From: Alexandra Winter @ 2024-04-02 12:41 UTC (permalink / raw) To: Dawei Li, davem, edumazet, kuba, pabeni, ioana.ciornei, twinkler Cc: netdev, linux-kernel, linux-s390 On 31.03.24 07:34, Dawei Li wrote: > For CONFIG_CPUMASK_OFFSTACK=y kernel, explicit allocation of cpumask > variable on stack is not recommended since it can cause potential stack > overflow. > > Instead, kernel code should always use *cpumask_var API(s) to allocate > cpumask var in config-neutral way, leaving allocation strategy to > CONFIG_CPUMASK_OFFSTACK. > > Use *cpumask_var API(s) to address it. > > Signed-off-by: Dawei Li <dawei.li@shingroup.cn> > --- LGTM; Thank you Eric for the comment and solution with the 'static' keyword. Reviewed-by: Alexandra Winter <wintera@linux.ibm.com> ^ permalink raw reply [flat|nested] 8+ messages in thread
* [PATCH net-next v2 2/2] net/dpaa2: Avoid explicit cpumask var allocation on stack 2024-03-31 5:34 [PATCH net-next v2 0/2] Avoid explicit cpumask var allocation on stack Dawei Li 2024-03-31 5:34 ` Dawei Li 2024-03-31 5:34 ` [PATCH net-next v2 1/2] net/iucv: " Dawei Li @ 2024-03-31 5:34 ` Dawei Li 2024-03-31 5:34 ` Dawei Li 2024-04-03 1:40 ` [PATCH net-next v2 0/2] " patchwork-bot+netdevbpf 3 siblings, 1 reply; 8+ messages in thread From: Dawei Li @ 2024-03-31 5:34 UTC (permalink / raw) To: davem, edumazet, kuba, pabeni, ioana.ciornei, wintera, twinkler Cc: netdev, linux-kernel, linux-s390, Dawei Li For CONFIG_CPUMASK_OFFSTACK=y kernel, explicit allocation of cpumask variable on stack is not recommended since it can cause potential stack overflow. Instead, kernel code should always use *cpumask_var API(s) to allocate cpumask var in config-neutral way, leaving allocation strategy to CONFIG_CPUMASK_OFFSTACK. Use *cpumask_var API(s) to address it. Signed-off-by: Dawei Li <dawei.li@shingroup.cn> --- drivers/net/ethernet/freescale/dpaa2/dpaa2-eth.c | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/drivers/net/ethernet/freescale/dpaa2/dpaa2-eth.c b/drivers/net/ethernet/freescale/dpaa2/dpaa2-eth.c index 888509cf1f21..40e881829595 100644 --- a/drivers/net/ethernet/freescale/dpaa2/dpaa2-eth.c +++ b/drivers/net/ethernet/freescale/dpaa2/dpaa2-eth.c @@ -2896,11 +2896,14 @@ static int dpaa2_eth_xdp_xmit(struct net_device *net_dev, int n, static int update_xps(struct dpaa2_eth_priv *priv) { struct net_device *net_dev = priv->net_dev; - struct cpumask xps_mask; - struct dpaa2_eth_fq *fq; int i, num_queues, netdev_queues; + struct dpaa2_eth_fq *fq; + cpumask_var_t xps_mask; int err = 0; + if (!alloc_cpumask_var(&xps_mask, GFP_KERNEL)) + return -ENOMEM; + num_queues = dpaa2_eth_queue_count(priv); netdev_queues = (net_dev->num_tc ? : 1) * num_queues; @@ -2910,16 +2913,17 @@ static int update_xps(struct dpaa2_eth_priv *priv) for (i = 0; i < netdev_queues; i++) { fq = &priv->fq[i % num_queues]; - cpumask_clear(&xps_mask); - cpumask_set_cpu(fq->target_cpu, &xps_mask); + cpumask_clear(xps_mask); + cpumask_set_cpu(fq->target_cpu, xps_mask); - err = netif_set_xps_queue(net_dev, &xps_mask, i); + err = netif_set_xps_queue(net_dev, xps_mask, i); if (err) { netdev_warn_once(net_dev, "Error setting XPS queue\n"); break; } } + free_cpumask_var(xps_mask); return err; } -- 2.27.0 ^ permalink raw reply related [flat|nested] 8+ messages in thread
* [PATCH net-next v2 2/2] net/dpaa2: Avoid explicit cpumask var allocation on stack 2024-03-31 5:34 ` [PATCH net-next v2 2/2] net/dpaa2: " Dawei Li @ 2024-03-31 5:34 ` Dawei Li 0 siblings, 0 replies; 8+ messages in thread From: Dawei Li @ 2024-03-31 5:34 UTC (permalink / raw) To: davem, edumazet, kuba, pabeni, ioana.ciornei, wintera, twinkler Cc: netdev, linux-kernel, linux-s390, Dawei Li For CONFIG_CPUMASK_OFFSTACK=y kernel, explicit allocation of cpumask variable on stack is not recommended since it can cause potential stack overflow. Instead, kernel code should always use *cpumask_var API(s) to allocate cpumask var in config-neutral way, leaving allocation strategy to CONFIG_CPUMASK_OFFSTACK. Use *cpumask_var API(s) to address it. Signed-off-by: Dawei Li <dawei.li@shingroup.cn> --- drivers/net/ethernet/freescale/dpaa2/dpaa2-eth.c | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/drivers/net/ethernet/freescale/dpaa2/dpaa2-eth.c b/drivers/net/ethernet/freescale/dpaa2/dpaa2-eth.c index 888509cf1f21..40e881829595 100644 --- a/drivers/net/ethernet/freescale/dpaa2/dpaa2-eth.c +++ b/drivers/net/ethernet/freescale/dpaa2/dpaa2-eth.c @@ -2896,11 +2896,14 @@ static int dpaa2_eth_xdp_xmit(struct net_device *net_dev, int n, static int update_xps(struct dpaa2_eth_priv *priv) { struct net_device *net_dev = priv->net_dev; - struct cpumask xps_mask; - struct dpaa2_eth_fq *fq; int i, num_queues, netdev_queues; + struct dpaa2_eth_fq *fq; + cpumask_var_t xps_mask; int err = 0; + if (!alloc_cpumask_var(&xps_mask, GFP_KERNEL)) + return -ENOMEM; + num_queues = dpaa2_eth_queue_count(priv); netdev_queues = (net_dev->num_tc ? : 1) * num_queues; @@ -2910,16 +2913,17 @@ static int update_xps(struct dpaa2_eth_priv *priv) for (i = 0; i < netdev_queues; i++) { fq = &priv->fq[i % num_queues]; - cpumask_clear(&xps_mask); - cpumask_set_cpu(fq->target_cpu, &xps_mask); + cpumask_clear(xps_mask); + cpumask_set_cpu(fq->target_cpu, xps_mask); - err = netif_set_xps_queue(net_dev, &xps_mask, i); + err = netif_set_xps_queue(net_dev, xps_mask, i); if (err) { netdev_warn_once(net_dev, "Error setting XPS queue\n"); break; } } + free_cpumask_var(xps_mask); return err; } -- 2.27.0 X-sender: <linux-kernel+bounces-125961-steffen.klassert=secunet.com@vger.kernel.org> X-Receiver: <steffen.klassert@secunet.com> ORCPT=rfc822;steffen.klassert@secunet.com NOTIFY=NEVER; X-ExtendedProps=BQAVABYAAgAAAAUAFAARAPDFCS25BAlDktII2g02frgPADUAAABNaWNyb3NvZnQuRXhjaGFuZ2UuVHJhbnNwb3J0LkRpcmVjdG9yeURhdGEuSXNSZXNvdXJjZQIAAAUAagAJAAEAAAAAAAAABQAWAAIAAAUAQwACAAAFAEYABwADAAAABQBHAAIAAAUAEgAPAGIAAAAvbz1zZWN1bmV0L291PUV4Y2hhbmdlIEFkbWluaXN0cmF0aXZlIEdyb3VwIChGWURJQk9IRjIzU1BETFQpL2NuPVJlY2lwaWVudHMvY249U3RlZmZlbiBLbGFzc2VydDY4YwUACwAXAL4AAACheZxkHSGBRqAcAp3ukbifQ049REI2LENOPURhdGFiYXNlcyxDTj1FeGNoYW5nZSBBZG1pbmlzdHJhdGl2ZSBHcm91cCAoRllESUJPSEYyM1NQRExUKSxDTj1BZG1pbmlzdHJhdGl2ZSBHcm91cHMsQ049c2VjdW5ldCxDTj1NaWNyb3NvZnQgRXhjaGFuZ2UsQ049U2VydmljZXMsQ049Q29uZmlndXJhdGlvbixEQz1zZWN1bmV0LERDPWRlBQAOABEABiAS9uuMOkqzwmEZDvWNNQUAHQAPAAwAAABtYngtZXNzZW4tMDIFADwAAgAADwA2AAAATWljcm9zb2Z0LkV4Y2hhbmdlLlRyYW5zcG9ydC5NYWlsUmVjaXBpZW50LkRpc3BsYXlOYW1lDwARAAAAS2xhc3NlcnQsIFN0ZWZmZW4FAAwAAgAABQBsAAIAAAUAWAAXAEoAAADwxQktuQQJQ5LSCNoNNn64Q049S2xhc3NlcnQgU3RlZmZlbixPVT1Vc2VycyxPVT1NaWdyYXRpb24sREM9c2VjdW5ldCxEQz1kZQUAJgACAAEFACIADwAxAAAAQXV0b1Jlc3BvbnNlU3VwcHJlc3M6IDANClRyYW5zbWl0SGlzdG9yeTogRmFsc2UNCg8ALwAAAE1pY3Jvc29mdC5FeGNoYW5nZS5UcmFuc3BvcnQuRXhwYW5zaW9uR3JvdXBUeXBlDwAVAAAATWVtYmVyc0dyb3VwRXhwYW5zaW9uBQAjAAIAAQ== X-CreatedBy: MSExchange15 X-HeloDomain: a.mx.secunet.com X-ExtendedProps: BQBjAAoAknAFfe5Q3AgFAGEACAABAAAABQA3AAIAAA8APAAAAE1pY3Jvc29mdC5FeGNoYW5nZS5UcmFuc3BvcnQuTWFpbFJlY2lwaWVudC5Pcmdhbml6YXRpb25TY29wZREAAAAAAAAAAAAAAAAAAAAAAAUASQACAAEFAAQAFCABAAAAHAAAAHN0ZWZmZW4ua2xhc3NlcnRAc2VjdW5ldC5jb20FAAYAAgABBQApAAIAAQ8ACQAAAENJQXVkaXRlZAIAAQUAAgAHAAEAAAAFAAMABwAAAAAABQAFAAIAAQUAYgAKAGoAAADsigAABQBkAA8AAwAAAEh1Yg== X-Source: SMTP:Default MBX-ESSEN-02 X-SourceIPAddress: 62.96.220.36 X-EndOfInjectedXHeaders: 13049 Received: from cas-essen-01.secunet.de (10.53.40.201) by mbx-essen-02.secunet.de (10.53.40.198) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.37; Sun, 31 Mar 2024 07:37:52 +0200 Received: from a.mx.secunet.com (62.96.220.36) by cas-essen-01.secunet.de (10.53.40.201) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.37 via Frontend Transport; Sun, 31 Mar 2024 07:37:52 +0200 Received: from localhost (localhost [127.0.0.1]) by a.mx.secunet.com (Postfix) with ESMTP id 9EF252087C for <steffen.klassert@secunet.com>; Sun, 31 Mar 2024 07:37:52 +0200 (CEST) X-Virus-Scanned: by secunet X-Spam-Flag: NO X-Spam-Score: -4.951 X-Spam-Level: X-Spam-Status: No, score=-4.951 tagged_above=-999 required=2.1 tests=[BAYES_00=-1.9, HEADER_FROM_DIFFERENT_DOMAINS=0.249, MAILING_LIST_MULTI=-1, RCVD_IN_DNSWL_MED=-2.3, SPF_HELO_NONE=0.001, SPF_PASS=-0.001] autolearn=unavailable autolearn_force=no Received: from a.mx.secunet.com ([127.0.0.1]) by localhost (a.mx.secunet.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id XU5B4TiqmHGx for <steffen.klassert@secunet.com>; Sun, 31 Mar 2024 07:37:50 +0200 (CEST) Received-SPF: Pass (sender SPF authorized) identity=mailfrom; client-ip=139.178.88.99; helo=sv.mirrors.kernel.org; envelope-from=linux-kernel+bounces-125961-steffen.klassert=secunet.com@vger.kernel.org; receiver=steffen.klassert@secunet.com DKIM-Filter: OpenDKIM Filter v2.11.0 a.mx.secunet.com 114E82083E Received: from sv.mirrors.kernel.org (sv.mirrors.kernel.org [139.178.88.99]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by a.mx.secunet.com (Postfix) with ESMTPS id 114E82083E for <steffen.klassert@secunet.com>; Sun, 31 Mar 2024 07:37:50 +0200 (CEST) Received: from smtp.subspace.kernel.org (wormhole.subspace.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by sv.mirrors.kernel.org (Postfix) with ESMTPS id E6D9028246A for <steffen.klassert@secunet.com>; Sun, 31 Mar 2024 05:37:47 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id 2BB598F45; Sun, 31 Mar 2024 05:37:26 +0000 (UTC) Received: from bg1.exmail.qq.com (bg1.exmail.qq.com [114.132.62.65]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 63CAD6FB2; Sun, 31 Mar 2024 05:37:20 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=114.132.62.65 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711863444; cv=none; b=Dlu1TmEw7MS4RDkvkBakHqa39dMnDH6OfEjY3vaS0C11tlYX5NsJQ4wSReiOUk+CH3B/qKshuWtWcYRrn7MYtYvr2ylYL7UbxFcm/Hb7M++625PyNnDiEQeApsSXTpibI6B9ZWt4wiwJWEP+/lQzvXiAKPwnA4naQ8p14Nl78zQ= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711863444; c=relaxed/simple; bh=nxx+6xNwnVOmWpIQMEjVW/rRZuWaUlN8c6YVrXlsBh0=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=WpMP9f9Z3rsFywTSaApOr1Flcq6aAevdG27Ak/yXjXx01cXvhi1OBwPwA096rdqKKp6/HB2SuFNGSQ1iPW0diO7rNZb5Y3r7MtXYLOrImSlrCPXnURips5is7H4yqvXXgOLWE22ORGkeTKqZrA6LeJJF723McJ1SLfyDmuq4R6Q= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=shingroup.cn; spf=pass smtp.mailfrom=shingroup.cn; arc=none smtp.client-ip=114.132.62.65 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=shingroup.cn Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=shingroup.cn X-QQ-mid: bizesmtp87t1711863362tp4jo7vv X-QQ-Originating-IP: 1n8l4ALh9WiJP6dd4Vqjjg2n3vV6oK56OsALArkr0dA= Received: from localhost ( [112.0.147.175]) by bizesmtp.qq.com (ESMTP) with id ; Sun, 31 Mar 2024 13:36:01 +0800 (CST) X-QQ-SSF: 01400000000000704000000A0000000 X-QQ-FEAT: 3M0okmaRx3hJk2d/iE1l8M7/xX9AiPOvpZgXK4zA8yArofRwWfr63wL+fu12a kkxymzrJlfg8UhRnrd7HjT/aqE+NFAdWiu2IJnOjhT4iePMDukh+e6VxPFUPNt50TQOoRI6 F69k3j/xMD7wn3BI6rejwFuTbfM7SEbgo5C408pa7je2hQTakW3frIH1RwMQYfaMa1jNpp4 hDIykph0ygNn2KwTHbTBExTuLaYnDAICkXMU+S6vk478oqWqxnmAhpiobE6+Y02/KKP01dk EEc23nBmmqHpNQX1P2BvH16FmD4x/yg6aTlkrS4s6yNwXDJojARS9eEbfV8esu+W/KmU6Zi 6yOKikBXQ8gIE1ZW85c8SK9lZ2fh6cmXUbAEws85gxFuevlxQCTE1ECh//5QdJpGEILYwKC y5stMRazGpc= X-QQ-GoodBg: 2 X-BIZMAIL-ID: 3312073214826077322 From: Dawei Li <dawei.li@shingroup.cn> To: <davem@davemloft.net>, <edumazet@google.com>, <kuba@kernel.org>, <pabeni@redhat.com>, <ioana.ciornei@nxp.com>, <wintera@linux.ibm.com>, <twinkler@linux.ibm.com> CC: <netdev@vger.kernel.org>, <linux-kernel@vger.kernel.org>, <linux-s390@vger.kernel.org>, Dawei Li <dawei.li@shingroup.cn> Subject: [PATCH net-next v2 2/2] net/dpaa2: Avoid explicit cpumask var allocation on stack Date: Sun, 31 Mar 2024 13:34:41 +0800 Message-ID: <20240331053441.1276826-3-dawei.li@shingroup.cn> X-Mailer: git-send-email 2.27.0 In-Reply-To: <20240331053441.1276826-1-dawei.li@shingroup.cn> References: <20240331053441.1276826-1-dawei.li@shingroup.cn> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: <linux-kernel.vger.kernel.org> List-Subscribe: <mailto:linux-kernel+subscribe@vger.kernel.org> List-Unsubscribe: <mailto:linux-kernel+unsubscribe@vger.kernel.org> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-QQ-SENDSIZE: 520 Feedback-ID: bizesmtp:shingroup.cn:qybglogicsvrgz:qybglogicsvrgz5a-1 Return-Path: linux-kernel+bounces-125961-steffen.klassert=secunet.com@vger.kernel.org X-MS-Exchange-Organization-OriginalArrivalTime: 31 Mar 2024 05:37:52.6959 (UTC) X-MS-Exchange-Organization-Network-Message-Id: 431ca728-9f98-41df-7672-08dc5144b5a6 X-MS-Exchange-Organization-OriginalClientIPAddress: 62.96.220.36 X-MS-Exchange-Organization-OriginalServerIPAddress: 10.53.40.201 X-MS-Exchange-Organization-Cross-Premises-Headers-Processed: cas-essen-01.secunet.de X-MS-Exchange-Organization-OrderedPrecisionLatencyInProgress: LSRV=mbx-essen-02.secunet.de:TOTAL-HUB=0.385|SMR=0.327(SMRDE=0.005|SMRC=0.321(SMRCL=0.103|X-SMRCR=0.320))|CAT=0.057(CATOS=0.001 |CATRESL=0.009(CATRESLP2R=0.003)|CATORES=0.045(CATRS=0.045(CATRS-Transport Rule Agent=0.001 (X-ETREX=0.001)|CATRS-Index Routing Agent=0.042)));2024-03-31T05:37:53.080Z Content-Type: text/plain X-MS-Exchange-Forest-ArrivalHubServer: mbx-essen-02.secunet.de X-MS-Exchange-Organization-AuthSource: cas-essen-01.secunet.de X-MS-Exchange-Organization-AuthAs: Anonymous X-MS-Exchange-Organization-FromEntityHeader: Internet X-MS-Exchange-Organization-OriginalSize: 8167 X-MS-Exchange-Organization-HygienePolicy: Standard X-MS-Exchange-Organization-MessageLatency: SRV=cas-essen-01.secunet.de:TOTAL-FE=0.006|SMR=0.006(SMRPI=0.004(SMRPI-FrontendProxyAgent=0.004)) X-MS-Exchange-Organization-Recipient-Limit-Verified: True X-MS-Exchange-Organization-TotalRecipientCount: 1 X-MS-Exchange-Organization-Rules-Execution-History: 0b0cf904-14ac-4724-8bdf-482ee6223cf2%%%fd34672d-751c-45ae-a963-ed177fcabe23%%%d8080257-b0c3-47b4-b0db-23bc0c8ddb3c%%%95e591a2-5d7d-4afa-b1d0-7573d6c0a5d9%%%f7d0f6bc-4dcc-4876-8c5d-b3d6ddbb3d55%%%16355082-c50b-4214-9c7d-d39575f9f79b X-MS-Exchange-Forest-RulesExecuted: mbx-essen-02 X-MS-Exchange-Organization-RulesExecuted: mbx-essen-02 X-MS-Exchange-Forest-IndexAgent-0: AQ0CZW4AAUgFAAAPAAADH4sIAAAAAAAEAJ1VjU/bRhQ/O7GTGEzp2m pVNU1vlVYlYIeYQZuUlVF1UKF+obFKk7bJMvY5nAh2sB0+tPUv2D+9 d3d2bCihH5ZjPd+993u/93vvnP9u78QJvHj3dmf3pfti7/2b5/uv3H c7O/u/P3/x6tkFHNEkoiML6Pl4xHyWgTcaxb6XsTiCOAR/PDn20iPT OPUS5h2MKOB6mnn+EbAUojiDhPrx8TGNAhpAyiKfAoL4XoS/SUphHG c0ypg3klGmEZ/SJBzFZ13TMI3dKM2oF1g5DfDjgEJ6GE9GARI58y5S 4CBLOQ0XWcDzvd122oEsLqhS08j3ge8zTB1HIRvaEZ1kCWZGHAtG1D tl0bBaX4q7GR1eIJZpzJBI0Hx/A4cgSGiaYtHCc58NIxrYcRjaBxdP 4VfvjDJ4zeDngFvdEdtKD5FFEk/GXT/aNA3btk0DgoShLOlKRLMVmh 1yMbKVMKE09b0RXQnGnrcqnzZud334F5w1WC4u25YwDoQMW+QfetGQ oqoDFCOlCS82bS93LFiHgI6ofLc7nHDAwhBse8g7v/LFNA6+OMQ0GI 7KOfT7/fXewA+dcNXpdtd6tN93+quD9cE6OL3e47U1Ic1XcDINFOSr iG1tgb3aHzy2HAeWpbEGuIiDmzEfpcxA+Lvo754HY/f8mGVtHKKJnw GiuwE9ZTj/S7ltiZDIwsZUICbjAIfOPR+nRWgJOkbOsMSf2Bv4B3/5 NTsJPAPub2/m7xuo2+Wg4mxgRpcbH3uUBMITWApPNsrEnDGzIJocuy cTOqGpxUlgnvwVXZc/CVZ4VE6Qm1X5VLPRJMGaeht8OItAFkL7B3Fw 3QpG+1EBYcHLnT331fZvb7dfdzplXHElNJskEdjbb9+92X7DGZU5y9 IwbUleLLl+PImytmhIheYlBTCqnWuPTUCwzIdf4Ck4HViqgIt6xIQN nJ7lPMYJGzg/Wc6TKxP2+eORXyF+3ttMSAb4nbnSHmDLy53qJE3DTj DkkRyd8ORPBj9WyP4t2NpXQgrpffyUVsTvbMx2TVEYtNvhib2ZeclQ vlpwKfhqty7n+RzPWWmqsR+TlJOGerFQIHBvUX97eoArE8auI/AZEF cQrvaBjzaiXNuj4spbeuYlkRvjP2wJ/nA7SbD/mDrj/21/7O2DSP9X 9PC6ZMV1kFDv6Jr9D+XSh+r545/NSyevKmwRkR8yLIYvinj+p7TaXX 3S7fE30yCkRuq6Qr4ljQZpNklLIaouDIPMqaTWIC200dCIjk90niPz UxuNFjE00mgSEz110qgTDZ9414jWUMgcaaIb3gqpYUiTGA2xgjYmXR BJuSdpYjqRqErGvBYEt1RMoRCTZ0GouuBT1xRyTxBDSiqZk4kQUzDU cbdFdA6iYAhRlbsKIVhsnadoSdtQbkmjRRbrAhztmTiIcdMuV2yeLM wrpk6ITuZvdG7ctKvoGiGaogvatdImutCZF/6N8MRb6l9TiIFKIiBC 83VNZNGkv853hUEaGu+CLgL1OrlzXSyu64W9oMuWKaTJQ25JhHmBoP LblLVPQWSbdHL7Y88G32pKJaeAvApFF11YUImGIbeJLoek8NEL8Acc n9wtXltyAORYapz2YpHdKHVQsBd1VWmIFFoeqyzcrPBsxZCwhhMl0B CsXmRsKuS+KqRTxXpB8jtZtSZ0FuXcx5VbxYSrZS696iBC9E+FTCV6 UBPzc6eYCq3s4BQEg+7NdtOqbipfAbQWxQGvi12JpuXd4bEK+V4jvT p30+RiAbIo5mqRq6SoUmRu/w9rgi99Cg0AAAEK8QE8P3htbCB2ZXJz aW9uPSIxLjAiIGVuY29kaW5nPSJ1dGYtMTYiPz4NCjxFbWFpbFNldD 4NCiAgPFZlcnNpb24+MTUuMC4wLjA8L1ZlcnNpb24+DQogIDxFbWFp bHM+DQogICAgPEVtYWlsIFN0YXJ0SW5kZXg9IjM5MCIgUG9zaXRpb2 49IlNpZ25hdHVyZSI+DQogICAgICA8RW1haWxTdHJpbmc+ZGF3ZWku bGlAc2hpbmdyb3VwLmNuPC9FbWFpbFN0cmluZz4NCiAgICA8L0VtYW lsPg0KICA8L0VtYWlscz4NCjwvRW1haWxTZXQ+AQyqBDw/eG1sIHZl cnNpb249IjEuMCIgZW5jb2Rpbmc9InV0Zi0xNiI/Pg0KPENvbnRhY3 RTZXQ+DQogIDxWZXJzaW9uPjE1LjAuMC4wPC9WZXJzaW9uPg0KICA8 Q29udGFjdHM+DQogICAgPENvbnRhY3QgU3RhcnRJbmRleD0iMzgwIi BQb3NpdGlvbj0iU2lnbmF0dXJlIj4NCiAgICAgIDxQZXJzb24gU3Rh cnRJbmRleD0iMzgwIiBQb3NpdGlvbj0iU2lnbmF0dXJlIj4NCiAgIC AgICAgPFBlcnNvblN0cmluZz5EYXdlaSBMaTwvUGVyc29uU3RyaW5n Pg0KICAgICAgPC9QZXJzb24+DQogICAgICA8RW1haWxzPg0KICAgIC AgICA8RW1haWwgU3RhcnRJbmRleD0iMzkwIiBQb3NpdGlvbj0iU2ln bmF0dXJlIj4NCiAgICAgICAgICA8RW1haWxTdHJpbmc+ZGF3ZWkubG lAc2hpbmdyb3VwLmNuPC9FbWFpbFN0cmluZz4NCiAgICAgICAgPC9F bWFpbD4NCiAgICAgIDwvRW1haWxzPg0KICAgICAgPENvbnRhY3RTdH Jpbmc+RGF3ZWkgTGkgJmx0O2Rhd2VpLmxpQHNoaW5ncm91cC5jbjwv Q29udGFjdFN0cmluZz4NCiAgICA8L0NvbnRhY3Q+DQogIDwvQ29udG FjdHM+DQo8L0NvbnRhY3RTZXQ+AQ7PAVJldHJpZXZlck9wZXJhdG9y LDEwLDA7UmV0cmlldmVyT3BlcmF0b3IsMTEsMjtQb3N0RG9jUGFyc2 VyT3BlcmF0b3IsMTAsMTtQb3N0RG9jUGFyc2VyT3BlcmF0b3IsMTEs MDtQb3N0V29yZEJyZWFrZXJEaWFnbm9zdGljT3BlcmF0b3IsMTAsMz tQb3N0V29yZEJyZWFrZXJEaWFnbm9zdGljT3BlcmF0b3IsMTEsMDtU cmFuc3BvcnRXcml0ZXJQcm9kdWNlciwyMCwyMQ== X-MS-Exchange-Forest-IndexAgent: 1 2377 X-MS-Exchange-Forest-EmailMessageHash: 7A646CF9 X-MS-Exchange-Forest-Language: en X-MS-Exchange-Organization-Processed-By-Journaling: Journal Agent For CONFIG_CPUMASK_OFFSTACK=y kernel, explicit allocation of cpumask variable on stack is not recommended since it can cause potential stack overflow. Instead, kernel code should always use *cpumask_var API(s) to allocate cpumask var in config-neutral way, leaving allocation strategy to CONFIG_CPUMASK_OFFSTACK. Use *cpumask_var API(s) to address it. Signed-off-by: Dawei Li <dawei.li@shingroup.cn> --- drivers/net/ethernet/freescale/dpaa2/dpaa2-eth.c | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/drivers/net/ethernet/freescale/dpaa2/dpaa2-eth.c b/drivers/net/ethernet/freescale/dpaa2/dpaa2-eth.c index 888509cf1f21..40e881829595 100644 --- a/drivers/net/ethernet/freescale/dpaa2/dpaa2-eth.c +++ b/drivers/net/ethernet/freescale/dpaa2/dpaa2-eth.c @@ -2896,11 +2896,14 @@ static int dpaa2_eth_xdp_xmit(struct net_device *net_dev, int n, static int update_xps(struct dpaa2_eth_priv *priv) { struct net_device *net_dev = priv->net_dev; - struct cpumask xps_mask; - struct dpaa2_eth_fq *fq; int i, num_queues, netdev_queues; + struct dpaa2_eth_fq *fq; + cpumask_var_t xps_mask; int err = 0; + if (!alloc_cpumask_var(&xps_mask, GFP_KERNEL)) + return -ENOMEM; + num_queues = dpaa2_eth_queue_count(priv); netdev_queues = (net_dev->num_tc ? : 1) * num_queues; @@ -2910,16 +2913,17 @@ static int update_xps(struct dpaa2_eth_priv *priv) for (i = 0; i < netdev_queues; i++) { fq = &priv->fq[i % num_queues]; - cpumask_clear(&xps_mask); - cpumask_set_cpu(fq->target_cpu, &xps_mask); + cpumask_clear(xps_mask); + cpumask_set_cpu(fq->target_cpu, xps_mask); - err = netif_set_xps_queue(net_dev, &xps_mask, i); + err = netif_set_xps_queue(net_dev, xps_mask, i); if (err) { netdev_warn_once(net_dev, "Error setting XPS queue\n"); break; } } + free_cpumask_var(xps_mask); return err; } -- 2.27.0 X-sender: <netdev+bounces-83540-steffen.klassert=secunet.com@vger.kernel.org> X-Receiver: <steffen.klassert@secunet.com> ORCPT=rfc822;steffen.klassert@secunet.com; X-ExtendedProps=DwA1AAAATWljcm9zb2Z0LkV4Y2hhbmdlLlRyYW5zcG9ydC5EaXJlY3RvcnlEYXRhLklzUmVzb3VyY2UCAAAFABUAFgACAAAABQAUABEA8MUJLbkECUOS0gjaDTZ+uAUAagAJAAEAAAAAAAAABQAWAAIAAAUAQwACAAAFAEYABwADAAAABQBHAAIAAAUAEgAPAGIAAAAvbz1zZWN1bmV0L291PUV4Y2hhbmdlIEFkbWluaXN0cmF0aXZlIEdyb3VwIChGWURJQk9IRjIzU1BETFQpL2NuPVJlY2lwaWVudHMvY249U3RlZmZlbiBLbGFzc2VydDY4YwUACwAXAL4AAACheZxkHSGBRqAcAp3ukbifQ049REI2LENOPURhdGFiYXNlcyxDTj1FeGNoYW5nZSBBZG1pbmlzdHJhdGl2ZSBHcm91cCAoRllESUJPSEYyM1NQRExUKSxDTj1BZG1pbmlzdHJhdGl2ZSBHcm91cHMsQ049c2VjdW5ldCxDTj1NaWNyb3NvZnQgRXhjaGFuZ2UsQ049U2VydmljZXMsQ049Q29uZmlndXJhdGlvbixEQz1zZWN1bmV0LERDPWRlBQAOABEABiAS9uuMOkqzwmEZDvWNNQUAHQAPAAwAAABtYngtZXNzZW4tMDIFADwAAgAADwA2AAAATWljcm9zb2Z0LkV4Y2hhbmdlLlRyYW5zcG9ydC5NYWlsUmVjaXBpZW50LkRpc3BsYXlOYW1lDwARAAAAS2xhc3NlcnQsIFN0ZWZmZW4FAGwAAgAABQBYABcASgAAAPDFCS25BAlDktII2g02frhDTj1LbGFzc2VydCBTdGVmZmVuLE9VPVVzZXJzLE9VPU1pZ3JhdGlvbixEQz1zZWN1bmV0LERDPWRlBQAMAAIAAAUAJgACAAEFACIADwAxAAAAQXV0b1Jlc3BvbnNlU3VwcHJlc3M6IDANClRyYW5zbWl0SGlzdG9yeTogRmFsc2UNCg8ALwAAAE1pY3Jvc29mdC5FeGNoYW5nZS5UcmFuc3BvcnQuRXhwYW5zaW9uR3JvdXBUeXBlDwAVAAAATWVtYmVyc0dyb3VwRXhwYW5zaW9uBQAjAAIAAQ== X-CreatedBy: MSExchange15 X-HeloDomain: a.mx.secunet.com X-ExtendedProps: BQBjAAoAknAFfe5Q3AgFAGEACAABAAAABQA3AAIAAA8APAAAAE1pY3Jvc29mdC5FeGNoYW5nZS5UcmFuc3BvcnQuTWFpbFJlY2lwaWVudC5Pcmdhbml6YXRpb25TY29wZREAAAAAAAAAAAAAAAAAAAAAAAUASQACAAEFAAQAFCABAAAAHAAAAHN0ZWZmZW4ua2xhc3NlcnRAc2VjdW5ldC5jb20FAAYAAgABDwAqAAAATWljcm9zb2Z0LkV4Y2hhbmdlLlRyYW5zcG9ydC5SZXN1Ym1pdENvdW50BwACAAAADwAJAAAAQ0lBdWRpdGVkAgABBQACAAcAAQAAAAUAAwAHAAAAAAAFAAUAAgABBQBiAAoAaQAAAOyKAAAFAGQADwADAAAASHViBQApAAIAAQ8APwAAAE1pY3Jvc29mdC5FeGNoYW5nZS5UcmFuc3BvcnQuRGlyZWN0b3J5RGF0YS5NYWlsRGVsaXZlcnlQcmlvcml0eQ8AAwAAAExvdw== X-Source: SMTP:Default MBX-ESSEN-02 X-SourceIPAddress: 62.96.220.36 X-EndOfInjectedXHeaders: 13480 Received: from cas-essen-01.secunet.de (10.53.40.201) by mbx-essen-02.secunet.de (10.53.40.198) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.37; Sun, 31 Mar 2024 07:37:41 +0200 Received: from a.mx.secunet.com (62.96.220.36) by cas-essen-01.secunet.de (10.53.40.201) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.37 via Frontend Transport; Sun, 31 Mar 2024 07:37:41 +0200 Received: from localhost (localhost [127.0.0.1]) by a.mx.secunet.com (Postfix) with ESMTP id 337A92087C for <steffen.klassert@secunet.com>; Sun, 31 Mar 2024 07:37:41 +0200 (CEST) X-Virus-Scanned: by secunet X-Spam-Flag: NO X-Spam-Score: -2.651 X-Spam-Level: X-Spam-Status: No, score=-2.651 tagged_above=-999 required=2.1 tests=[BAYES_00=-1.9, HEADER_FROM_DIFFERENT_DOMAINS=0.249, MAILING_LIST_MULTI=-1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no Received: from a.mx.secunet.com ([127.0.0.1]) by localhost (a.mx.secunet.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 2gF101sjQceD for <steffen.klassert@secunet.com>; Sun, 31 Mar 2024 07:37:39 +0200 (CEST) Received-SPF: Pass (sender SPF authorized) identity=mailfrom; client-ip=147.75.80.249; helo=am.mirrors.kernel.org; envelope-from=netdev+bounces-83540-steffen.klassert=secunet.com@vger.kernel.org; receiver=steffen.klassert@secunet.com DKIM-Filter: OpenDKIM Filter v2.11.0 a.mx.secunet.com DE8FC2083E Received: from am.mirrors.kernel.org (am.mirrors.kernel.org [147.75.80.249]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by a.mx.secunet.com (Postfix) with ESMTPS id DE8FC2083E for <steffen.klassert@secunet.com>; Sun, 31 Mar 2024 07:37:38 +0200 (CEST) Received: from smtp.subspace.kernel.org (wormhole.subspace.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by am.mirrors.kernel.org (Postfix) with ESMTPS id 7C0AC1F21609 for <steffen.klassert@secunet.com>; Sun, 31 Mar 2024 05:37:38 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id 115516FCB; Sun, 31 Mar 2024 05:37:25 +0000 (UTC) X-Original-To: netdev@vger.kernel.org Received: from bg1.exmail.qq.com (bg1.exmail.qq.com [114.132.62.65]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 63CAD6FB2; Sun, 31 Mar 2024 05:37:20 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=114.132.62.65 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711863444; cv=none; b=Dlu1TmEw7MS4RDkvkBakHqa39dMnDH6OfEjY3vaS0C11tlYX5NsJQ4wSReiOUk+CH3B/qKshuWtWcYRrn7MYtYvr2ylYL7UbxFcm/Hb7M++625PyNnDiEQeApsSXTpibI6B9ZWt4wiwJWEP+/lQzvXiAKPwnA4naQ8p14Nl78zQ= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711863444; c=relaxed/simple; bh=nxx+6xNwnVOmWpIQMEjVW/rRZuWaUlN8c6YVrXlsBh0=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=WpMP9f9Z3rsFywTSaApOr1Flcq6aAevdG27Ak/yXjXx01cXvhi1OBwPwA096rdqKKp6/HB2SuFNGSQ1iPW0diO7rNZb5Y3r7MtXYLOrImSlrCPXnURips5is7H4yqvXXgOLWE22ORGkeTKqZrA6LeJJF723McJ1SLfyDmuq4R6Q= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=shingroup.cn; spf=pass smtp.mailfrom=shingroup.cn; arc=none smtp.client-ip=114.132.62.65 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=shingroup.cn Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=shingroup.cn X-QQ-mid: bizesmtp87t1711863362tp4jo7vv X-QQ-Originating-IP: 1n8l4ALh9WiJP6dd4Vqjjg2n3vV6oK56OsALArkr0dA= Received: from localhost ( [112.0.147.175]) by bizesmtp.qq.com (ESMTP) with id ; Sun, 31 Mar 2024 13:36:01 +0800 (CST) X-QQ-SSF: 01400000000000704000000A0000000 X-QQ-FEAT: 3M0okmaRx3hJk2d/iE1l8M7/xX9AiPOvpZgXK4zA8yArofRwWfr63wL+fu12a kkxymzrJlfg8UhRnrd7HjT/aqE+NFAdWiu2IJnOjhT4iePMDukh+e6VxPFUPNt50TQOoRI6 F69k3j/xMD7wn3BI6rejwFuTbfM7SEbgo5C408pa7je2hQTakW3frIH1RwMQYfaMa1jNpp4 hDIykph0ygNn2KwTHbTBExTuLaYnDAICkXMU+S6vk478oqWqxnmAhpiobE6+Y02/KKP01dk EEc23nBmmqHpNQX1P2BvH16FmD4x/yg6aTlkrS4s6yNwXDJojARS9eEbfV8esu+W/KmU6Zi 6yOKikBXQ8gIE1ZW85c8SK9lZ2fh6cmXUbAEws85gxFuevlxQCTE1ECh//5QdJpGEILYwKC y5stMRazGpc= X-QQ-GoodBg: 2 X-BIZMAIL-ID: 3312073214826077322 From: Dawei Li <dawei.li@shingroup.cn> To: <davem@davemloft.net>, <edumazet@google.com>, <kuba@kernel.org>, <pabeni@redhat.com>, <ioana.ciornei@nxp.com>, <wintera@linux.ibm.com>, <twinkler@linux.ibm.com> CC: <netdev@vger.kernel.org>, <linux-kernel@vger.kernel.org>, <linux-s390@vger.kernel.org>, Dawei Li <dawei.li@shingroup.cn> Subject: [PATCH net-next v2 2/2] net/dpaa2: Avoid explicit cpumask var allocation on stack Date: Sun, 31 Mar 2024 13:34:41 +0800 Message-ID: <20240331053441.1276826-3-dawei.li@shingroup.cn> X-Mailer: git-send-email 2.27.0 In-Reply-To: <20240331053441.1276826-1-dawei.li@shingroup.cn> References: <20240331053441.1276826-1-dawei.li@shingroup.cn> Precedence: bulk X-Mailing-List: netdev@vger.kernel.org List-Id: <netdev.vger.kernel.org> List-Subscribe: <mailto:netdev+subscribe@vger.kernel.org> List-Unsubscribe: <mailto:netdev+unsubscribe@vger.kernel.org> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-QQ-SENDSIZE: 520 Feedback-ID: bizesmtp:shingroup.cn:qybglogicsvrgz:qybglogicsvrgz5a-1 Return-Path: netdev+bounces-83540-steffen.klassert=secunet.com@vger.kernel.org X-MS-Exchange-Organization-OriginalArrivalTime: 31 Mar 2024 05:37:41.2594 (UTC) X-MS-Exchange-Organization-Network-Message-Id: b6498806-01fb-404c-64d7-08dc5144aed5 X-MS-Exchange-Organization-OriginalClientIPAddress: 62.96.220.36 X-MS-Exchange-Organization-OriginalServerIPAddress: 10.53.40.201 X-MS-Exchange-Organization-Cross-Premises-Headers-Processed: cas-essen-01.secunet.de X-MS-Exchange-Organization-OrderedPrecisionLatencyInProgress: LSRV=mbx-essen-02.secunet.de:TOTAL-HUB=17502.188|SMR=0.141(SMRDE=0.005|SMRC=0.135(SMRCL=0.103|X-SMRCR=0.134))|CAT=0.074(CATRESL=0.024 (CATRESLP2R=0.018)|CATORES=0.047(CATRS=0.047(CATRS-Transport Rule Agent=0.001(X-ETREX=0.001 )|CATRS-Index Routing Agent=0.044)))|QDM=8140.787|SMSC=0.009|SMS=1.518(SMSMBXD-INC=1.513 )|UNK=0.001|QDM=9354.611|CAT=0.025(CATRESL=0.023(CATRESLP2R=0.003))|QDM=5.150|CAT=0.007 (CATRESL=0.006(CATRESLP2R=0.002));2024-03-31T10:29:23.449Z Content-Type: text/plain X-MS-Exchange-Forest-ArrivalHubServer: mbx-essen-02.secunet.de X-MS-Exchange-Organization-AuthSource: cas-essen-01.secunet.de X-MS-Exchange-Organization-AuthAs: Anonymous X-MS-Exchange-Organization-FromEntityHeader: Internet X-MS-Exchange-Organization-OriginalSize: 8163 X-MS-Exchange-Organization-HygienePolicy: Standard X-MS-Exchange-Organization-MessageLatency: SRV=cas-essen-01.secunet.de:TOTAL-FE=0.008|SMR=0.008(SMRPI=0.006(SMRPI-FrontendProxyAgent=0.006)) X-MS-Exchange-Organization-Recipient-Limit-Verified: True X-MS-Exchange-Organization-TotalRecipientCount: 1 X-MS-Exchange-Organization-Rules-Execution-History: 0b0cf904-14ac-4724-8bdf-482ee6223cf2%%%fd34672d-751c-45ae-a963-ed177fcabe23%%%d8080257-b0c3-47b4-b0db-23bc0c8ddb3c%%%95e591a2-5d7d-4afa-b1d0-7573d6c0a5d9%%%f7d0f6bc-4dcc-4876-8c5d-b3d6ddbb3d55%%%16355082-c50b-4214-9c7d-d39575f9f79b X-MS-Exchange-Forest-RulesExecuted: mbx-essen-02 X-MS-Exchange-Organization-RulesExecuted: mbx-essen-02 X-MS-Exchange-Forest-IndexAgent-0: AQ0CZW4AAUgFAAAPAAADH4sIAAAAAAAEAJ1VjU/bRhQ/O7GTGEzp2m pVNU1vlVYlYIeYQZuUlVF1UKF+obFKk7bJMvY5nAh2sB0+tPUv2D+9 d3d2bCihH5ZjPd+993u/93vvnP9u78QJvHj3dmf3pfti7/2b5/uv3H c7O/u/P3/x6tkFHNEkoiML6Pl4xHyWgTcaxb6XsTiCOAR/PDn20iPT OPUS5h2MKOB6mnn+EbAUojiDhPrx8TGNAhpAyiKfAoL4XoS/SUphHG c0ypg3klGmEZ/SJBzFZ13TMI3dKM2oF1g5DfDjgEJ6GE9GARI58y5S 4CBLOQ0XWcDzvd122oEsLqhS08j3ge8zTB1HIRvaEZ1kCWZGHAtG1D tl0bBaX4q7GR1eIJZpzJBI0Hx/A4cgSGiaYtHCc58NIxrYcRjaBxdP 4VfvjDJ4zeDngFvdEdtKD5FFEk/GXT/aNA3btk0DgoShLOlKRLMVmh 1yMbKVMKE09b0RXQnGnrcqnzZud334F5w1WC4u25YwDoQMW+QfetGQ oqoDFCOlCS82bS93LFiHgI6ofLc7nHDAwhBse8g7v/LFNA6+OMQ0GI 7KOfT7/fXewA+dcNXpdtd6tN93+quD9cE6OL3e47U1Ic1XcDINFOSr iG1tgb3aHzy2HAeWpbEGuIiDmzEfpcxA+Lvo754HY/f8mGVtHKKJnw GiuwE9ZTj/S7ltiZDIwsZUICbjAIfOPR+nRWgJOkbOsMSf2Bv4B3/5 NTsJPAPub2/m7xuo2+Wg4mxgRpcbH3uUBMITWApPNsrEnDGzIJocuy cTOqGpxUlgnvwVXZc/CVZ4VE6Qm1X5VLPRJMGaeht8OItAFkL7B3Fw 3QpG+1EBYcHLnT331fZvb7dfdzplXHElNJskEdjbb9+92X7DGZU5y9 IwbUleLLl+PImytmhIheYlBTCqnWuPTUCwzIdf4Ck4HViqgIt6xIQN nJ7lPMYJGzg/Wc6TKxP2+eORXyF+3ttMSAb4nbnSHmDLy53qJE3DTj DkkRyd8ORPBj9WyP4t2NpXQgrpffyUVsTvbMx2TVEYtNvhib2ZeclQ vlpwKfhqty7n+RzPWWmqsR+TlJOGerFQIHBvUX97eoArE8auI/AZEF cQrvaBjzaiXNuj4spbeuYlkRvjP2wJ/nA7SbD/mDrj/21/7O2DSP9X 9PC6ZMV1kFDv6Jr9D+XSh+r545/NSyevKmwRkR8yLIYvinj+p7TaXX 3S7fE30yCkRuq6Qr4ljQZpNklLIaouDIPMqaTWIC200dCIjk90niPz UxuNFjE00mgSEz110qgTDZ9414jWUMgcaaIb3gqpYUiTGA2xgjYmXR BJuSdpYjqRqErGvBYEt1RMoRCTZ0GouuBT1xRyTxBDSiqZk4kQUzDU cbdFdA6iYAhRlbsKIVhsnadoSdtQbkmjRRbrAhztmTiIcdMuV2yeLM wrpk6ITuZvdG7ctKvoGiGaogvatdImutCZF/6N8MRb6l9TiIFKIiBC 83VNZNGkv853hUEaGu+CLgL1OrlzXSyu64W9oMuWKaTJQ25JhHmBoP LblLVPQWSbdHL7Y88G32pKJaeAvApFF11YUImGIbeJLoek8NEL8Acc n9wtXltyAORYapz2YpHdKHVQsBd1VWmIFFoeqyzcrPBsxZCwhhMl0B CsXmRsKuS+KqRTxXpB8jtZtSZ0FuXcx5VbxYSrZS696iBC9E+FTCV6 UBPzc6eYCq3s4BQEg+7NdtOqbipfAbQWxQGvi12JpuXd4bEK+V4jvT p30+RiAbIo5mqRq6SoUmRu/w9rgi99Cg0AAAEK8QE8P3htbCB2ZXJz aW9uPSIxLjAiIGVuY29kaW5nPSJ1dGYtMTYiPz4NCjxFbWFpbFNldD 4NCiAgPFZlcnNpb24+MTUuMC4wLjA8L1ZlcnNpb24+DQogIDxFbWFp bHM+DQogICAgPEVtYWlsIFN0YXJ0SW5kZXg9IjM5MCIgUG9zaXRpb2 49IlNpZ25hdHVyZSI+DQogICAgICA8RW1haWxTdHJpbmc+ZGF3ZWku bGlAc2hpbmdyb3VwLmNuPC9FbWFpbFN0cmluZz4NCiAgICA8L0VtYW lsPg0KICA8L0VtYWlscz4NCjwvRW1haWxTZXQ+AQyqBDw/eG1sIHZl cnNpb249IjEuMCIgZW5jb2Rpbmc9InV0Zi0xNiI/Pg0KPENvbnRhY3 RTZXQ+DQogIDxWZXJzaW9uPjE1LjAuMC4wPC9WZXJzaW9uPg0KICA8 Q29udGFjdHM+DQogICAgPENvbnRhY3QgU3RhcnRJbmRleD0iMzgwIi BQb3NpdGlvbj0iU2lnbmF0dXJlIj4NCiAgICAgIDxQZXJzb24gU3Rh cnRJbmRleD0iMzgwIiBQb3NpdGlvbj0iU2lnbmF0dXJlIj4NCiAgIC AgICAgPFBlcnNvblN0cmluZz5EYXdlaSBMaTwvUGVyc29uU3RyaW5n Pg0KICAgICAgPC9QZXJzb24+DQogICAgICA8RW1haWxzPg0KICAgIC AgICA8RW1haWwgU3RhcnRJbmRleD0iMzkwIiBQb3NpdGlvbj0iU2ln bmF0dXJlIj4NCiAgICAgICAgICA8RW1haWxTdHJpbmc+ZGF3ZWkubG lAc2hpbmdyb3VwLmNuPC9FbWFpbFN0cmluZz4NCiAgICAgICAgPC9F bWFpbD4NCiAgICAgIDwvRW1haWxzPg0KICAgICAgPENvbnRhY3RTdH Jpbmc+RGF3ZWkgTGkgJmx0O2Rhd2VpLmxpQHNoaW5ncm91cC5jbjwv Q29udGFjdFN0cmluZz4NCiAgICA8L0NvbnRhY3Q+DQogIDwvQ29udG FjdHM+DQo8L0NvbnRhY3RTZXQ+AQ7PAVJldHJpZXZlck9wZXJhdG9y LDEwLDE7UmV0cmlldmVyT3BlcmF0b3IsMTEsMjtQb3N0RG9jUGFyc2 VyT3BlcmF0b3IsMTAsMTtQb3N0RG9jUGFyc2VyT3BlcmF0b3IsMTEs MDtQb3N0V29yZEJyZWFrZXJEaWFnbm9zdGljT3BlcmF0b3IsMTAsMj tQb3N0V29yZEJyZWFrZXJEaWFnbm9zdGljT3BlcmF0b3IsMTEsMDtU cmFuc3BvcnRXcml0ZXJQcm9kdWNlciwyMCwyNA== X-MS-Exchange-Forest-IndexAgent: 1 2377 X-MS-Exchange-Forest-EmailMessageHash: 7A646CF9 X-MS-Exchange-Forest-Language: en X-MS-Exchange-Organization-Processed-By-Journaling: Journal Agent X-MS-Exchange-Organization-Transport-Properties: DeliveryPriority=Low X-MS-Exchange-Organization-Prioritization: 2:RC:REDACTED-af51df60fd698f80b064826f9ee192ca@secunet.com:15/10|SR X-MS-Exchange-Organization-IncludeInSla: False:RecipientCountThresholdExceeded For CONFIG_CPUMASK_OFFSTACK=y kernel, explicit allocation of cpumask variable on stack is not recommended since it can cause potential stack overflow. Instead, kernel code should always use *cpumask_var API(s) to allocate cpumask var in config-neutral way, leaving allocation strategy to CONFIG_CPUMASK_OFFSTACK. Use *cpumask_var API(s) to address it. Signed-off-by: Dawei Li <dawei.li@shingroup.cn> --- drivers/net/ethernet/freescale/dpaa2/dpaa2-eth.c | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/drivers/net/ethernet/freescale/dpaa2/dpaa2-eth.c b/drivers/net/ethernet/freescale/dpaa2/dpaa2-eth.c index 888509cf1f21..40e881829595 100644 --- a/drivers/net/ethernet/freescale/dpaa2/dpaa2-eth.c +++ b/drivers/net/ethernet/freescale/dpaa2/dpaa2-eth.c @@ -2896,11 +2896,14 @@ static int dpaa2_eth_xdp_xmit(struct net_device *net_dev, int n, static int update_xps(struct dpaa2_eth_priv *priv) { struct net_device *net_dev = priv->net_dev; - struct cpumask xps_mask; - struct dpaa2_eth_fq *fq; int i, num_queues, netdev_queues; + struct dpaa2_eth_fq *fq; + cpumask_var_t xps_mask; int err = 0; + if (!alloc_cpumask_var(&xps_mask, GFP_KERNEL)) + return -ENOMEM; + num_queues = dpaa2_eth_queue_count(priv); netdev_queues = (net_dev->num_tc ? : 1) * num_queues; @@ -2910,16 +2913,17 @@ static int update_xps(struct dpaa2_eth_priv *priv) for (i = 0; i < netdev_queues; i++) { fq = &priv->fq[i % num_queues]; - cpumask_clear(&xps_mask); - cpumask_set_cpu(fq->target_cpu, &xps_mask); + cpumask_clear(xps_mask); + cpumask_set_cpu(fq->target_cpu, xps_mask); - err = netif_set_xps_queue(net_dev, &xps_mask, i); + err = netif_set_xps_queue(net_dev, xps_mask, i); if (err) { netdev_warn_once(net_dev, "Error setting XPS queue\n"); break; } } + free_cpumask_var(xps_mask); return err; } -- 2.27.0 ^ permalink raw reply related [flat|nested] 8+ messages in thread
* Re: [PATCH net-next v2 0/2] Avoid explicit cpumask var allocation on stack 2024-03-31 5:34 [PATCH net-next v2 0/2] Avoid explicit cpumask var allocation on stack Dawei Li ` (2 preceding siblings ...) 2024-03-31 5:34 ` [PATCH net-next v2 2/2] net/dpaa2: " Dawei Li @ 2024-04-03 1:40 ` patchwork-bot+netdevbpf 3 siblings, 0 replies; 8+ messages in thread From: patchwork-bot+netdevbpf @ 2024-04-03 1:40 UTC (permalink / raw) To: Dawei Li Cc: davem, edumazet, kuba, pabeni, ioana.ciornei, wintera, twinkler, netdev, linux-kernel, linux-s390 Hello: This series was applied to netdev/net-next.git (main) by Jakub Kicinski <kuba@kernel.org>: On Sun, 31 Mar 2024 13:34:39 +0800 you wrote: > Hi, > > This is v2 of previous series[1] about cpumask var on stack for net > subsystem. > > Change since v1: > - For iucv_setmask_up() which returns void to caller, just make cpumask > var static which is protected by global lock iucv_register_mutex. [Eric] > > [...] Here is the summary with links: - [net-next,v2,1/2] net/iucv: Avoid explicit cpumask var allocation on stack https://git.kernel.org/netdev/net-next/c/be4e1304419c - [net-next,v2,2/2] net/dpaa2: Avoid explicit cpumask var allocation on stack https://git.kernel.org/netdev/net-next/c/d33fe1714a44 You are awesome, thank you! -- Deet-doot-dot, I am a bot. https://korg.docs.kernel.org/patchwork/pwbot.html ^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2024-04-03 1:40 UTC | newest] Thread overview: 8+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2024-03-31 5:34 [PATCH net-next v2 0/2] Avoid explicit cpumask var allocation on stack Dawei Li 2024-03-31 5:34 ` Dawei Li 2024-03-31 5:34 ` [PATCH net-next v2 1/2] net/iucv: " Dawei Li 2024-03-31 5:34 ` Dawei Li 2024-04-02 12:41 ` Alexandra Winter 2024-03-31 5:34 ` [PATCH net-next v2 2/2] net/dpaa2: " Dawei Li 2024-03-31 5:34 ` Dawei Li 2024-04-03 1:40 ` [PATCH net-next v2 0/2] " patchwork-bot+netdevbpf
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox