Received: by 2002:a25:4158:0:0:0:0:0 with SMTP id o85csp615279yba; Thu, 18 Apr 2019 06:54:20 -0700 (PDT) X-Google-Smtp-Source: APXvYqwjH/fIMAGJWcjXoTmT2fIL41N/2jXJeV0AT4eGC90jPHkyC+tfFI6q5gBYEmtInZWuCTgP X-Received: by 2002:a62:6f02:: with SMTP id k2mr80826267pfc.136.1555595660338; Thu, 18 Apr 2019 06:54:20 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1555595660; cv=none; d=google.com; s=arc-20160816; b=h8SLzD0e9xMye7zLv/JOZ2F7BgZ/CoX6UEMh7s3CI3n6FlqHlTSSHkS/S+nu+hoyVM 5qRQFCfAaukUSuVCJS6gZiqxYMBJzUQBT5vWVhIVs6G/15L4+n71V3tJa2M93096XLo6 yyi5XiSEnWIaKNXEtA1XVBn8D2shAwQSGywWqzJ7PoKXSHNjt2knCQLQAg2gabY0cmuo 5IKviaxjpc0LfLSV+yq+9wJEE8bCL4QwTT8QiK6xoy4srKmKl16+H+hZDtHZ+2OtiN55 CQpq0XaNZTgmhdZOPmKaL4g0MTucQqg960fkNKKTAYML23nDRUB5rF5YfEB1j0ISVxjr +S/Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:user-agent:in-reply-to :content-disposition:mime-version:references:message-id:subject:cc :to:from:date:dkim-signature; bh=sHtMYv4AOUZAiqkZtqElFVDlemDtYDhg/s6/+AevuiQ=; b=vzUUb6JizQFwmAE1eD1LpLl6GYpFMfLIvtOmodqy0DEz1Pmjl6e1MtTShLdZLN+sEu w0bM12dtMJym8QnEweqhXNmOnaUORL0nL/CSUrcjdMlKJt1bJyMeXM9kJSp65pXKumR5 UO8TA5BaXfoMYo6nUE9muFAxypYEU9f5oZpXaMAj2mzg2E3IuCqyvoQblPkA6XHI5zm6 lhhML21MF/Uii8XZdjOWRUAH13NeCV2oXAWeGA/dbR9+Ih4vJq9esBbpkR0KYyU4I/G4 W8GYOhd0S6NvgKYosMbo06+TJY2NLsg9AhSyAgpBt8pyAcPEwilc29Z9zjEYU2iZqDNt fIgg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=VyB94APf; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id k132si2001853pgc.131.2019.04.18.06.54.05; Thu, 18 Apr 2019 06:54:20 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=VyB94APf; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2389249AbfDRNwr (ORCPT + 99 others); Thu, 18 Apr 2019 09:52:47 -0400 Received: from mail.kernel.org ([198.145.29.99]:60700 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2389103AbfDRNwo (ORCPT ); Thu, 18 Apr 2019 09:52:44 -0400 Received: from linux-8ccs (nat.nue.novell.com [195.135.221.2]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id 9F098217FA; Thu, 18 Apr 2019 13:52:41 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1555595563; bh=ZakMli7hFlPh99l4ek94XhUVSSrqW9iReJFzaTAxPK0=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=VyB94APfwxOByF0vPynBB0wu5XqdcgWYEDCktENcxBzMQvtpA/K92yhRUjpJ5Zwmq wZiouZ1xWypqYtZ+kxMdeTMFAD397CtADh6naBq03o5+gUFa3/mINDS784YDcIRYYC mRO1S79YDo/OCZ9Cw6ELNdtt/5uoz7jVhN4IkANI= Date: Thu, 18 Apr 2019 15:52:38 +0200 From: Jessica Yu To: Masahiro Yamada Cc: Alexey Gladkov , Linux Kernel Mailing List , Linux Kbuild mailing list , linux-api@vger.kernel.org, linux-modules@vger.kernel.org, "Kirill A . Shutemov" , Gleb Fotengauer-Malinovskiy , "Dmitry V. Levin" , Michal Marek , Dmitry Torokhov , Rusty Russell , Lucas De Marchi Subject: Re: [PATCH v2] moduleparam: Save information about built-in modules in separate file Message-ID: <20190418135238.GA5626@linux-8ccs> References: <20190406121447.GB4047@localhost.localdomain> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii; format=flowed Content-Disposition: inline In-Reply-To: X-OS: Linux linux-8ccs 5.1.0-rc1-lp150.12.28-default+ x86_64 User-Agent: Mutt/1.10.1 (2018-07-13) Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org +++ Masahiro Yamada [18/04/19 20:10 +0900]: >On Sat, Apr 6, 2019 at 9:15 PM Alexey Gladkov wrote: >> >> Problem: >> >> When a kernel module is compiled as a separate module, some important >> information about the kernel module is available via .modinfo section of >> the module. In contrast, when the kernel module is compiled into the >> kernel, that information is not available. >> >> Information about built-in modules is necessary in the following cases: >> >> 1. When it is necessary to find out what additional parameters can be >> passed to the kernel at boot time. >> >> 2. When you need to know which module names and their aliases are in >> the kernel. This is very useful for creating an initrd image. >> >> Proposal: >> >> The proposed patch does not remove .modinfo section with module >> information from the vmlinux at the build time and saves it into a >> separate file after kernel linking. So, the kernel does not increase in >> size and no additional information remains in it. Information is stored >> in the same format as in the separate modules (null-terminated string >> array). Because the .modinfo section is already exported with a separate >> modules, we are not creating a new API. >> >> It can be easily read in the userspace: >> >> $ tr '\0' '\n' < kernel.builtin >> ext4.softdep=pre: crc32c >> ext4.license=GPL >> ext4.description=Fourth Extended Filesystem >> ext4.author=Remy Card, Stephen Tweedie, Andrew Morton, Andreas Dilger, Theodore Ts'o and others >> ext4.alias=fs-ext4 >> ext4.alias=ext3 >> ext4.alias=fs-ext3 >> ext4.alias=ext2 >> ext4.alias=fs-ext2 >> md_mod.alias=block-major-9-* >> md_mod.alias=md >> md_mod.description=MD RAID framework >> md_mod.license=GPL >> md_mod.parmtype=create_on_open:bool >> md_mod.parmtype=start_dirty_degraded:int >> ... >> >> v2: >> * Extract modinfo from vmlinux.o as suggested by Masahiro Yamada; >> * Rename output file to kernel.builtin; > >Sorry, I do not get why you renamed >"kernel.builtin.modinfo" to "kernel.builtin". > >If you drop "modinfo", we do not understand >what kind information is contained in it. > >I think "kernel" and "builtin" have >a quite similar meaning here. > >How about "builtin.modinfo" for example? > > >It is shorter, and it is clear enough >that it contains module_info. I agree that the name kernel.builtin is unclear in what kind of information it contains. Apologies for not having clarified this in the previous review. Since kbuild already produces "modules.order" and "modules.builtin" files, why not just name it "modules.builtin.modinfo" to keep the names consistent with what is already there? It clearly conveys that this file contains modinfo for builtin modules. I'll leave it up to Lucas to decide if the file format is OK for kmod. With the modinfo dump, kmod could then decide what to do with the information, append to modules.alias{,.bin}, etc. Also, I think this file needs to be documented in Documentation/kbuild/kbuild.txt. Thanks, Jessica