Received: by 2002:a05:7412:8d10:b0:f3:1519:9f41 with SMTP id bj16csp4523376rdb; Tue, 12 Dec 2023 01:46:48 -0800 (PST) X-Google-Smtp-Source: AGHT+IF9/GtLg0IgqTFUlDwIvElE6z0N5peOq5PpwWc/ELpAfsIIhCtELMwqZ2z4f5UxnvM8e+XQ X-Received: by 2002:a92:c24d:0:b0:35d:637e:c3d2 with SMTP id k13-20020a92c24d000000b0035d637ec3d2mr7642176ilo.20.1702374408249; Tue, 12 Dec 2023 01:46:48 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1702374408; cv=none; d=google.com; s=arc-20160816; b=d1KvgWd+RetbH4g56q9xM6mDa5cTZ3VHQROUoiu6TUkQw17ojiHXvW4RVPfhvJc4fi 2YkeqKSCnb6RNuXRP5eZeVYGRR6X6J3K3SqBhTe9Keflvxw9Spcn8HJTBmI+0y06dtgt 0tXGQ6pdI4Kx4WMGS3UvOOwO2gwoF5zYJKJB2zh3ShGVfLbj8rlX3HxDc9kiVRxYNZo1 AjKxLJYg/WyDrwftD0FfPh1ycyPA5S1335Kk3bckrNeT8u9C5e++xHFKZLMeOtdAlpvy R8k1lq1PN1RWyPDqqcd5WMxrOLb0LcVEmsc0Fme70XiTf7hbkqiw1lS4E60YwUxVBssQ Xefw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :message-id:date:subject:cc:to:from:dkim-signature; bh=NReA4eKgPXV7Slp2Uz7TwEM/gX6Plron0QJGSJ65HwA=; fh=dvp5Xx+DRreDmFQH/xXXh1S80/ZI152mtA3lYObnbfo=; b=gFm8dQVqLdQ+zd3iP1LmzwJQoFbRy3/7f8OqwCRXsiw7zhTH9LPd/LqshtoPEtoCPV u+Af58T4f2wig7bdS+L5zOx8bWZiI9z9txM49f2+dOdFhrZu98kZca4M/jvsGx7MNxE4 S9MIQ+YuVPa35nYZ1o48QtXiR3xxYoInApilBfZ2u16NX1O2e/tYMGJG7P+H1Nb4SLax WAHhHHM89ZP7ydaRGGbX9rxy+oEtxD9QQ9Z2+8Arts2icPLnjEr2AF20fSnVBfyqcK8L veuoUSMFlJNTV4Sz9vVsyKYBEMZ0Jvzaw4wFPanbDVwf9nqBr0bjZ64yT1qHTzA9oWbE 6JZA== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@intel.com header.s=Intel header.b=Wwe4ffY5; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.34 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=intel.com Return-Path: Received: from howler.vger.email (howler.vger.email. [23.128.96.34]) by mx.google.com with ESMTPS id b5-20020a6567c5000000b005c69a12d683si7154718pgs.776.2023.12.12.01.46.47 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 12 Dec 2023 01:46:48 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.34 as permitted sender) client-ip=23.128.96.34; Authentication-Results: mx.google.com; dkim=fail header.i=@intel.com header.s=Intel header.b=Wwe4ffY5; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.34 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by howler.vger.email (Postfix) with ESMTP id E1B6C80B9506; Tue, 12 Dec 2023 01:46:45 -0800 (PST) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.11 at howler.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231508AbjLLJq3 (ORCPT + 99 others); Tue, 12 Dec 2023 04:46:29 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:32794 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230218AbjLLJq1 (ORCPT ); Tue, 12 Dec 2023 04:46:27 -0500 Received: from mgamail.intel.com (mgamail.intel.com [192.55.52.136]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 61C2AD2 for ; Tue, 12 Dec 2023 01:46:34 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1702374394; x=1733910394; h=from:to:cc:subject:date:message-id:mime-version: content-transfer-encoding; bh=jQ1g0JWTs+h+uCJaGecUkR5E/TcmaxUbWdQhueCisdo=; b=Wwe4ffY5zASFMaoW7tjmDjnJWPoOx3lBoe3qccgPxhBb1VJ/5YXsVDtA 1UBYqbv+S5ILIJOZqgbluC0xOUzhnwH4/C/c6zprxzNIbkpQK2GVGTjpV QSoaYkcgihp9fFMmmr6B0m/p84DG4AzraGPh78RUOIj2QXqOrMDefv48e 1psXXM0VuHf6jXndE1klKz8JdFxOLb4fbX7RLO0UgnzUVM6w12uiWAv8C t1oYDsP4IoexYngDO7vwWrLw/ZLg/tZsElkqeNuaTZar860EAzSUmRDz/ XIRzy4Zbr1Aq3UP7uiJCsabbVIwHu3lrqk5+drcrUDJszE3raO5aH1xOA g==; X-IronPort-AV: E=McAfee;i="6600,9927,10921"; a="374286558" X-IronPort-AV: E=Sophos;i="6.04,269,1695711600"; d="scan'208";a="374286558" Received: from orsmga006.jf.intel.com ([10.7.209.51]) by fmsmga106.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 12 Dec 2023 01:46:33 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10921"; a="749653695" X-IronPort-AV: E=Sophos;i="6.04,269,1695711600"; d="scan'208";a="749653695" Received: from ssid-ilbpg3-teeminta.png.intel.com (HELO localhost.localdomain) ([10.88.227.74]) by orsmga006.jf.intel.com with ESMTP; 12 Dec 2023 01:46:29 -0800 From: "Gan, Yi Fang" To: Greg Kroah-Hartman , "Rafael J . Wysocki" , Javier Martinez Canillas , John Stultz , Jens Axboe , Andrew Halaney , Lobakin@vger.kernel.org, Aleksander , Gan@vger.kernel.org, Yi Fang , linux-kernel@vger.kernel.org Cc: Looi Hong Aun , Voon Weifeng , Song Yoong Siang , Lai@vger.kernel.org, Peter Jun Ann Subject: [PATCH net-next 1/1] driver.h: add helper macro for module_exit() boilerplate Date: Tue, 12 Dec 2023 17:43:52 +0800 Message-Id: <20231212094352.2263283-1-yi.fang.gan@intel.com> X-Mailer: git-send-email 2.34.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=-0.6 required=5.0 tests=DKIM_INVALID,DKIM_SIGNED, HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,SPF_HELO_NONE, SPF_PASS,T_SCC_BODY_TEXT_LINE autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on howler.vger.email Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (howler.vger.email [0.0.0.0]); Tue, 12 Dec 2023 01:46:46 -0800 (PST) For the modules need a module_init() but don't need to do anything special in module_exit() might need to have an empty module_exit(). This patch add a new macro module_exit_stub() to replace the empty module_exit(). The macro is useful to remove the module_exit() boilerplate. Signed-off-by: Gan, Yi Fang --- include/linux/device/driver.h | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/include/linux/device/driver.h b/include/linux/device/driver.h index 7738f458995f..18e75c7b5c2f 100644 --- a/include/linux/device/driver.h +++ b/include/linux/device/driver.h @@ -288,4 +288,18 @@ static int __init __driver##_init(void) \ } \ device_initcall(__driver##_init); +/** + * module_exit_stub() - Helper macro for drivers that have init but don't + * do anything in exit. This eliminates some boilerplate. + * Each module may only use this macro one, and calling it replaces + * module_exit(). + * + * @__driver: driver name + */ +#define module_exit_stub(__driver) \ +static void __exit __driver##_exit(void) \ +{ \ +} \ +module_exit(__driver##_exit) + #endif /* _DEVICE_DRIVER_H_ */ -- 2.34.1