From patchwork Thu Apr 6 19:00:20 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Allen Webb X-Patchwork-Id: 80396 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:b0ea:0:b0:3b6:4342:cba0 with SMTP id b10csp1240237vqo; Thu, 6 Apr 2023 12:03:41 -0700 (PDT) X-Google-Smtp-Source: AKy350YgqIO2GreVjEaZ2lewCzEuZ8fqKnLmxwjcnhrp680O8VywXa9bddz5O/Zc5GNeZX4k4OVQ X-Received: by 2002:a17:906:a107:b0:8aa:a9fe:a3fc with SMTP id t7-20020a170906a10700b008aaa9fea3fcmr7562233ejy.8.1680807821329; Thu, 06 Apr 2023 12:03:41 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1680807821; cv=none; d=google.com; s=arc-20160816; b=lC4B+MonEBWclZ7bfPC4my9Sefn0yM2GMdJNZaOQYV7POnyUlLp+u20m7M1YqNa3fg 3J36xmOw2ohvi3bSsSu+2wGcmSu2O3VOh5AV9iS2yJl0TYc+LIQ1hwj+sb8nuKziIZOA JDQgVQfiYufYqhv5SFLGAKPY9/fpAgV4zqfS6a8B+yvV5s7u7S2nASfANG0FGcEATGbU OztXfpTviQXVcHuUnrdx9rkgH9f/Ip7MMz1t8DSo5gVm1bQFmf91llO1/Kyg9/vOv7bv XgpHqmt3hY93TfE4OLILDkix8xrViLoPl9UrhLQ/4xwUpbmLBGEV+wn8TluYa55QGVCx ACtA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:cc:to:from:subject:message-id:references :mime-version:in-reply-to:date:dkim-signature; bh=eGQLnr57manA7/d3sSj7CWvU90h1ejgPAAwZbA4W80Y=; b=pSJXX1f+gnxQbKmsOfTBUuhWBhKFRlICyOLgHlAW8nGgqfM1vJ6M7XNSXr/s5GuCPB vBgJGZUui0mOU3A29GxWcF6ri/IuoJynondJKlYp8K1Jo4rzJ5gY4UDxu2DLABaVTxVE bPo9xdHLNxgfjA9+5++Y7FgBQJd6CFg3DsiOq3AFCuHSM7z68HlOgz075ABpuUmSvOBU pC9WCRBlwZmuzsuWR3WSW1Q5FWH3PhRGmYsJVX8gZKeeYHQZgMZ4pGSjqKpcieZ4hWz8 HHNb41Dc/nUy5YFmzwffyrry3O40auvJfdlCo+9oLUrLEu23h3nWZv3adGbEfjnZzq6P BNvA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@google.com header.s=20210112 header.b=E1XOP1Ca; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id x16-20020a170906805000b009496f0b2d9fsi1283889ejw.373.2023.04.06.12.03.16; Thu, 06 Apr 2023 12:03:41 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@google.com header.s=20210112 header.b=E1XOP1Ca; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S240373AbjDFTBI (ORCPT + 99 others); Thu, 6 Apr 2023 15:01:08 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:55234 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S239830AbjDFTBC (ORCPT ); Thu, 6 Apr 2023 15:01:02 -0400 Received: from mail-il1-x149.google.com (mail-il1-x149.google.com [IPv6:2607:f8b0:4864:20::149]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id A8B8B9012 for ; Thu, 6 Apr 2023 12:00:59 -0700 (PDT) Received: by mail-il1-x149.google.com with SMTP id x5-20020a056e021ca500b00327f726c6c0so3261773ill.9 for ; Thu, 06 Apr 2023 12:00:59 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20210112; t=1680807659; h=cc:to:from:subject:message-id:references:mime-version:in-reply-to :date:from:to:cc:subject:date:message-id:reply-to; bh=eGQLnr57manA7/d3sSj7CWvU90h1ejgPAAwZbA4W80Y=; b=E1XOP1CaY8koFy3ME6her9rJ9Nke8XHAoAVsqLpY3lPsNoEYGcrpUF5PF5gHdN47bK NGSiShp2xcYg0DXa0KIabY1O37FSpfutYwWTjtRVrU9oHpeB9FGTYAd99a4F1/6Y8FZn AbnD5SAV+TZ0GjZP3RdKVI6rqFp6OB//JibKTs1ZBw4TBgjK4lD7u+6bQxjHMtj/gsBd BKNR9Uz/lHv1iRy4b6qhPk1HwfMVdk/ucdXhOaul/MyfX6WSdjJGRwtYds3NlIxOeBAy hYI94iBkFDpAsYZMS2B43djCX50lmE22kkHDNV9FYiOmAE1uw+MDpJDDPPsBmoU8NICk 6/qw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; t=1680807659; h=cc:to:from:subject:message-id:references:mime-version:in-reply-to :date:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=eGQLnr57manA7/d3sSj7CWvU90h1ejgPAAwZbA4W80Y=; b=Tb1A2vTUmRZO4cTlqa7DTI1VGPq5JawS4N0OvyLtEWGQAz/ECdl1PcTeLlC2nb45xA qLPERhlAzAMqnsyGPxVRux+KQITkGcJbsbYCcOGrQeTAutb16cO6q0sd9q5LroFxP9nr p8DuY1Hc+0dq+GjvopIYC5LL0Q+ka4UAwuWloLkFvTC9AoQu23tDgs8WBQKXGfZBGTfC TCKMOF328KcjeHJlO8Bh4Vcs3K8CJRL46B6MRG/UlZlYQhG0BtiBUDcsuGXoiIrLDl+4 7U6JxbkCesKAnEy8heE4CwQCJT065NebpDLg3tahJfElQN+kpEZjHq+3T/apPbfOX2km CiBw== X-Gm-Message-State: AAQBX9fX3m9T32/1m0S7zjF8tH67qcU2f3Jy0MBggZw2Y7r7IeAVXwPU 0nTwK6aR18QR3JouyBX4GuwCDpEPgMRvXrU= X-Received: from allenwebb.c.googlers.com ([fda3:e722:ac3:cc00:2b:ff92:c0a8:12e8]) (user=allenwebb job=sendgmr) by 2002:a92:1a49:0:b0:315:8f6c:50a6 with SMTP id z9-20020a921a49000000b003158f6c50a6mr6481064ill.1.1680807658940; Thu, 06 Apr 2023 12:00:58 -0700 (PDT) Date: Thu, 6 Apr 2023 14:00:20 -0500 In-Reply-To: <20230406190030.968972-1-allenwebb@google.com> Mime-Version: 1.0 References: <20221219204619.2205248-1-allenwebb@google.com> <20230406190030.968972-1-allenwebb@google.com> X-Mailer: git-send-email 2.40.0.577.gac1e443424-goog Message-ID: <20230406190030.968972-2-allenwebb@google.com> Subject: [PATCH v10 01/11] rockchip-mailbox: Remove unneeded MODULE_DEVICE_TABLE From: Allen Webb To: "linux-modules@vger.kernel.org" , "linux-usb@vger.kernel.org" , "linux-kernel@vger.kernel.org" Cc: gregkh@linuxfoundation.org, mcgrof@kernel.org, christophe.leroy@csgroup.eu, nick.alcock@oracle.com, Allen Webb , kernel test robot X-Spam-Status: No, score=-7.7 required=5.0 tests=DKIMWL_WL_MED,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_NONE, SPF_HELO_NONE,SPF_PASS,USER_IN_DEF_DKIM_WL autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1762454742110346702?= X-GMAIL-MSGID: =?utf-8?q?1762454742110346702?= A one character difference in the name supplied to MODULE_DEVICE_TABLE breaks compilation for ROCKCHIP_MBOX after built-in modules can generate match-id based module aliases. Since this wasn't being used before and builtin aliases aren't needed in this case, remove it. This was not caught earlier because ROCKCHIP_MBOX can not be built as a module and MODULE_DEVICE_TABLE is a no-op for built-in modules. Fixes: f70ed3b5dc8b ("mailbox: rockchip: Add Rockchip mailbox driver") Reported-by: kernel test robot Link: https://lore.kernel.org/lkml/202212171140.NB93eVvI-lkp@intel.com/ Signed-off-by: Allen Webb --- drivers/mailbox/rockchip-mailbox.c | 1 - 1 file changed, 1 deletion(-) diff --git a/drivers/mailbox/rockchip-mailbox.c b/drivers/mailbox/rockchip-mailbox.c index e02d3c9e3693..1f0adc283d1b 100644 --- a/drivers/mailbox/rockchip-mailbox.c +++ b/drivers/mailbox/rockchip-mailbox.c @@ -159,7 +159,6 @@ static const struct of_device_id rockchip_mbox_of_match[] = { { .compatible = "rockchip,rk3368-mailbox", .data = &rk3368_drv_data}, { }, }; -MODULE_DEVICE_TABLE(of, rockchp_mbox_of_match); static int rockchip_mbox_probe(struct platform_device *pdev) { From patchwork Thu Apr 6 19:00:21 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Allen Webb X-Patchwork-Id: 80405 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:b0ea:0:b0:3b6:4342:cba0 with SMTP id b10csp1250296vqo; Thu, 6 Apr 2023 12:21:11 -0700 (PDT) X-Google-Smtp-Source: AKy350ZxSHYFb6JL/5gqdoFFAuEHePiCfchJv2OXXsdH0k1mgeWGF/kyHhtALo3FXV1BaetmZBVN X-Received: by 2002:a17:907:2672:b0:8f4:ec13:d599 with SMTP id ci18-20020a170907267200b008f4ec13d599mr10209ejc.27.1680808871488; Thu, 06 Apr 2023 12:21:11 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1680808871; cv=none; d=google.com; s=arc-20160816; b=oQBZTokuxFQvYyEQ84xhwVDi6nck+xmv4yjN52SoLfK40yg1lVtHnr7rPzXBgDzMh4 VUWt/gzT8g2i64J7qs8M/wNQMSw9O/LAoB0zJnZkA36UxCt2EZhHsZp9uJfr3tqmyvZV YKnPXwT60qTU6L5+u/SveZoOImjZLn7Q/A4JuG1WiVrxsXHmCayG2pacAAxdhVA9Pq07 QoEvnaxcC64tQcoCvF4Yhx+0p5EGI9lBMHpAb3+SS3StHsABE6QNuwFOVtU//r2P0E20 umm2ZmI4ZeNV3BbHhCTsZogeaZmpxSUw010Wyj93kEGNoCjI5rqu8vrN6mViV5uwRq/0 hqgQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:cc:to:from:subject:message-id:references :mime-version:in-reply-to:date:dkim-signature; bh=caRdwk2BRQJWlUMku9R1oT1hxRVhqY9kuoHjJ2qZO3g=; b=FS4tc2s/udq4bIo7gf2AbGJuwxN48x2Azpir7p5BzMCSh50v5mEObF13OIIkqhnraS 2OlEZBrZg2EP5Hq0T/PMoBo7PYqovZckTB5W+EKg9nWUDz9ToZa17rVZERo+gWICbPwT Iwe2a2ORVfyX97VmG4Ty9QvFtn6xVcbUrsel9UkVuf4JMxHKF6xd/gUY0mu6Wh5vN6qi J7zQNKqu2D3gf+WfDi80M4YUkcCcm5lqk4nawcM8J/cXaQS8gUWiZasPnAyK7FbDR3WV vcDG9KD1MB2o9+x8swCt+ldtlNzgWu5LGBAmM8IX45+mxHdjoSVLersaYDwbL7r4IZwI L7JA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@google.com header.s=20210112 header.b=lfuUx+vi; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id p23-20020aa7d317000000b004fae45d5b7esi1505815edq.534.2023.04.06.12.20.46; Thu, 06 Apr 2023 12:21:11 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@google.com header.s=20210112 header.b=lfuUx+vi; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S240383AbjDFTBU (ORCPT + 99 others); Thu, 6 Apr 2023 15:01:20 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:55256 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229916AbjDFTBE (ORCPT ); Thu, 6 Apr 2023 15:01:04 -0400 Received: from mail-io1-xd4a.google.com (mail-io1-xd4a.google.com [IPv6:2607:f8b0:4864:20::d4a]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id A316693C9 for ; Thu, 6 Apr 2023 12:01:00 -0700 (PDT) Received: by mail-io1-xd4a.google.com with SMTP id 187-20020a6b15c4000000b007590817bcfbso25285965iov.12 for ; Thu, 06 Apr 2023 12:01:00 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20210112; t=1680807659; h=cc:to:from:subject:message-id:references:mime-version:in-reply-to :date:from:to:cc:subject:date:message-id:reply-to; bh=caRdwk2BRQJWlUMku9R1oT1hxRVhqY9kuoHjJ2qZO3g=; b=lfuUx+vimxI8w/cKWiB5+HTdLqsC/0cCYDiqUSTIeqzGMKR+TKHzvMizjJ7BBZhZW/ RlHbjNQWDsD82aYLkG3tBnPoM2YnbzzGHVTeWDzYKzOUz6Gp4MAIpw30SmY7ci/GiQjg FnQkWFZp05JjNnSEUc0m7CUrF4XEblcCLQb6VXf1kI/MJ2RGfMVdkZbWgyfUe/Uzy0vZ TzlHMoGVm/UiwgZkl59Xjma1a7g5UolZu1xB4zkh8Y9WNDbbXYOuYkXU/UZBM2iGBKig VuX4OQ9m6Ud3XYU7CvzTvyVuvzsPIGY32a7R0F0CZZQwLW00QKLFtlweUo4TM8fl9CQa qLiQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; t=1680807659; h=cc:to:from:subject:message-id:references:mime-version:in-reply-to :date:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=caRdwk2BRQJWlUMku9R1oT1hxRVhqY9kuoHjJ2qZO3g=; b=7vHgYVqTz/sdCtQ7dSyJ4MfG6yG9ABJWMvYX8z1ePVoI2GcqMPCp2CFa/kP4DKCO+M +DsB+3E0nBtyNsPO8iNXPiN+9/ulSggc8/MO79p9+soLhZT77iV5/ESr3Pg40E0qVDeT CHesO7PClKqFu/Xtv4C8H+gmb7ZCLSr5MqLrgR/HIbkYt4I53uZmz8/mOM9KljP2DP9d x7TQ+ljBfswDYM31RFwIqs9jpZLWMMDLVsJBRe16YQG+cySjlCMYArLP4ap2kTSNrlEL VEMQ1AL7SV8u/5jOqVjM/w68FAGCpHdOGzyqfwrBGcOTrE02bU1k5b6/838dX6L6jG53 PIuw== X-Gm-Message-State: AAQBX9cqgr0tjuXHApR86XC1Gq6RHBqSAMU+92OBIhL7R2esDV78zfMw rnoEGH5fXRJPndGK1egSEnFanp6Ulnu0gdc= X-Received: from allenwebb.c.googlers.com ([fda3:e722:ac3:cc00:2b:ff92:c0a8:12e8]) (user=allenwebb job=sendgmr) by 2002:a02:b181:0:b0:3c5:14ca:58c6 with SMTP id t1-20020a02b181000000b003c514ca58c6mr6033175jah.4.1680807659752; Thu, 06 Apr 2023 12:00:59 -0700 (PDT) Date: Thu, 6 Apr 2023 14:00:21 -0500 In-Reply-To: <20230406190030.968972-1-allenwebb@google.com> Mime-Version: 1.0 References: <20221219204619.2205248-1-allenwebb@google.com> <20230406190030.968972-1-allenwebb@google.com> X-Mailer: git-send-email 2.40.0.577.gac1e443424-goog Message-ID: <20230406190030.968972-3-allenwebb@google.com> Subject: [PATCH v10 02/11] scsi/BusLogic: Always include device id table From: Allen Webb To: "linux-modules@vger.kernel.org" , "linux-usb@vger.kernel.org" , "linux-kernel@vger.kernel.org" Cc: gregkh@linuxfoundation.org, mcgrof@kernel.org, christophe.leroy@csgroup.eu, nick.alcock@oracle.com, Allen Webb , kernel test robot X-Spam-Status: No, score=-7.7 required=5.0 tests=DKIMWL_WL_MED,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_NONE, SPF_HELO_NONE,SPF_PASS,USER_IN_DEF_DKIM_WL autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1752671286495579543?= X-GMAIL-MSGID: =?utf-8?q?1762455843397685337?= A future patch makes use of the device table for built-in modules, so do not ifdef out the match id table. Reported-by: kernel test robot Link: https://lore.kernel.org/lkml/202212171257.0oLypyYS-lkp@intel.com/ Signed-off-by: Allen Webb --- drivers/scsi/BusLogic.c | 2 -- 1 file changed, 2 deletions(-) diff --git a/drivers/scsi/BusLogic.c b/drivers/scsi/BusLogic.c index f7b7ffda1161..79fc8a24e614 100644 --- a/drivers/scsi/BusLogic.c +++ b/drivers/scsi/BusLogic.c @@ -3713,7 +3713,6 @@ static void __exit blogic_exit(void) __setup("BusLogic=", blogic_setup); -#ifdef MODULE /*static struct pci_device_id blogic_pci_tbl[] = { { PCI_VENDOR_ID_BUSLOGIC, PCI_DEVICE_ID_BUSLOGIC_MULTIMASTER, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0}, @@ -3729,7 +3728,6 @@ static const struct pci_device_id blogic_pci_tbl[] = { {PCI_DEVICE(PCI_VENDOR_ID_BUSLOGIC, PCI_DEVICE_ID_BUSLOGIC_FLASHPOINT)}, {0, }, }; -#endif MODULE_DEVICE_TABLE(pci, blogic_pci_tbl); module_init(blogic_init); From patchwork Thu Apr 6 19:00:22 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Allen Webb X-Patchwork-Id: 80402 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:b0ea:0:b0:3b6:4342:cba0 with SMTP id b10csp1249669vqo; Thu, 6 Apr 2023 12:20:05 -0700 (PDT) X-Google-Smtp-Source: AKy350aSlRbglDlj3eVblJGcX4Pw5ekygZ4Xr/9nrMSv2rGtogVKYCvFQbzRzXb7ChrRoALBCjOo X-Received: by 2002:a05:6402:798:b0:502:8f49:2553 with SMTP id d24-20020a056402079800b005028f492553mr495771edy.25.1680808805257; Thu, 06 Apr 2023 12:20:05 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1680808805; cv=none; d=google.com; s=arc-20160816; b=pD3VBMtzuQICvSSh0WBLvC47S8xII9CxK7tQc2Ze55KZ5AcYdwkZEBRel2+MHhV5+k dELyKS+DbdQDnjjc3BsqPO21n2EFgAU+m15oEWGvIjJ4KX6tV4wbQpygIWSrUIWuTWdX Vx9MRQF2nxlNjAIiMTRn7nmfIKHkoD9xcVdvlOD3pk9+UXtkcrFVYZ6alrs8XANj2gdK twjmso1qXM2Yt/yiKD1SPVYfdiT4K0M2TtsVsP/SRgg9p2V4a55VQsixL4PUCFkRGGID o9oMFOx1J9I2weF330jf8GD2RyItxf941oa+yF+efHXZMLlErRJTbzv7z79EXzJ1li5N tKPg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:cc:to:from:subject:message-id:references :mime-version:in-reply-to:date:dkim-signature; bh=CIaNzDoEfkQUCUs5a1+ah5UqZ1hq5cACYGIKF90PLWA=; b=WWr25E84e3Mf+zx/jHaxVkGaXhniSi2/0Jh95z1CgVm2AivbqNN7UJcWVD8sdcrqCv OHdbBk4dm7rI/LQBLEyfll7y+vWL3xwCTy67I21hlyZVSdEZUk6JcxHKrPw02MV4XzAJ 8OHtk+lT6EgQXyfQkUUR6d4rRNUub0ZZibYqJB5LvUJbRJJ/k1wn5jJFapR03wTQ4s34 ajZJaobu/XOUqh4yi+sXjtkblEKt9RSD47ybD3AeK4NZvqhPP8/YuJT/4jFuuHBIbd5/ OXUf4O9FR1IDYc2Ym5guqwb+Ez+2KS9XucEqbmXWyf9hOkl+22TIbOPwBRico3r8qPpX sBRA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@google.com header.s=20210112 header.b=G+FTw3D1; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id m20-20020aa7d354000000b00502250fa5a5si1718299edr.470.2023.04.06.12.19.40; Thu, 06 Apr 2023 12:20:05 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@google.com header.s=20210112 header.b=G+FTw3D1; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S240362AbjDFTBR (ORCPT + 99 others); Thu, 6 Apr 2023 15:01:17 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:55228 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S240336AbjDFTBG (ORCPT ); Thu, 6 Apr 2023 15:01:06 -0400 Received: from mail-il1-x14a.google.com (mail-il1-x14a.google.com [IPv6:2607:f8b0:4864:20::14a]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 832E893D2 for ; Thu, 6 Apr 2023 12:01:01 -0700 (PDT) Received: by mail-il1-x14a.google.com with SMTP id d11-20020a056e020c0b00b00326156e3a8bso20692805ile.3 for ; Thu, 06 Apr 2023 12:01:01 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20210112; t=1680807661; h=cc:to:from:subject:message-id:references:mime-version:in-reply-to :date:from:to:cc:subject:date:message-id:reply-to; bh=CIaNzDoEfkQUCUs5a1+ah5UqZ1hq5cACYGIKF90PLWA=; b=G+FTw3D1oOQIjnAKB1cpn9CiPMPKCCFM4zdri/XtQJGkhM8ftL306NfOcRuhgBJwAT +mqD0LOE5YJzkUY6ePsFoGVjZiuuVZ9E2USexjk/EUU97k0/6RzsAAanDkVOThd1NSb/ UHy8zFuNtffS3eWlDckeeAT9oCY7xDJSH2ttDYfw5Ys4YqfON7UCSPfniEHkJXIicK5X pym1+Tk0FtNI+3SFj6R7I0VHLqY1yU3s7SCpVrnruhY/CbD+oW8s5P5fV208J/K1wmOr VQqc6oZ6PtBD6O5hhHqZblnYB84HAIivUECRQzO7E8yY+rSsgFhBq+ttRv64b/8RpqGV 7E3w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; t=1680807661; h=cc:to:from:subject:message-id:references:mime-version:in-reply-to :date:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=CIaNzDoEfkQUCUs5a1+ah5UqZ1hq5cACYGIKF90PLWA=; b=ldmf2bixK4+UUaXaCC0/MwE8VAX1JwuImwpySQxxoMuxzRpq8ECZg1CSNBaok7+4Xl 4lnPL+fcdlJ878d1GYJLTYQiBVIA0PG+ZVKpBKPX3P3/J67oAwbgLYSZ3wavXdlO6BWb JGyyzBX2jt/VAeQsgcC+f/MawebawFZsQU6j4r80PshOzrdUD2fa4YUfb05/GqIXTkTl 0XDqcFFTjXKqxjyi2KwQ2AXNMPa+nKsq8mCvrN0V881crCeW8Y4KdxacEak9SQiEzAIn OhneT8xkG5tW0lUBwaDOl0goQHSd1pCizt0OfGSwl8tiRqLLrcMRrlONjnpADIKiSXLd M5nw== X-Gm-Message-State: AAQBX9fz6BqXi8a3kmBAc0Lqv7zrDghxMi//koj6PkQi2a2tatT1qxG9 zphz9dflw3csqJzxGUb/DLh1K+YnkXgvA4g= X-Received: from allenwebb.c.googlers.com ([fda3:e722:ac3:cc00:2b:ff92:c0a8:12e8]) (user=allenwebb job=sendgmr) by 2002:a02:a10c:0:b0:405:8be:eaaa with SMTP id f12-20020a02a10c000000b0040508beeaaamr6056313jag.5.1680807660861; Thu, 06 Apr 2023 12:01:00 -0700 (PDT) Date: Thu, 6 Apr 2023 14:00:22 -0500 In-Reply-To: <20230406190030.968972-1-allenwebb@google.com> Mime-Version: 1.0 References: <20221219204619.2205248-1-allenwebb@google.com> <20230406190030.968972-1-allenwebb@google.com> X-Mailer: git-send-email 2.40.0.577.gac1e443424-goog Message-ID: <20230406190030.968972-4-allenwebb@google.com> Subject: [PATCH v10 03/11] stmpe-spi: Fix MODULE_DEVICE_TABLE entries From: Allen Webb To: "linux-modules@vger.kernel.org" , "linux-usb@vger.kernel.org" , "linux-kernel@vger.kernel.org" Cc: gregkh@linuxfoundation.org, mcgrof@kernel.org, christophe.leroy@csgroup.eu, nick.alcock@oracle.com, Allen Webb , kernel test robot X-Spam-Status: No, score=-7.7 required=5.0 tests=DKIMWL_WL_MED,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_NONE, SPF_HELO_NONE,SPF_PASS,USER_IN_DEF_DKIM_WL autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1762455773410651913?= X-GMAIL-MSGID: =?utf-8?q?1762455773410651913?= A one character difference in the name supplied to MODULE_DEVICE_TABLE breaks compilation for STMPE_SPI after built-in modules can generate match-id based module aliases. Since this wasn't being used before and builtin aliases aren't needed in this case, remove it. This was not caught earlier because STMPE_SPI can not be built as a module and MODULE_DEVICE_TABLE is a no-op for built-in modules. Fixes: e789995d5c61 ("mfd: Add support for STMPE SPI interface") Reported-by: kernel test robot Link: https://lore.kernel.org/lkml/202212171140.NB93eVvI-lkp@intel.com/ Signed-off-by: Allen Webb --- drivers/mfd/stmpe-spi.c | 1 - 1 file changed, 1 deletion(-) diff --git a/drivers/mfd/stmpe-spi.c b/drivers/mfd/stmpe-spi.c index e9cbf33502b3..e9cb6a635472 100644 --- a/drivers/mfd/stmpe-spi.c +++ b/drivers/mfd/stmpe-spi.c @@ -129,7 +129,6 @@ static const struct spi_device_id stmpe_spi_id[] = { { "stmpe2403", STMPE2403 }, { } }; -MODULE_DEVICE_TABLE(spi, stmpe_id); static struct spi_driver stmpe_spi_driver = { .driver = { From patchwork Thu Apr 6 19:00:23 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Allen Webb X-Patchwork-Id: 80397 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:b0ea:0:b0:3b6:4342:cba0 with SMTP id b10csp1240277vqo; Thu, 6 Apr 2023 12:03:45 -0700 (PDT) X-Google-Smtp-Source: AKy350YKpjmUyHqhSf2zzuqAF+WO07qMmKbLdjv5i+O9k0LeGgvYXuZiB9vkIohQgeeGweX+53UW X-Received: by 2002:a05:6402:204d:b0:4fc:eee9:417 with SMTP id bc13-20020a056402204d00b004fceee90417mr516402edb.18.1680807825334; Thu, 06 Apr 2023 12:03:45 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1680807825; cv=none; d=google.com; s=arc-20160816; b=V3WkHH6xVgbuTrXA+Iknm/842qcbkEVXBAUDRpqmkmx1deCOP+Y3HcwFmXy6nBpFhb SDV3BiB0qBIumzB3wIW/wFSx+yj5Nyv4nagA9W+eL0ozRfmbXTqNze7W4OQKYwNriKcp mmcfO3uThoTpuqU9Tgdjz8HFq/nG7JOXtqKZ323GCV8g0UGpyNLzZDsXSMYDOMAfRni8 dMnOO0WoaytTQTO7L5bLVArQSjtBZduNyZ+N/dFgCOEKwJiKDzoxe02CCVQfVDtv/3H+ qPFGOnRp2qO3GSrUU3ZUOpj3LIKcVwljdPWmXNE/cDUtI5tT5rTqwbAaAXEgxgPf6oa5 LdCQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:cc:to:from:subject:message-id:references :mime-version:in-reply-to:date:dkim-signature; bh=lY1ByN87FMvQLmIB6FmZa+RzwBjVh5nyLSYhKEEms/o=; b=SaxryjBdGTkd5psDHIiaHXHuIrAux8vFKOA4qUbWrqvnFifo0KV0nwHU0d1xcbjII7 uOr8PVM7c7ysH/nEL4u/cmqZYKCDB868SMK742jUpiH8lI0X0O/1GQhnLyTT2YCTLs8G LaRML+vlt5EiTdQzAqvjdF3k+wrsWvwsJOGph4041dkUuMluHPh8TUX6OrfVGeUho+Xc wliLVPWg4x6ZUGMTSyux78V8DqwusHC4993jFhAEPDM9YvJAXUhcnj7ccRgCz0Is4OJY R+KnHHRQ+o4hprnGjYzkTUxUO1JvLgXZk9tOaCqc/R+fFpdFsVmKWC9V1nVGwRWMpTk4 eF0Q== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@google.com header.s=20210112 header.b=TXJhoFce; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id q18-20020aa7d452000000b004fd2a8b4962si1672853edr.132.2023.04.06.12.03.20; Thu, 06 Apr 2023 12:03:45 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@google.com header.s=20210112 header.b=TXJhoFce; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S240141AbjDFTBO (ORCPT + 99 others); Thu, 6 Apr 2023 15:01:14 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:55290 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S240342AbjDFTBG (ORCPT ); Thu, 6 Apr 2023 15:01:06 -0400 Received: from mail-il1-x14a.google.com (mail-il1-x14a.google.com [IPv6:2607:f8b0:4864:20::14a]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id AA24E4217 for ; Thu, 6 Apr 2023 12:01:02 -0700 (PDT) Received: by mail-il1-x14a.google.com with SMTP id s6-20020a056e02216600b003264c778ef1so13306585ilv.23 for ; Thu, 06 Apr 2023 12:01:02 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20210112; t=1680807662; h=cc:to:from:subject:message-id:references:mime-version:in-reply-to :date:from:to:cc:subject:date:message-id:reply-to; bh=lY1ByN87FMvQLmIB6FmZa+RzwBjVh5nyLSYhKEEms/o=; b=TXJhoFceFs9wdYTRZd708YmwDXv6ZmJEZM5qsCVnFNFux6VSIy2sN485OdoLj6gH/u AQsSA/pqWjyYGM48tvaIncpfU2OLAUpCMQfGEUljMQY32VJVtir3KfI0/oLx5XXuijgt IdQDFo/dXt9qgNaakCRBJpEPF2lgHkdbMkFeyywUgZbfu/OiLuvJ3B+dRHj3/Osu3wFs Igv3FoQJ+xdCyHBUlOkjbozloyiEts0oRkMIvsUAEiq5xM+8ae/xA8FEMfg2w3bV7nHX XXgsLfahva+s2fFRR2U9HW32kdVcssWxj7eIV8JYkxojb7lCllY002RCrgMUSAo+vdRi BYJA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; t=1680807662; h=cc:to:from:subject:message-id:references:mime-version:in-reply-to :date:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=lY1ByN87FMvQLmIB6FmZa+RzwBjVh5nyLSYhKEEms/o=; b=kRYGlyjec6IOgdNQgx/U0dAKkeOCwoVLA/hwI5e4x+AKsxRld1HcmjJSYwSjhOjF7T 00T4UPTBwZZptagQ/8PzZiweu85erJpKFS3UC1xgpWfGJiR58fAEBa6ZleeAQaxKuopc 4glkW6S0wRwFM9zoh71l3dxu+DA2BPb+bpDteBMY/8W5HaW1KUwGafAf1wSmUrb0S9eR lXZErpUN6ELuluWg/E8uwsa3bHgm5buvgy9QwuSJWAXlndsmnhZpisPzT0BRDzwAKLfc I+y2UpuvN+Hfryr6iPgFwkOC6mearMB2QnnfiWGJT7CwghG6MP29XwBd1RQLdBhVWac6 i+xA== X-Gm-Message-State: AAQBX9dRPsl6Y0XbSAVlX6vJLSaN4bptSikWuKN2E+RrHRMsGEgoUthg y67j+qWEryI9AJRYWg171NvIM4lkjDeDv1g= X-Received: from allenwebb.c.googlers.com ([fda3:e722:ac3:cc00:2b:ff92:c0a8:12e8]) (user=allenwebb job=sendgmr) by 2002:a02:8503:0:b0:3a9:75c9:da25 with SMTP id g3-20020a028503000000b003a975c9da25mr5548851jai.1.1680807662053; Thu, 06 Apr 2023 12:01:02 -0700 (PDT) Date: Thu, 6 Apr 2023 14:00:23 -0500 In-Reply-To: <20230406190030.968972-1-allenwebb@google.com> Mime-Version: 1.0 References: <20221219204619.2205248-1-allenwebb@google.com> <20230406190030.968972-1-allenwebb@google.com> X-Mailer: git-send-email 2.40.0.577.gac1e443424-goog Message-ID: <20230406190030.968972-5-allenwebb@google.com> Subject: [PATCH v10 04/11] module.h: MODULE_DEVICE_TABLE for built-in modules From: Allen Webb To: "linux-modules@vger.kernel.org" , "linux-usb@vger.kernel.org" , "linux-kernel@vger.kernel.org" Cc: gregkh@linuxfoundation.org, mcgrof@kernel.org, christophe.leroy@csgroup.eu, nick.alcock@oracle.com, Allen Webb X-Spam-Status: No, score=-7.7 required=5.0 tests=DKIMWL_WL_MED,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_NONE, SPF_HELO_NONE,SPF_PASS,USER_IN_DEF_DKIM_WL autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1752410910230946689?= X-GMAIL-MSGID: =?utf-8?q?1762454746147667922?= Implement MODULE_DEVICE_TABLE for build-in modules to make it possible to generate a builtin.alias file to complement modules.alias. Signed-off-by: Allen Webb --- include/linux/module.h | 36 +++++++++++++++++++++++++++++------- 1 file changed, 29 insertions(+), 7 deletions(-) diff --git a/include/linux/module.h b/include/linux/module.h index 4435ad9439ab..b1cb12e06996 100644 --- a/include/linux/module.h +++ b/include/linux/module.h @@ -237,14 +237,36 @@ extern void cleanup_module(void); /* What your module does. */ #define MODULE_DESCRIPTION(_description) MODULE_INFO(description, _description) -#ifdef MODULE -/* Creates an alias so file2alias.c can find device table. */ +/* + * Creates an alias so file2alias.c can find device table. + * + * Use this in cases where a device table is used to match devices because it + * surfaces match-id based module aliases to userspace for: + * - Automatic module loading through modules.alias. + * - Tools like USBGuard which block devices based on policy such as which + * modules match a device. + * + * The only use-case for built-in drivers today is to enable userspace to + * prevent / allow probe for devices on certain subsystems even if the driver is + * already loaded. An example is the USB subsystem with its authorized_default + * sysfs attribute. For more details refer to the kernel's Documentation for USB + * about authorized_default. + * + * The module name is included in the alias for two reasons: + * - It avoids creating two aliases with the same name for built-in modules. + * Historically MODULE_DEVICE_TABLE was a no-op for built-in modules, so + * there was nothing to stop different modules from having the same device + * table name and consequently the same alias when building as a module. + * - The module name is needed by files2alias.c to associate a particular + * device table with its associated module for built-in modules since + * files2alias would otherwise see the module name as `vmlinuz.o`. + */ #define MODULE_DEVICE_TABLE(type, name) \ -extern typeof(name) __mod_##type##__##name##_device_table \ - __attribute__ ((unused, alias(__stringify(name)))) -#else /* !MODULE */ -#define MODULE_DEVICE_TABLE(type, name) -#endif +extern void *CONCATENATE( \ + CONCATENATE(__mod_##type##__##name##__, \ + __KBUILD_MODNAME), \ + _device_table) \ + __attribute__ ((unused, alias(__stringify(name)))) /* Version of form [:][-]. * Or for CVS/RCS ID version, everything but the number is stripped. From patchwork Thu Apr 6 19:00:24 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Allen Webb X-Patchwork-Id: 80409 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:b0ea:0:b0:3b6:4342:cba0 with SMTP id b10csp1251744vqo; Thu, 6 Apr 2023 12:24:08 -0700 (PDT) X-Google-Smtp-Source: AKy350ZkyhkXAneTnTj2OC+UL131jHTMplPkYDGaWC3ReZk8j6+pINOmf4pPV7Myc9MQz0rowotO X-Received: by 2002:a17:903:183:b0:1a1:e33f:d567 with SMTP id z3-20020a170903018300b001a1e33fd567mr278972plg.52.1680809048214; Thu, 06 Apr 2023 12:24:08 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1680809048; cv=none; d=google.com; s=arc-20160816; b=rfXrBuUzmkPJWN4xE/I559hbMuPNUyDhoLgyD3R9o/KLidZg88Ib0JRZM7yh3xY/5k vpP5NZwj7zyYuKXrtSOabB1PE77u12AZBNCvusSJa0Fsr5XQow1TG+8wdyvelkTvIltd YV3AOJEmlrEd0EmzRcnp9ZeqMO0n9Tsr8HitMHrvHAmooC9dByWe1TPMCdYGNHITn5sg +kFNo7g3b/vBWB16voTAcgYlUojHW9lXg8SrqDtB+kZKyxO9felidLTKKPx63ZElSp/O gGj6G9oORhXOlGabRspGb0LwfIOv4+Jl/gqlFM0X1Oj8aZ38bLQ+D7Vhkr06cwvSvJrQ W2xg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:cc:to:from:subject:message-id:references :mime-version:in-reply-to:date:dkim-signature; bh=FEZbsR+WTyUtWxubualsRcS33WiF75x8OXTLlDIM76E=; b=kqhqy9sdhwxPtN5NzVN/EXCiM8NXzf2lvJVW0hKguc9jB0EEuq7g8AB8psWKCLC8Wk vYMhIvl/hFg9pHpjAPWOZMAhG5/ZG87/uZ9CLXoGvYb0BAp6YSJTxKvepY/Ej1BcMqgd bjtpNNoMH8nkjxC7hb0P4vECIuEHWjQsF+08XyBN9kj+1riF0Hlnm72JLE7raQ1CsMON lMmHQPRf66Vvnkrzs0WU5jl90XsAoKAk+Tcc3tPAtLa/p2OD5f2Aq/ZMFw93dxSJpqYk vVCa8ivxfQ+d2038ZSxr23lgArblXWdQEscLRN00k/yX2s6CW6tAae7YA19vNA8ZOhR7 RTug== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@google.com header.s=20210112 header.b=D81pJQDC; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id f16-20020a63f110000000b004fbc2116e0esi2017708pgi.205.2023.04.06.12.23.56; Thu, 06 Apr 2023 12:24:08 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@google.com header.s=20210112 header.b=D81pJQDC; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S240407AbjDFTB0 (ORCPT + 99 others); Thu, 6 Apr 2023 15:01:26 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:55608 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S240376AbjDFTBI (ORCPT ); Thu, 6 Apr 2023 15:01:08 -0400 Received: from mail-il1-x14a.google.com (mail-il1-x14a.google.com [IPv6:2607:f8b0:4864:20::14a]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 8712459F2 for ; Thu, 6 Apr 2023 12:01:03 -0700 (PDT) Received: by mail-il1-x14a.google.com with SMTP id w14-20020a056e0213ee00b0032827955ae6so1096699ilj.7 for ; Thu, 06 Apr 2023 12:01:03 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20210112; t=1680807663; h=cc:to:from:subject:message-id:references:mime-version:in-reply-to :date:from:to:cc:subject:date:message-id:reply-to; bh=FEZbsR+WTyUtWxubualsRcS33WiF75x8OXTLlDIM76E=; b=D81pJQDCQ+OdL291Z2IZ2aoLcZ9JSdF//vAX5266oVAnQZPAsb2ROsi95KVjKK3wKl XbpTpcSS49IV425LJMR5r61TCIqtP2EcrXEcJYbsOu8cFWo+BVrf6iH+dJ58GpAVEbGn Ob0KC9VY5azkYE4xJEOA4ueXQijtPJP+hpJhW/YwaW4aQyUwR3vMc7NqkaFbDsODU7Nw /7C7nADEmWmY3+IZXHXTYCeVpPUBnR7rp5s6E1NNNGgXR1+Bt8XYVSPcNp7Zl8/rSVHw Qsi4OfLOzlOEZEGuq+ld/NjtkVhfX4p3akpLLAcW1NwdJOuSYjjL4pHgWvhxnmu7Be9V Pzag== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; t=1680807663; h=cc:to:from:subject:message-id:references:mime-version:in-reply-to :date:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=FEZbsR+WTyUtWxubualsRcS33WiF75x8OXTLlDIM76E=; b=ReQxv6iDvJBVrcEvXr3968+QCk+SMPvfxvZIOQJdlYHMw0t/2IZdsYnR/xFTrbCbaV HE73Tzm+8Ac37Pha1paWkuMJ/rl83qKdvk+ZMjLCtkM6wsfh87lt7UkIMHsgyiPI1v6p LAbRzj36FPk7X5XqY/fRLpwaOTNQgrUXNacWDKt6Zv7AQUh0i4crm+stoaPuk1Q9TjN0 G658feq/+dkIhS5yu3yGv7wFmVIlKb4RLqVbgoA5cf2vYRFHbVI9SIIMvlzs3R+q+yoJ TWgJGtdhcBNIiZf8kadjmfCU126yEl36kw6n0pmCEJXCxcKTV/C76nK2/X9BxpTwoWyQ gR4w== X-Gm-Message-State: AAQBX9crTph0HvITb2PdcoA7VH0rLXdGHCchhYSumop+qybkZwudS1WG 3hhdWP8vGe1gFyfrmIk8dr20tO8mRqIW5Hs= X-Received: from allenwebb.c.googlers.com ([fda3:e722:ac3:cc00:2b:ff92:c0a8:12e8]) (user=allenwebb job=sendgmr) by 2002:a02:2a45:0:b0:406:c43f:6320 with SMTP id w66-20020a022a45000000b00406c43f6320mr4089761jaw.0.1680807662877; Thu, 06 Apr 2023 12:01:02 -0700 (PDT) Date: Thu, 6 Apr 2023 14:00:24 -0500 In-Reply-To: <20230406190030.968972-1-allenwebb@google.com> Mime-Version: 1.0 References: <20221219204619.2205248-1-allenwebb@google.com> <20230406190030.968972-1-allenwebb@google.com> X-Mailer: git-send-email 2.40.0.577.gac1e443424-goog Message-ID: <20230406190030.968972-6-allenwebb@google.com> Subject: [PATCH v10 05/11] modpost: Track module name for built-in modules From: Allen Webb To: "linux-modules@vger.kernel.org" , "linux-usb@vger.kernel.org" , "linux-kernel@vger.kernel.org" Cc: gregkh@linuxfoundation.org, mcgrof@kernel.org, christophe.leroy@csgroup.eu, nick.alcock@oracle.com, Allen Webb X-Spam-Status: No, score=-7.7 required=5.0 tests=DKIMWL_WL_MED,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_NONE, SPF_HELO_NONE,SPF_PASS,USER_IN_DEF_DKIM_WL autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1752410880954012248?= X-GMAIL-MSGID: =?utf-8?q?1762456028465526756?= Keep track of the module name when processing match table symbols. Signed-off-by: Allen Webb --- scripts/mod/file2alias.c | 39 +++++++++++++++++++++++++++++++++++---- scripts/mod/modpost.h | 1 + 2 files changed, 36 insertions(+), 4 deletions(-) diff --git a/scripts/mod/file2alias.c b/scripts/mod/file2alias.c index 91c2e7ba5e52..b392d51c3b06 100644 --- a/scripts/mod/file2alias.c +++ b/scripts/mod/file2alias.c @@ -28,6 +28,7 @@ typedef Elf64_Addr kernel_ulong_t; #include #endif +#include #include #include @@ -1540,9 +1541,9 @@ void handle_moddevtable(struct module *mod, struct elf_info *info, Elf_Sym *sym, const char *symname) { void *symval; - char *zeros = NULL; - const char *name, *identifier; - unsigned int namelen; + char *zeros = NULL, *modname_str = NULL; + const char *name, *identifier, *modname; + unsigned int namelen, modnamelen; /* We're looking for a section relative symbol */ if (!sym->st_shndx || get_secindex(info, sym) >= info->num_sections) @@ -1552,7 +1553,12 @@ void handle_moddevtable(struct module *mod, struct elf_info *info, if (ELF_ST_TYPE(sym->st_info) != STT_OBJECT) return; - /* All our symbols are of form __mod____device_table. */ + /* + * All our symbols are either of form + * __mod____device_table + * or + * __mod_____kmod__device_table + */ if (strncmp(symname, "__mod_", strlen("__mod_"))) return; name = symname + strlen("__mod_"); @@ -1564,8 +1570,30 @@ void handle_moddevtable(struct module *mod, struct elf_info *info, identifier = strstr(name, "__"); if (!identifier) return; + modnamelen = namelen; namelen = identifier - name; + /* + * In the vmlinuz.o case we want to handle __kmod_ so aliases from + * builtin modules are attributed correctly. + */ + modname = strstr(identifier + 2, "__kmod_"); + if (modname) { + modname += strlen("__kmod_"); + modnamelen -= (modname - name) + strlen("_device_table"); + modname_str = malloc(modnamelen + 1); + /* We don't want to continue if the allocation fails. */ + assert(modname_str); + memcpy(modname_str, modname, modnamelen); + modname_str[modnamelen] = '\0'; + } + + if (modname_str) + modname = modname_str; + else + modname = mod->name; + mod->builtin_name = modname; + /* Handle all-NULL symbols allocated into .bss */ if (info->sechdrs[get_secindex(info, sym)].sh_type & SHT_NOBITS) { zeros = calloc(1, sym->st_size); @@ -1597,6 +1625,9 @@ void handle_moddevtable(struct module *mod, struct elf_info *info, } } free(zeros); + mod->builtin_name = NULL; + if (modname_str) + free(modname_str); } /* Now add out buffered information to the generated C source */ diff --git a/scripts/mod/modpost.h b/scripts/mod/modpost.h index 1178f40a73f3..34fe5fc0b02c 100644 --- a/scripts/mod/modpost.h +++ b/scripts/mod/modpost.h @@ -128,6 +128,7 @@ struct module { struct list_head missing_namespaces; // Actual imported namespaces struct list_head imported_namespaces; + const char *builtin_name; char name[]; }; From patchwork Thu Apr 6 19:00:25 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Allen Webb X-Patchwork-Id: 80398 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:b0ea:0:b0:3b6:4342:cba0 with SMTP id b10csp1240341vqo; Thu, 6 Apr 2023 12:03:51 -0700 (PDT) X-Google-Smtp-Source: AKy350Yupv/+eOc7qPuf3zAlAsm9Evss1GmyY0FW/DIzKIHHUKeIC+lln1GOozIakQDAx7zdd8Nt X-Received: by 2002:a17:906:d045:b0:931:624b:6804 with SMTP id bo5-20020a170906d04500b00931624b6804mr7386906ejb.33.1680807830801; Thu, 06 Apr 2023 12:03:50 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1680807830; cv=none; d=google.com; s=arc-20160816; b=XTF26LjHjxr2iYE8Y/fbVFNX3xvOON1/xYmsXYaT+D6mbVAl5XwvXDDI6RvIXQboWB tsLhV+ceLBFKOk6enPWvUF3gum96ZityU5z89gzUvsxl/B4drPCKGtXeZnt4s0FSP9Cd ul0TqIFY/Isl7My0kDezW2N0HN4uK3Zpn882ebQYwOKJMK/TtnV0GLAi2J5SnOhq/ut2 KRQSXQ8oJIPIZoso6pa/5JOHNRfM9t6NQROH7cgEOlSpaf9TyQV2b5vdHvkXa1ccL/oE OQViC2jyPSIR5Ao/wHI7lsBcR2gG6W2/8Xvr4cmmJBMRegtp78WhblTj/zl65CRXFu26 9ptA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:cc:to:from:subject:message-id:references :mime-version:in-reply-to:date:dkim-signature; bh=lPtoJrKBH3N2nk7pm0WBiOte1w3zyXs+2rCz5/qKsmI=; b=CsnHxiosAMzudO+GsPBYy5n7rtqJ8S7Yh+OQqVXcU8aL5DDM9xGGPFMsiNYx7057Li BY+41zS3t2TDVXr3RC7lUgOFzSCAQyc8KKdt4ZB1j2XBuUEYRAbOyMeAw64iKeb1Clg5 mjNsfvZEKhYfQueu6xlVGUK86JPIhhNfGkeyT6ejqXuM9op1o9LmnV2cFTN/wdKWdVcW Om8S2oQVepCbCj+7zkq1dcPC5jAUc74GYgpu9Pv11eabT0n1+VXOc3+NvZ+9q0qg4OG2 uRndvf+0D89jLxSWJoAladfUQ5SZ5o9Z2Wa6r56GEBt27sle/q7HQ/XGAiFQcWN4Xbt+ E1XQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@google.com header.s=20210112 header.b=hUyI2+lL; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id by5-20020a0564021b0500b004fd2b154c18si484277edb.500.2023.04.06.12.03.22; Thu, 06 Apr 2023 12:03:50 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@google.com header.s=20210112 header.b=hUyI2+lL; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S240481AbjDFTBi (ORCPT + 99 others); Thu, 6 Apr 2023 15:01:38 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:56498 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S240401AbjDFTBX (ORCPT ); Thu, 6 Apr 2023 15:01:23 -0400 Received: from mail-io1-xd4a.google.com (mail-io1-xd4a.google.com [IPv6:2607:f8b0:4864:20::d4a]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id D2BB186A5 for ; Thu, 6 Apr 2023 12:01:04 -0700 (PDT) Received: by mail-io1-xd4a.google.com with SMTP id b12-20020a6bb20c000000b007585c93862aso24919213iof.4 for ; Thu, 06 Apr 2023 12:01:04 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20210112; t=1680807663; h=cc:to:from:subject:message-id:references:mime-version:in-reply-to :date:from:to:cc:subject:date:message-id:reply-to; bh=lPtoJrKBH3N2nk7pm0WBiOte1w3zyXs+2rCz5/qKsmI=; b=hUyI2+lLsq229AiQVyYaVj59ugHM5SqIn1EqV+za7saQ4CQrQuFyLKiSrN7COMM2wq 2hzLDZ2jSzvMQhrePCF1mFnp6bOK6gTDVT0Sdcs2Gt7pFRXg2/Y0D2mRwnmeW1c2HRrt tHx/vzeR2O6es87fnmCvObeGTqohq0bevkCC/52BlAmGKwhn06UDwDJWkrQCFxeG/cO5 k8LwrAhU2HIGN0M4vWvREdfDV5qSrHzRBdVCMLi/4Cg+v91i8FqB/AbFr/DlchYSeU10 AEHuG4UVpMbPj6YBUDNyGrUXQYIVmo4729n+mECFyhng3QYE5BBZHs5IX6caMnqNoXWo cAXA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; t=1680807663; h=cc:to:from:subject:message-id:references:mime-version:in-reply-to :date:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=lPtoJrKBH3N2nk7pm0WBiOte1w3zyXs+2rCz5/qKsmI=; b=mK/5F/8zDl+mU5NkbjOHhBYPYRnQ4pHCk0rnTlJXNMxXviJYrjksUzAKBuLf6zs/GX RsrVsuOobuzlpv9phoGH8Ayf1M1traGKovXdcKySQ3rqfI6MnOK47kwe3Uhmyqw7H6Wi M8KSYYbFNxMFSmh/tGrRWfcTEI4DQ5rExVnCXeGxfP+lTKrhJVlcjEXSD5ujGbPOtbll mqnhHsqWTl4EP9x/jpwTR3xRWxEvds6ZGRXYVIacWAbM9XmmG+BTer3qVmXsUTRCgyXH CWvlwkoa5IeFZt/bYo5RPZNveDXsxIsTUWT232mI5ovfuoF5y4c3dsGKc7z89GuorquS kgpA== X-Gm-Message-State: AAQBX9eVaZgeR/XdTJ+rhX8iU+6E3+cNQHmFD+5gpRKRzH3NsZQRltyF iQt5Y8xQeBLJU+VkpHG6bynBM2Bvt77hp04= X-Received: from allenwebb.c.googlers.com ([fda3:e722:ac3:cc00:2b:ff92:c0a8:12e8]) (user=allenwebb job=sendgmr) by 2002:a02:85ae:0:b0:3ec:dc1f:12dd with SMTP id d43-20020a0285ae000000b003ecdc1f12ddmr6262286jai.6.1680807663728; Thu, 06 Apr 2023 12:01:03 -0700 (PDT) Date: Thu, 6 Apr 2023 14:00:25 -0500 In-Reply-To: <20230406190030.968972-1-allenwebb@google.com> Mime-Version: 1.0 References: <20221219204619.2205248-1-allenwebb@google.com> <20230406190030.968972-1-allenwebb@google.com> X-Mailer: git-send-email 2.40.0.577.gac1e443424-goog Message-ID: <20230406190030.968972-7-allenwebb@google.com> Subject: [PATCH v10 06/11] modpost: Add -b option for emitting built-in aliases From: Allen Webb To: "linux-modules@vger.kernel.org" , "linux-usb@vger.kernel.org" , "linux-kernel@vger.kernel.org" Cc: gregkh@linuxfoundation.org, mcgrof@kernel.org, christophe.leroy@csgroup.eu, nick.alcock@oracle.com, Allen Webb X-Spam-Status: No, score=-7.7 required=5.0 tests=DKIMWL_WL_MED,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_NONE, SPF_HELO_NONE,SPF_PASS,USER_IN_DEF_DKIM_WL autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1752410891894371247?= X-GMAIL-MSGID: =?utf-8?q?1762454752123945199?= This adds a command line option for writing the match-id based built-in aliases to a file. A future patch extends file2alias.c to support this command. The -b option accepts the output path as a parameter and requires vmlinuz.o to be one of the input files for the aliases to be found. Signed-off-by: Allen Webb --- scripts/mod/modpost.c | 30 ++++++++++++++++++++++++++++-- scripts/mod/modpost.h | 1 + 2 files changed, 29 insertions(+), 2 deletions(-) diff --git a/scripts/mod/modpost.c b/scripts/mod/modpost.c index efff8078e395..2e452aec0fc6 100644 --- a/scripts/mod/modpost.c +++ b/scripts/mod/modpost.c @@ -2173,6 +2173,19 @@ static void write_if_changed(struct buffer *b, const char *fname) write_buf(b, fname); } +/* Write the builtin aliases to the specified file. */ +static void write_builtin(const char *fname) +{ + struct buffer buf = { }; + struct module *mod; + + list_for_each_entry(mod, &modules, list) + buf_write(&buf, mod->modalias_buf.p, mod->modalias_buf.pos); + + write_if_changed(&buf, fname); + free(buf.p); +} + static void write_vmlinux_export_c_file(struct module *mod) { struct buffer buf = { }; @@ -2329,13 +2342,23 @@ int main(int argc, char **argv) { struct module *mod; char *missing_namespace_deps = NULL; - char *dump_write = NULL, *files_source = NULL; + char *builtin_write = NULL, *dump_write = NULL, *files_source = NULL; int opt; LIST_HEAD(dump_lists); struct dump_list *dl, *dl2; - while ((opt = getopt(argc, argv, "ei:mnT:o:awENd:")) != -1) { + while ((opt = getopt(argc, argv, "b:ei:mnT:o:awENd:")) != -1) { switch (opt) { + case 'b': + /* + * Writes the match-id based built-in module aliases to + * the specified path. + * + * vmlinuz.o needs to be one of the input files for the + * aliases to be found. + */ + builtin_write = optarg; + break; case 'e': external_module = true; break; @@ -2398,6 +2421,9 @@ int main(int argc, char **argv) write_mod_c_file(mod); } + if (builtin_write) + write_builtin(builtin_write); + if (missing_namespace_deps) write_namespace_deps_files(missing_namespace_deps); diff --git a/scripts/mod/modpost.h b/scripts/mod/modpost.h index 34fe5fc0b02c..c55a6aeb46bf 100644 --- a/scripts/mod/modpost.h +++ b/scripts/mod/modpost.h @@ -123,6 +123,7 @@ struct module { bool has_init; bool has_cleanup; struct buffer dev_table_buf; + struct buffer modalias_buf; char srcversion[25]; // Missing namespace dependencies struct list_head missing_namespaces; From patchwork Thu Apr 6 19:00:26 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Allen Webb X-Patchwork-Id: 80404 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:b0ea:0:b0:3b6:4342:cba0 with SMTP id b10csp1249978vqo; Thu, 6 Apr 2023 12:20:37 -0700 (PDT) X-Google-Smtp-Source: AKy350anPp+1lbUkb5YV7adH8IfSAnyGfn6stFrdm1PVg7hlBaTw5XiS8AiOB0MjVzVkOPvvR9LU X-Received: by 2002:a05:6402:5143:b0:4fb:953d:c3d0 with SMTP id n3-20020a056402514300b004fb953dc3d0mr638898edd.20.1680808837409; Thu, 06 Apr 2023 12:20:37 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1680808837; cv=none; d=google.com; s=arc-20160816; b=cBH8zlKTcasYcdQGeWLaIFQfL1pJnE4GeTSCtyvSoqVz5di8h21FW7rQHIcQBSirTV CLkdTw33VumV1VR1lTutzpWOsPxwLyVF29jipX015MP/MPhF7CIaOCKChPUoC6J+TNQF WkZqji5JB+MlAy0f6jsoAOJhyimCQh0IQ8bK/AuPo7tH07BbVJjqhriECcVEwc/x2Xxg X3+34yEOpetlmHKCDX3VbL9u4EhcD04ctU8iBVn9Aqw5EZX+Q2W+wA5QGiQzT13d2SL8 ydK5fKXy8yD+WX24YOPUyCXCo0wFpIjiSFHOOBxPpIAfLVvNAxs0pykzt83LUFgT6/sE tyyA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:cc:to:from:subject:message-id:references :mime-version:in-reply-to:date:dkim-signature; bh=Bt77I86eFgSbNaHK2t0i9/m/bTrUBRuYsHv7CbhjIr4=; b=j2y4F4pKKRMxm1cTKLNQJ9lktjtcrbn5ZGO7dLzqXaKVu6yfF9Rwc+KQIgGWgHqrrX bZpCnwzcBzuD19ffP6c245oY5k6Z5zahZnZ7x/ZAbPmoCuq6NgryAMkZl1vmTH/bnXPo QqHx9eD/kB6OR/azuTN8mrmicmPcZUtQSUj0GMU9fhbQkMdEN7SHktJ77FkSfcFglIad lyF1fbB2LwMgHUpv0MUa5neF7ZawoyyYQCU9Dw3mfzzJGcePOEatZPSjvCeLocBM61ct GT61BIsA6STpyZvDYCesBIgpjirgJdo+jUyB3zxx4fGA+e5cXzHVlNT+2ow149QASQhC KCEQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@google.com header.s=20210112 header.b=gGaKPKfl; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id qf18-20020a1709077f1200b00924513630a6si1958336ejc.387.2023.04.06.12.20.12; Thu, 06 Apr 2023 12:20:37 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@google.com header.s=20210112 header.b=gGaKPKfl; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S240458AbjDFTBr (ORCPT + 99 others); Thu, 6 Apr 2023 15:01:47 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:56804 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S240415AbjDFTB2 (ORCPT ); Thu, 6 Apr 2023 15:01:28 -0400 Received: from mail-io1-xd49.google.com (mail-io1-xd49.google.com [IPv6:2607:f8b0:4864:20::d49]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id C0D069EE1 for ; Thu, 6 Apr 2023 12:01:05 -0700 (PDT) Received: by mail-io1-xd49.google.com with SMTP id c5-20020a6b4e05000000b007601d480935so5655456iob.10 for ; Thu, 06 Apr 2023 12:01:05 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20210112; t=1680807665; h=cc:to:from:subject:message-id:references:mime-version:in-reply-to :date:from:to:cc:subject:date:message-id:reply-to; bh=Bt77I86eFgSbNaHK2t0i9/m/bTrUBRuYsHv7CbhjIr4=; b=gGaKPKflAxPJskJy8MYWIZ1zGy8JetUF3tcjeHXdaxT9RttPBdGV08CwKIrPIo+1+v GdrlN+UenxsaTd6j37BEg+IeE8RAXAb1nZvuujxF1SDejaQ6L5VlOT1mPFNxmzdShJ42 jWDSXooi1wn60L0/ZPaJqCSHCabEVM5k2IuBzu+3e1Bjl45I1n69jie8qj9ZKPhH3FAv 6nUSYGmVucJp1xtsyijza3z9sodintasi2zjYpdAdjOZjD04JaBOCzqMbvksTqMA21+e HsOsDewz6OvWSPAX4YEGOl6qFQS4nhG23kRhNad8SEYLTI9+httLSlZo5osesgMiNws/ 7fhA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; t=1680807665; h=cc:to:from:subject:message-id:references:mime-version:in-reply-to :date:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=Bt77I86eFgSbNaHK2t0i9/m/bTrUBRuYsHv7CbhjIr4=; b=hgmD8GFY8/8qgXgq2uZ0bWThU2kOVgnKNwi+SFEc/mUJ9g21wSx/wUxSEv3BwxPGGZ TLWFiVbssm5/9TxY3lSKurGu7nVnVINZncUGWYqRa5jCoRLMP8IbId7GptuHuQNggFIH phgLH7XIV4PK3YqJh/o6I3I9fsApVOUz+pGF6BaYZ9w26dsT3/AdnVPoO0kdmZLviQDi dBF21Fe4P59blGnScqRVxhwP8GaxEHEvr6kptfIWSvXkXEV/u0WabPM2Xsccx4U2Fz+0 KLL1Txmz7c+a6Oyj/+1QV47WyDLPQdDHBKp+xvzDs+fYLpXntdBkg9aEci0m8jqWZ/Tt tNEg== X-Gm-Message-State: AAQBX9e0jTAocf8s1bRfQ2hKBgg5E821rGZh7t6PnhZhGQInFDR+MHqt qG/4Nx2bggNX872W0syhb1PJ0VonN88B0Lc= X-Received: from allenwebb.c.googlers.com ([fda3:e722:ac3:cc00:2b:ff92:c0a8:12e8]) (user=allenwebb job=sendgmr) by 2002:a02:848e:0:b0:408:f9aa:a54d with SMTP id f14-20020a02848e000000b00408f9aaa54dmr5772053jai.6.1680807664892; Thu, 06 Apr 2023 12:01:04 -0700 (PDT) Date: Thu, 6 Apr 2023 14:00:26 -0500 In-Reply-To: <20230406190030.968972-1-allenwebb@google.com> Mime-Version: 1.0 References: <20221219204619.2205248-1-allenwebb@google.com> <20230406190030.968972-1-allenwebb@google.com> X-Mailer: git-send-email 2.40.0.577.gac1e443424-goog Message-ID: <20230406190030.968972-8-allenwebb@google.com> Subject: [PATCH v10 07/11] file2alias.c: Implement builtin.alias generation From: Allen Webb To: "linux-modules@vger.kernel.org" , "linux-usb@vger.kernel.org" , "linux-kernel@vger.kernel.org" Cc: gregkh@linuxfoundation.org, mcgrof@kernel.org, christophe.leroy@csgroup.eu, nick.alcock@oracle.com, Allen Webb X-Spam-Status: No, score=-7.7 required=5.0 tests=DKIMWL_WL_MED,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_NONE, SPF_HELO_NONE,SPF_PASS,USER_IN_DEF_DKIM_WL autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1752410874148235205?= X-GMAIL-MSGID: =?utf-8?q?1762455807535335215?= This populates the mod->modalias_buf with aliases for built-in modules when modpost is run against vmlinuz.o. Signed-off-by: Allen Webb --- scripts/mod/file2alias.c | 61 ++++++++++++++++++++++++++-------------- 1 file changed, 40 insertions(+), 21 deletions(-) diff --git a/scripts/mod/file2alias.c b/scripts/mod/file2alias.c index b392d51c3b06..3793d4632b94 100644 --- a/scripts/mod/file2alias.c +++ b/scripts/mod/file2alias.c @@ -233,6 +233,8 @@ static void do_usb_entry(void *symval, add_wildcard(alias); buf_printf(&mod->dev_table_buf, "MODULE_ALIAS(\"%s\");\n", alias); + if (mod->builtin_name) + buf_printf(&mod->modalias_buf, "alias %s %s\n", alias, mod->builtin_name); } /* Handles increment/decrement of BCD formatted integers */ @@ -377,9 +379,13 @@ static void do_of_entry_multi(void *symval, struct module *mod) *tmp = '_'; buf_printf(&mod->dev_table_buf, "MODULE_ALIAS(\"%s\");\n", alias); + if (mod->builtin_name) + buf_printf(&mod->modalias_buf, "alias %s %s\n", alias, mod->builtin_name); strcat(alias, "C"); add_wildcard(alias); buf_printf(&mod->dev_table_buf, "MODULE_ALIAS(\"%s\");\n", alias); + if (mod->builtin_name) + buf_printf(&mod->modalias_buf, "alias %s %s\n", alias, mod->builtin_name); } static void do_of_table(void *symval, unsigned long size, @@ -611,12 +617,18 @@ static void do_pnp_device_entry(void *symval, unsigned long size, buf_printf(&mod->dev_table_buf, "MODULE_ALIAS(\"pnp:d%s*\");\n", *id); + if (mod->builtin_name) + buf_printf(&mod->modalias_buf, "alias pnp:d%s* %s\n", + *id, mod->builtin_name); /* fix broken pnp bus lowercasing */ for (j = 0; j < sizeof(acpi_id); j++) acpi_id[j] = toupper((*id)[j]); buf_printf(&mod->dev_table_buf, "MODULE_ALIAS(\"acpi*:%s:*\");\n", acpi_id); + if (mod->builtin_name) + buf_printf(&mod->modalias_buf, "alias acpi*:%s:* %s\n", + acpi_id, mod->builtin_name); } } @@ -638,6 +650,8 @@ static void do_pnp_card_entries(void *symval, unsigned long size, const char *id = (char *)(*devs)[j].id; int i2, j2; int dup = 0; + char acpi_id[PNP_ID_LEN]; + int k; if (!id[0]) break; @@ -663,19 +677,23 @@ static void do_pnp_card_entries(void *symval, unsigned long size, } /* add an individual alias for every device entry */ - if (!dup) { - char acpi_id[PNP_ID_LEN]; - int k; - - buf_printf(&mod->dev_table_buf, - "MODULE_ALIAS(\"pnp:d%s*\");\n", id); - - /* fix broken pnp bus lowercasing */ - for (k = 0; k < sizeof(acpi_id); k++) - acpi_id[k] = toupper(id[k]); - buf_printf(&mod->dev_table_buf, - "MODULE_ALIAS(\"acpi*:%s:*\");\n", acpi_id); - } + if (dup) + continue; + + buf_printf(&mod->dev_table_buf, + "MODULE_ALIAS(\"pnp:d%s*\");\n", id); + if (mod->builtin_name) + buf_printf(&mod->modalias_buf, "alias pnp:d%s* %s\n", + id, mod->builtin_name); + + /* fix broken pnp bus lowercasing */ + for (k = 0; k < sizeof(acpi_id); k++) + acpi_id[k] = toupper(id[k]); + buf_printf(&mod->dev_table_buf, + "MODULE_ALIAS(\"acpi*:%s:*\");\n", acpi_id); + if (mod->builtin_name) + buf_printf(&mod->modalias_buf, "alias acpi*:%s:* %s\n", + acpi_id, mod->builtin_name); } } } @@ -1476,10 +1494,13 @@ static void do_table(void *symval, unsigned long size, size -= id_size; for (i = 0; i < size; i += id_size) { - if (do_entry(mod->name, symval+i, alias)) { - buf_printf(&mod->dev_table_buf, - "MODULE_ALIAS(\"%s\");\n", alias); - } + if (!do_entry(mod->name, symval + i, alias)) + continue; + buf_printf(&mod->dev_table_buf, "MODULE_ALIAS(\"%s\");\n", alias); + if (!mod->builtin_name) + continue; + buf_printf(&mod->modalias_buf, "alias %s %s\n", alias, + mod->builtin_name); } } @@ -1554,10 +1575,8 @@ void handle_moddevtable(struct module *mod, struct elf_info *info, return; /* - * All our symbols are either of form - * __mod____device_table - * or - * __mod_____kmod__device_table + * All our symbols are of form + * __mod_____kmod__device_table */ if (strncmp(symname, "__mod_", strlen("__mod_"))) return; From patchwork Thu Apr 6 19:00:27 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Allen Webb X-Patchwork-Id: 80399 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:b0ea:0:b0:3b6:4342:cba0 with SMTP id b10csp1240400vqo; Thu, 6 Apr 2023 12:03:56 -0700 (PDT) X-Google-Smtp-Source: AKy350bQiXxiK0otVbQzOsv2yUyeKegTSgQ9d/CPsuVpyIltGH2ymm5VtHCVdrtyYL6EpTKW/I4a X-Received: by 2002:a17:906:d54b:b0:920:7827:302 with SMTP id cr11-20020a170906d54b00b0092078270302mr7298217ejc.18.1680807836300; Thu, 06 Apr 2023 12:03:56 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1680807836; cv=none; d=google.com; s=arc-20160816; b=Tb+APQfGn3QGiImaD/3ykgghLbrx/RyZQJKNZWVgjkhXeLd02yP6giJejt/NiPsJPb uoKXIGEfND8/5bdU2OzLdWSz+yzt55nwVnvGsRAM454Yg16y6vni4PVNb8FCvrvBcKam AtnhWG2BflHjbKOgIFYngLP+VJNrPouNLogDu5drBtEjujGMXbtNAKcbZwfjPT2o05Ra +DkJbTyUtXkzjz5CtHayArWGzWpnHbeO22AbzDkC8lK8jofN/m5cO5o/79T2F1TY813G FsxzVfL7zg2dLsAagmJMO7699sDMMuCxxEOT6yAUwJNy/ToN/LgG5/qsHgKgGtk7FsKk pPLw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:cc:to:from:subject:message-id:references :mime-version:in-reply-to:date:dkim-signature; bh=EIFZuvNlh3Q7f5viDBmDdFqHrpvMkDaR3sC9sXOJCEg=; b=lUc24GUaCVfc4jlZuE1hQu/nYdug2QbBKUbG0fj4+mx0N0pQKKTk9i4frHtFusj9FA rSaTrXtScEVAw89GbMtIVmSn16DKIeIBW/C3CgPWQo1S3bwkDEMt+jPtBa/2aLbHTgx/ UodJMBSpzmOYMoCsgH6phiwisjajQrxdICBt5qHe1oUM8IF0+PlgRo6t5zW1tufdycw5 DQPunkmoY7zqxI0lfciT1JdAW9sKLB8PERPSwbxp9vgZcBABpc1H2q3MzAKc3T2kpg6V tQasvjN8N3WQYvCtSztRCBaxXks1ZI7Pulx0w7qIq8Z+3dA8yxN6QkNAlg+zzVzbLC72 vfZw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@google.com header.s=20210112 header.b=r6Dgw36L; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id v15-20020a17090610cf00b0093e7ed91726si1947150ejv.480.2023.04.06.12.03.31; Thu, 06 Apr 2023 12:03:56 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@google.com header.s=20210112 header.b=r6Dgw36L; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S240517AbjDFTBv (ORCPT + 99 others); Thu, 6 Apr 2023 15:01:51 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:55400 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S240422AbjDFTBa (ORCPT ); Thu, 6 Apr 2023 15:01:30 -0400 Received: from mail-il1-x14a.google.com (mail-il1-x14a.google.com [IPv6:2607:f8b0:4864:20::14a]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 599929039 for ; Thu, 6 Apr 2023 12:01:06 -0700 (PDT) Received: by mail-il1-x14a.google.com with SMTP id s1-20020a92ae01000000b0032637be81d1so15770465ilh.4 for ; Thu, 06 Apr 2023 12:01:06 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20210112; t=1680807665; h=cc:to:from:subject:message-id:references:mime-version:in-reply-to :date:from:to:cc:subject:date:message-id:reply-to; bh=EIFZuvNlh3Q7f5viDBmDdFqHrpvMkDaR3sC9sXOJCEg=; b=r6Dgw36L4ye+f7TRQYGeV5tzr0btpwq3zzgs/UuXhg7VhxHkEGdn4IEj/h2PQMM8C7 9XrmV58b2OYGBa/Itz+04VD1lyNfP8oKVgBL+a+JqxD9bgvLCoGGT9xlOS7M7FSZhlrL dgPrDoQF1NMokITcEqaqE16eLq+/TyrGqoh7gwe5XUJYnNmAwK+1UyWGWYmy5FrIUyET RBrF9++/dM7QoNSpDAic5FyiBVC0USYGzK5MLgC687r/qXuqx0qG4J/VlJlQEiwErT5K pXhpKWhcW9txjXhgoS8Wh4mQInW++2qbyZT76CeylXl4fLCs7gG2hexuiYdjLRP04I53 0URw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; t=1680807665; h=cc:to:from:subject:message-id:references:mime-version:in-reply-to :date:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=EIFZuvNlh3Q7f5viDBmDdFqHrpvMkDaR3sC9sXOJCEg=; b=SIqAvB+EmJyYJoLNVPMPNxJPrrHfnKMVo8oGjfaYR7ltMdpzbRjmYO3JyDhyTe4ykZ B7bGSavjJEtTrO+exY0Min4yuf0M/0Cca5Kw6G6u+/TFmDZo1lEFa+zguMKkg3PExBnY IytFY/6nd6CxiLjnh3lOwP0dC+5gEC3vjgxm619AYUZU61+1DRUROUC/M95X5IcQyHE7 oXtty7gcjZ0xWVpDurAmYtIT+SRjUPALtQvb4O3UBjhBCapax9cg/fhY6kpoamhnVApO l4qvFYQ9kq7S+rItJ7mFSmJtfc5n30gmJBnkmir/mzk7QPKy/8l5hi/IZ80e6k+mgw4+ eHiA== X-Gm-Message-State: AAQBX9cvLjgjgLT39Bcwtezk0LAPwuvokdUS3IdCAQFrcU8CPCzJe97y M2Z23DwFMYJgqEIIopTeSrQ2rftD+GHVcKo= X-Received: from allenwebb.c.googlers.com ([fda3:e722:ac3:cc00:2b:ff92:c0a8:12e8]) (user=allenwebb job=sendgmr) by 2002:a05:6e02:f44:b0:310:9afc:aa6 with SMTP id y4-20020a056e020f4400b003109afc0aa6mr6249545ilj.0.1680807665734; Thu, 06 Apr 2023 12:01:05 -0700 (PDT) Date: Thu, 6 Apr 2023 14:00:27 -0500 In-Reply-To: <20230406190030.968972-1-allenwebb@google.com> Mime-Version: 1.0 References: <20221219204619.2205248-1-allenwebb@google.com> <20230406190030.968972-1-allenwebb@google.com> X-Mailer: git-send-email 2.40.0.577.gac1e443424-goog Message-ID: <20230406190030.968972-9-allenwebb@google.com> Subject: [PATCH v10 08/11] build: Add modules.builtin.alias From: Allen Webb To: "linux-modules@vger.kernel.org" , "linux-usb@vger.kernel.org" , "linux-kernel@vger.kernel.org" Cc: gregkh@linuxfoundation.org, mcgrof@kernel.org, christophe.leroy@csgroup.eu, nick.alcock@oracle.com, Allen Webb X-Spam-Status: No, score=-7.7 required=5.0 tests=DKIMWL_WL_MED,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_NONE, SPF_HELO_NONE,SPF_PASS,USER_IN_DEF_DKIM_WL autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1752410806438307616?= X-GMAIL-MSGID: =?utf-8?q?1762454758136396709?= Generate modules.builtin.alias using modpost and install it with the modules. Signed-off-by: Allen Webb --- .gitignore | 1 + Makefile | 1 + scripts/Makefile.modpost | 15 +++++++++++++++ 3 files changed, 17 insertions(+) diff --git a/.gitignore b/.gitignore index 13a7f08a3d73..ddaa622bddac 100644 --- a/.gitignore +++ b/.gitignore @@ -71,6 +71,7 @@ modules.order /System.map /Module.markers /modules.builtin +/modules.builtin.alias /modules.builtin.modinfo /modules.nsdeps diff --git a/Makefile b/Makefile index a2c310df2145..43dcc1ea5fcf 100644 --- a/Makefile +++ b/Makefile @@ -1578,6 +1578,7 @@ __modinst_pre: fi @sed 's:^\(.*\)\.o$$:kernel/\1.ko:' modules.order > $(MODLIB)/modules.order @cp -f modules.builtin $(MODLIB)/ + @cp -f modules.builtin.alias $(MODLIB)/ @cp -f $(objtree)/modules.builtin.modinfo $(MODLIB)/ endif # CONFIG_MODULES diff --git a/scripts/Makefile.modpost b/scripts/Makefile.modpost index 0980c58d8afc..e3ecc17a7a19 100644 --- a/scripts/Makefile.modpost +++ b/scripts/Makefile.modpost @@ -15,6 +15,7 @@ # 2) modpost is then used to # 3) create one .mod.c file per module # 4) create one Module.symvers file with CRC for all exported symbols +# 5) create modules.builtin.alias the aliases for built-in modules # Step 3 is used to place certain information in the module's ELF # section, including information such as: @@ -63,6 +64,20 @@ modpost-args += -T $(MODORDER) modpost-deps += $(MODORDER) endif +ifneq ($(wildcard vmlinux.o),) +output-builtin.alias := modules.builtin.alias +modpost-args += -b .modules.builtin.alias.in +.modules.builtin.alias.in: $(output-symdump) + @# Building $(output-symdump) generates .modules.builtin.alias.in as a + @# side effect. + @[ -e $@ ] || $(MODPOST) -b .modules.builtin.alias.in vmlinux.o + +$(output-builtin.alias): .modules.builtin.alias.in + sort -o $@ $^ + +__modpost: $(output-builtin.alias) +endif + ifeq ($(KBUILD_EXTMOD),) # Generate the list of in-tree objects in vmlinux From patchwork Thu Apr 6 19:00:28 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Allen Webb X-Patchwork-Id: 80400 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:b0ea:0:b0:3b6:4342:cba0 with SMTP id b10csp1240491vqo; Thu, 6 Apr 2023 12:04:02 -0700 (PDT) X-Google-Smtp-Source: AKy350bHAVVIvKiaF1i0dQMrBbOn1QuIaGrl6/zhpIN+0N7KvScwRC+1Ej4xI8SbJVyJ9pU3I8Mg X-Received: by 2002:a17:906:7ce:b0:92b:6f92:7705 with SMTP id m14-20020a17090607ce00b0092b6f927705mr6802994ejc.40.1680807842286; Thu, 06 Apr 2023 12:04:02 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1680807842; cv=none; d=google.com; s=arc-20160816; b=FE5bXB8toZndk3U1lSZ8Uxyl8YEm8ojlHou0XI8g/x0vA5vBWFIRJgxQFaCaDw3NO8 G6C/vUeJ671+cABX0i1sTYRcCeXmmONShf1EKz6If5+43fH8lkU+/dsfBzs3nVoh0kIv I4N/08bFJumckCmqbTTSnntePdGtPI5qyR4t2IS2bER3hKMB7PCZRQZbAMNy59Oy3nMv nLmyWEGygRKOst2k/XzBmzyJ2PbUDCbZPuJdT0mTu2n0dkx0UZY4n/CNs1t9h41IWss6 9VjAph6aQFGUd1kA0XTv8bT7NRFi7/oBpSkohHvJufwydaLH11Gfw+wg7gXzTNf+nmp1 JvzA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:cc:to:from:subject:message-id:references :mime-version:in-reply-to:date:dkim-signature; bh=Ei4XEWjw7tArTwCoMKhp2ugctsL7jq49nRaYDRBL1Mc=; b=dHKHVaUtqc8mz+0bPYiLFh6k+hrtJol2QRCJQpED9a+jJzWn/71rakjwWg1sgAOgNP l+PECRr7eFNCpNwenRMnvA/RHong9s6/HWaEt9LJNqo5t2cR0nKO0qy3yuE57m4FG09u /0kVCx5aWfeiopEX5PbsFIW8zOZM/aq5apHAatpsxcTKAUKX9QV0NcdV1avfMi/EINab HyeMFWtiYJu42IAIVCL7VaNfPGKBEQHcLeUvFgGhEbMl9H7o72V/XkzBYutfoggSsT1u x5OcetdIQH0tBuHU6XSJafjrGpSadexyeO4rogHMDxcCvSzTjBugitiReGaQNgeXeayo N6DQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@google.com header.s=20210112 header.b=fbhRqzlG; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id d13-20020a1709064c4d00b00935ebcc14b3si1712782ejw.251.2023.04.06.12.03.37; Thu, 06 Apr 2023 12:04:02 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@google.com header.s=20210112 header.b=fbhRqzlG; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S240445AbjDFTBy (ORCPT + 99 others); Thu, 6 Apr 2023 15:01:54 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:56920 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S240424AbjDFTBb (ORCPT ); Thu, 6 Apr 2023 15:01:31 -0400 Received: from mail-io1-xd4a.google.com (mail-io1-xd4a.google.com [IPv6:2607:f8b0:4864:20::d4a]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 29EF8A5C9 for ; Thu, 6 Apr 2023 12:01:07 -0700 (PDT) Received: by mail-io1-xd4a.google.com with SMTP id g7-20020a056602242700b00758e7dbd0dbso25414962iob.16 for ; Thu, 06 Apr 2023 12:01:07 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20210112; t=1680807666; h=cc:to:from:subject:message-id:references:mime-version:in-reply-to :date:from:to:cc:subject:date:message-id:reply-to; bh=Ei4XEWjw7tArTwCoMKhp2ugctsL7jq49nRaYDRBL1Mc=; b=fbhRqzlGZlbPiWZ5IBGIy4z7rckgpL+76StH6hDf38wyBwByXbCIsFAmlVE0cVG5TK HqsTdsJmsOQJn26fMUBbDBhi697JYKpNT9cxQeU2fDWUSLG/eByrdUnKIe23vrDVZxqf ZBP1v4gu3dj1CHb/wtHjIhqoU1bMKJKU3wrEELXyN2gGsZyVLOip7UnrYagQr/ev81xN b3Bd3vKO5r1GVoi09bRFAB8/a7Y+D6JuDR595SthHnsolBMZsbGW92HOBuSfhM/J8OsN ba5cd5hdIpxcz5JXh8vvJQADy3Ad8PB/eaqfwUiX7uO/j4zE7x5OlmQhexuRZ9/HWi41 5dOw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; t=1680807666; h=cc:to:from:subject:message-id:references:mime-version:in-reply-to :date:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=Ei4XEWjw7tArTwCoMKhp2ugctsL7jq49nRaYDRBL1Mc=; b=CL0EC7BaelCRxESnylAzxu3K1VciIDWC1YF7OF+waL52iqhD3hO65vIW7oLDPTnSof SxsKbVLMNyRjjPBhTUYzjGkQG+CxqF8Ootd3WcNJF+CetmAo+9QA0trFEGvgdX++TWXt 5D0jrCh9xjh8r+kk0lFSs0LS4GTqeOvF00SBBAnQPGhknk1vflSPURZj8aF9FiP3XeoZ jwJKvX54j0aHOVl8LBSrI0rR7qSCgvSVU367sSiyAeSU1hMOvSzxA4lfPhdZvZkESKCE urrdJliAIWrnLL7Ft+GVats2CnHIEImEpFkyjle7o8K9bZnxowFM9AV7bLVvwBNgqXtA iddA== X-Gm-Message-State: AAQBX9fwjzCV4EBwGg4wRxqfpEttKaDlcxcuNF4N3FQ9pLjuH3qeSjtf qd3w8pW0FatRhtigL3R88+lUjgRTG593J7k= X-Received: from allenwebb.c.googlers.com ([fda3:e722:ac3:cc00:2b:ff92:c0a8:12e8]) (user=allenwebb job=sendgmr) by 2002:a02:2a45:0:b0:406:c43f:6320 with SMTP id w66-20020a022a45000000b00406c43f6320mr4089875jaw.0.1680807666582; Thu, 06 Apr 2023 12:01:06 -0700 (PDT) Date: Thu, 6 Apr 2023 14:00:28 -0500 In-Reply-To: <20230406190030.968972-1-allenwebb@google.com> Mime-Version: 1.0 References: <20221219204619.2205248-1-allenwebb@google.com> <20230406190030.968972-1-allenwebb@google.com> X-Mailer: git-send-email 2.40.0.577.gac1e443424-goog Message-ID: <20230406190030.968972-10-allenwebb@google.com> Subject: [PATCH v10 09/11] Documentation: Include modules.builtin.alias From: Allen Webb To: "linux-modules@vger.kernel.org" , "linux-usb@vger.kernel.org" , "linux-kernel@vger.kernel.org" Cc: gregkh@linuxfoundation.org, mcgrof@kernel.org, christophe.leroy@csgroup.eu, nick.alcock@oracle.com, Allen Webb X-Spam-Status: No, score=-7.7 required=5.0 tests=DKIMWL_WL_MED,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_NONE, SPF_HELO_NONE,SPF_PASS,USER_IN_DEF_DKIM_WL autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1752676902381167571?= X-GMAIL-MSGID: =?utf-8?q?1762454764044792396?= Update the documentation to include the presense and use case of modules.builtin.alias. Reviewed-by: Luis Chamberlain Signed-off-by: Allen Webb --- Documentation/kbuild/kbuild.rst | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/Documentation/kbuild/kbuild.rst b/Documentation/kbuild/kbuild.rst index 5202186728b4..b27c66c3ca9e 100644 --- a/Documentation/kbuild/kbuild.rst +++ b/Documentation/kbuild/kbuild.rst @@ -17,6 +17,13 @@ modules.builtin This file lists all modules that are built into the kernel. This is used by modprobe to not fail when trying to load something builtin. +modules.builtin.alias +--------------------- +This file lists all match-id based aliases for modules built into the kernel. +An example usage of the built-in aliases is to enable software such as +USBGuard to allow or block devices outside of just the vendor, product, and +device ID. This enables more flexible security policies in userspace. + modules.builtin.modinfo ----------------------- This file contains modinfo from all modules that are built into the kernel. From patchwork Thu Apr 6 19:00:29 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Allen Webb X-Patchwork-Id: 80408 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:b0ea:0:b0:3b6:4342:cba0 with SMTP id b10csp1251761vqo; Thu, 6 Apr 2023 12:24:09 -0700 (PDT) X-Google-Smtp-Source: AKy350b6nIstUw4iWftP8P9QeW//HMQx8zQq3vKSOMCgQ1H3wH2W2zaqh/7B8KWlbzO1fHKga5Mb X-Received: by 2002:a05:6a20:7b1d:b0:d9:b59c:d09e with SMTP id s29-20020a056a207b1d00b000d9b59cd09emr548610pzh.11.1680809049589; Thu, 06 Apr 2023 12:24:09 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1680809049; cv=none; d=google.com; s=arc-20160816; b=F6kj6amYjOWtAq0A3kYkdPooIwqGKpi/rF7p3SSXMAp76qVkPp2sndqtk/oPomSkeQ tUApGOkfHfhSS1u/nCPHIYVfPGkpghu68G+HF63kxdI1BIj79S51MCE54WrblOEJg0dh B9sgg4BBVTlkWppvSs1N87Q+nC3HSHCaWn4/OaeeDuy9rwL6RNAenC2I9eFGVA4e1SdS P6MABIne2ghpI7oOj302bNQekOYiVDpFHTIJ19GygEcj+kh9F9dcRFdcx4N/lCXnkvoG wnfRKDP04v1TJpaZ7rt7lF4HSCEjRCdW9QF3W71Szjy4LYvP9hNBBQD5/iQKQAWsrZct Q4rg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:cc:to:from:subject:message-id:references :mime-version:in-reply-to:date:dkim-signature; bh=M+j5aQ/96ezpNDW1vgfpLxhNNS1dVHH3UOwyvtk8Itw=; b=oAmdAXHAkYK1Xnw65V+UWvJyfmvHz27qgU2pvDCyrNgd9HHpZ3goGtOx1hA+BuRvcq GyQa3s3bIt2FsVxX3DkQZ6DdNlCi35JKa46rPAn8btShjFPNDcnhn1iemXKqWaTAl0WD 9MO0R4e+Z+RhvoBQDbNIsaXxYAZCRGPKe6IV1t9F0QU+XOSlOcJG6dwzClsDprtMJM+a gxY6oALomHyBESVy4NtFbiZFZmUmBM55dsyTiW/iOt1+APjwTh05FKup0l1BorDbrJ+x gOSkzr16XnvOds74yI+8D0nO7fm8+vB/3sf/LFFfYfTG4vXqDzbm7Eyjo6kU5X6nnjpn nZJA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@google.com header.s=20210112 header.b=HgrdJsME; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id v184-20020a6389c1000000b00513234112a7si1895733pgd.883.2023.04.06.12.23.57; Thu, 06 Apr 2023 12:24:09 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@google.com header.s=20210112 header.b=HgrdJsME; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S240543AbjDFTB4 (ORCPT + 99 others); Thu, 6 Apr 2023 15:01:56 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:55610 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S240386AbjDFTBc (ORCPT ); Thu, 6 Apr 2023 15:01:32 -0400 Received: from mail-yw1-x1149.google.com (mail-yw1-x1149.google.com [IPv6:2607:f8b0:4864:20::1149]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 86BE8AD08 for ; Thu, 6 Apr 2023 12:01:08 -0700 (PDT) Received: by mail-yw1-x1149.google.com with SMTP id 00721157ae682-54bfc4e0330so48451257b3.3 for ; Thu, 06 Apr 2023 12:01:08 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20210112; t=1680807667; h=cc:to:from:subject:message-id:references:mime-version:in-reply-to :date:from:to:cc:subject:date:message-id:reply-to; bh=M+j5aQ/96ezpNDW1vgfpLxhNNS1dVHH3UOwyvtk8Itw=; b=HgrdJsMEOQPONPSR/Gb7+Is6FMUn6IWRnMnV/yUeEnh9uu0LZ2hdI58AZun+fEfq85 56LiwK9S6fceIM6v9s3vEBVF57PerYY32kMf0s7egW/xPmg3O7NCHUhLURdTFjIkJHar fx19aLOd1cqYDPTWFpT0o7ic73WoYVXPvWcbBo6hmuKyL9rrkGVMofD+uh8lAPLyI8Rk 1xUS5G9H9IddFzzrRVUOTB7GlRX0gqwpxniORH5FrVG7jlZpVZkr7+GGgGje7u2PJxEf 9iiL8N4eQBlRopxXgJVrHAB/6K8INKutqicQk1VMw/ljc89khh1DhFrL2L+vVFKvojZk EYiw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; t=1680807667; h=cc:to:from:subject:message-id:references:mime-version:in-reply-to :date:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=M+j5aQ/96ezpNDW1vgfpLxhNNS1dVHH3UOwyvtk8Itw=; b=kNZ+ICaXVoM0yeicTjGGz1bzdVoq5j/hZE4nr4YEF+YbA+t0xdd+94zle5yNOYKN+V SKH2GYK0X/4o/jXRMGQtyCK/d7mc5+fT2TUo4rFaz/q99eGW6O7G5pz2EE0DBJd4eF1E MRZJ8hZL82vlKTjNHwTGZeqgtDRH6LvCEzvEDeYRV14BVuomSbGBRrRUpVc7gchFCyd4 oFJ3Um3+547HXFiSd3+Nzw+O7/SmcCnByhuNmrI/IL4chfVCBdFwNty0MMeXgAY+S7cB n2umPPIZ2NjPlHzxC86ZQacFIP3rIzwyV74ZjeNVe8skAwdcX3WCDDl9vd3Vs8VK6b53 qwHA== X-Gm-Message-State: AAQBX9dB1zZ8/kgsRHQo4t2O/wpAc6xf+gp5zs2LpzTIOMraJiLS1Ybh DWghkEPoiKPWJhhza1F+h31RUiuuieOopRo= X-Received: from allenwebb.c.googlers.com ([fda3:e722:ac3:cc00:2b:ff92:c0a8:12e8]) (user=allenwebb job=sendgmr) by 2002:a25:76c6:0:b0:b8b:ee74:c9d4 with SMTP id r189-20020a2576c6000000b00b8bee74c9d4mr251123ybc.12.1680807667734; Thu, 06 Apr 2023 12:01:07 -0700 (PDT) Date: Thu, 6 Apr 2023 14:00:29 -0500 In-Reply-To: <20230406190030.968972-1-allenwebb@google.com> Mime-Version: 1.0 References: <20221219204619.2205248-1-allenwebb@google.com> <20230406190030.968972-1-allenwebb@google.com> X-Mailer: git-send-email 2.40.0.577.gac1e443424-goog Message-ID: <20230406190030.968972-11-allenwebb@google.com> Subject: [PATCH v10 10/11] Documentation: Update writing_usb_driver for built-in modules From: Allen Webb To: "linux-modules@vger.kernel.org" , "linux-usb@vger.kernel.org" , "linux-kernel@vger.kernel.org" Cc: gregkh@linuxfoundation.org, mcgrof@kernel.org, christophe.leroy@csgroup.eu, nick.alcock@oracle.com, Allen Webb X-Spam-Status: No, score=-7.7 required=5.0 tests=DKIMWL_WL_MED,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_NONE, SPF_HELO_NONE,SPF_PASS,USER_IN_DEF_DKIM_WL autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1762456029957016820?= X-GMAIL-MSGID: =?utf-8?q?1762456029957016820?= Built-in modules that set id_table need to set MODULE_DEVICE_TABLE so update the documentation accordingly. Signed-off-by: Allen Webb --- Documentation/driver-api/usb/writing_usb_driver.rst | 3 +++ 1 file changed, 3 insertions(+) diff --git a/Documentation/driver-api/usb/writing_usb_driver.rst b/Documentation/driver-api/usb/writing_usb_driver.rst index 95c4f5d14052..5f38e3bd469a 100644 --- a/Documentation/driver-api/usb/writing_usb_driver.rst +++ b/Documentation/driver-api/usb/writing_usb_driver.rst @@ -128,6 +128,9 @@ single device with a specific vendor and product ID:: }; MODULE_DEVICE_TABLE (usb, skel_table); +The ``MODULE_DEVICE_TABLE`` should also be set for built-in USB drivers +that provide an id_table, so that tools like USBGuard can properly +associate devices with your driver. There are other macros that can be used in describing a struct :c:type:`usb_device_id` for drivers that support a whole class of USB From patchwork Thu Apr 6 19:00:30 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Allen Webb X-Patchwork-Id: 80401 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:b0ea:0:b0:3b6:4342:cba0 with SMTP id b10csp1240547vqo; Thu, 6 Apr 2023 12:04:08 -0700 (PDT) X-Google-Smtp-Source: AKy350aNX1o3nCd9eD1vBHOkZQ2rsVShw3awN1t64/KWWqm4UaNJOoVVhBXFltbK291b4jnm3x93 X-Received: by 2002:a17:906:a89:b0:933:9f43:5c3b with SMTP id y9-20020a1709060a8900b009339f435c3bmr8695883ejf.59.1680807848514; Thu, 06 Apr 2023 12:04:08 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1680807848; cv=none; d=google.com; s=arc-20160816; b=yyNZouKKHWrGXJSE18GKSKPZB+vaX+TDqqwPOruMJrgQzHiOGfwWiAyttsKZoFrFV9 ryL6xxknBy0+LyPZM0HOVdRgVp0sDgGH5Vxvwtcnxdz0WAg1BhLG/NCtI5I933shBL9C TLfcEqOOcH9uUkni/3G2nsfdzhOP1JtKMtC9Gvvc4qjnYoTPQMCBvhqMR0HQwK3J909i SDmxVT3c5mJK6jczgFkiJ42OZc6oF4B02nai7dG5K5+/V/P8wIp2igeKi7bdsJmtnaD4 QEpYefv7LBHqiWb33S7gMcC3Hz4ivklhjzOrLFerxEXyclC816Xhhrql0WVn749SV+sh Aorg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:cc:to:from:subject:message-id:references :mime-version:in-reply-to:date:dkim-signature; bh=lXaHngygoOShOtLfr1dWwTlpzanuSNfDsA9/IVCyMM4=; b=jicavowv5r8n5Z+bJDLnX2ou1Lr4pOBVlliX0WN/6DLpsKI1kpIqvu21swuD37qDH+ wF3VEBWZVFLqXukn8e+D2+PIJUSB0qB+4qUXQqecgCdBfC9pKcgabxOBkaKzMEhWeBqR 1pe/o6Dj1jK+/wqzLt+2m9RkeozuKEuWqG9jorA9B4Ic/FyAcWwYGccYxs8lRm88JhpO ZNAGlp7VDdTNHTzTDpFcvtWIlEf6MCA8As9XH8oXNEE2kXo5sJ6Xp67D2cCfRe3PURCN DpheaQM15qcnZ9CQJ9daiWc5rOL1XZrHsMH6J29IFlzw7m5eRNg6tnM7EMZOE243d/1V vjRA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@google.com header.s=20210112 header.b="A1qC/Zvu"; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id s13-20020a1709066c8d00b009476ce976a3si1506661ejr.130.2023.04.06.12.03.44; Thu, 06 Apr 2023 12:04:08 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@google.com header.s=20210112 header.b="A1qC/Zvu"; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S240562AbjDFTCC (ORCPT + 99 others); Thu, 6 Apr 2023 15:02:02 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:56984 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S240450AbjDFTBc (ORCPT ); Thu, 6 Apr 2023 15:01:32 -0400 Received: from mail-il1-x149.google.com (mail-il1-x149.google.com [IPv6:2607:f8b0:4864:20::149]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 8B981AD3A for ; Thu, 6 Apr 2023 12:01:09 -0700 (PDT) Received: by mail-il1-x149.google.com with SMTP id a3-20020a92c543000000b0032651795968so12366753ilj.19 for ; Thu, 06 Apr 2023 12:01:09 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20210112; t=1680807668; h=cc:to:from:subject:message-id:references:mime-version:in-reply-to :date:from:to:cc:subject:date:message-id:reply-to; bh=lXaHngygoOShOtLfr1dWwTlpzanuSNfDsA9/IVCyMM4=; b=A1qC/ZvuARpF4aifJXh0p0le494sYKU2NUrJtNd2o8ZvihCjDaf3+R7KzU/ysrpbl6 l4vRFYVToK0UOMs0pZfZJ7KBI+Rl41ceZohihh9yw628OH8pKSweYgOGEyjX53rN+MH3 u2r5VzZepyIuhRLZEHGDRHYR4Yryg2rfMG46aAd7Jca5I7jedUgP1ewH8NgnLcVyakEp F4H5kVYuwj8RvLh0MhgIVykT7rtStfd74mo/DgYwCZTwVY2UqPmjoOLrZ57Eg7pCyh03 BpB549iKmEZJpj+E0ENtaR6aAv1+3vU3S/3z9qiLV4svNL23ganVPoSrhWkMrbQjfGbE QLFg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; t=1680807668; h=cc:to:from:subject:message-id:references:mime-version:in-reply-to :date:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=lXaHngygoOShOtLfr1dWwTlpzanuSNfDsA9/IVCyMM4=; b=RuTkQC1Sc9/U/wg/sCXeJfJ2Px/12rO/x7KVnWZ1mUVuT143Gv36s5wqYEiJ4PPdWx WRSk1eEZ1lStfCXqD0bgCXuwdIN2/IwEQEZiHJbubitOTUIeKlUSTMRmR5614jhU2xAO Ucv72cIlfyFDduD6rintuguCXjFgQYDfUbNHbuzetL8Ly8kiK6n5zQoYXrqI/IIey+N9 7V2VyoPAjlBGRmmOfZ90vxSWdhr9ytTqqCdR/BgbhClzopIxp5PWEKCMxKB1mnyNLaaV g62g9F1FmZBNSqUrD0KIR9XuCg2BMKhYJHIWwhLqK61bgBLL6Zr/UTJBmBmIyliB6QVZ VKJA== X-Gm-Message-State: AAQBX9fpZOGP0ZllxcLzb3YZfZS8fjJpFRd+anOoDMc4BIBmXEH1FnTc FLuT5QZl/gec3CsjyA7DEBGxubiS4SclE6U= X-Received: from allenwebb.c.googlers.com ([fda3:e722:ac3:cc00:2b:ff92:c0a8:12e8]) (user=allenwebb job=sendgmr) by 2002:a05:6e02:d44:b0:326:315:f3d with SMTP id h4-20020a056e020d4400b0032603150f3dmr6023365ilj.1.1680807668678; Thu, 06 Apr 2023 12:01:08 -0700 (PDT) Date: Thu, 6 Apr 2023 14:00:30 -0500 In-Reply-To: <20230406190030.968972-1-allenwebb@google.com> Mime-Version: 1.0 References: <20221219204619.2205248-1-allenwebb@google.com> <20230406190030.968972-1-allenwebb@google.com> X-Mailer: git-send-email 2.40.0.577.gac1e443424-goog Message-ID: <20230406190030.968972-12-allenwebb@google.com> Subject: [PATCH v10 11/11] Documentation: add USB authorization document to driver-api From: Allen Webb To: "linux-modules@vger.kernel.org" , "linux-usb@vger.kernel.org" , "linux-kernel@vger.kernel.org" Cc: gregkh@linuxfoundation.org, mcgrof@kernel.org, christophe.leroy@csgroup.eu, nick.alcock@oracle.com, Allen Webb X-Spam-Status: No, score=-7.7 required=5.0 tests=DKIMWL_WL_MED,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_NONE, SPF_HELO_NONE,SPF_PASS,USER_IN_DEF_DKIM_WL autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1762454770541108238?= X-GMAIL-MSGID: =?utf-8?q?1762454770541108238?= There is a user-facing USB authorization document, but it is midding details a driver should have developer, so add them in a new document. Signed-off-by: Allen Webb --- .../driver-api/usb/authorization.rst | 71 +++++++++++++++++++ Documentation/driver-api/usb/index.rst | 1 + 2 files changed, 72 insertions(+) create mode 100644 Documentation/driver-api/usb/authorization.rst diff --git a/Documentation/driver-api/usb/authorization.rst b/Documentation/driver-api/usb/authorization.rst new file mode 100644 index 000000000000..383dcc037a15 --- /dev/null +++ b/Documentation/driver-api/usb/authorization.rst @@ -0,0 +1,71 @@ +.. SPDX-License-Identifier: GPL-2.0 + +==================== +Device Authorization +==================== + +This document is intended for driver developers. See +Documentation/usb/authorization.rst if you are looking for how to use +USB authorization. + +Authorization provides userspace a way to allow or block configuring +devices early during enumeration before any modules are probed for the +device. While it is possible to block a device by not loading the +required modules, this also prevents other devices from using the +module as well. For example someone might have an unattended computer +downloading installation media to a USB drive. Presumably this computer +would be locked to make it more difficult for a bad actor to access the +computer. Since USB storage devices are not needed to interact with the +lock screen, the authorized_default sysfs attribute can be set to not +authorize new USB devices by default. A userspace tool like USBGuard +can then vet the devices. Mice, keyboards, etc can be allowed by +writing to their authorized sysfs attribute so that the lock screen can +still be used (this important in cases like suspend+resume or docks) +while other devices can be blocked as long as the lock screen is shown. + +Sysfs Attributes +================ + +Userspace can control USB device authorization through the +authorized_default and authorized sysfs attributes. + +authorized_default +------------------ + +Defined in ``drivers/usb/core/hcd.c`` + +The authorized_default sysfs attribute is only present for host +controllers. It determines the initial state of the authorized sysfs +attribute of USB devices newly connected to the corresponding host +controller. It can take on the following values: + ++---------------------------------------------------+ +| Value | Behavior | ++=======+===========================================+ +| -1 | Authorize all devices except wireless USB | ++-------+-------------------------------------------+ +| 0 | Do not authorize new devices | ++-------+-------------------------------------------+ +| 1 | Authorize new devices | ++-------+-------------------------------------------+ +| 2 | Authorize new internal devices only | ++---------------------------------------------------+ + +Note that firmware platform code determines if a device is internal or +not and this is reported as the connect_type sysfs attribute of the USB +port. This is currently supported by ACPI, but device tree still needs +an implementation. Authorizing new internal devices only can be useful +to work around issues with devices that misbehave if there are delays +in probing their module. + +authorized +---------- + +Defined in ``drivers/usb/core/sysfs.c`` + +Every USB device has an authorized sysfs attribute which can take the +values 0 and 1. When authorized is 0, the device still is present in +sysfs, but none of its interfaces can be associated with drivers and +modules will not be probed. When authorized is 1 (or set to one) a +configuration is chosen for the device and its interfaces are +registered allowing drivers to bind to them. diff --git a/Documentation/driver-api/usb/index.rst b/Documentation/driver-api/usb/index.rst index cfa8797ea614..ffe37916f99f 100644 --- a/Documentation/driver-api/usb/index.rst +++ b/Documentation/driver-api/usb/index.rst @@ -7,6 +7,7 @@ Linux USB API usb gadget anchors + authorization bulk-streams callbacks dma