From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1NVSwz-0008M5-Kh for mharc-grub-devel@gnu.org; Thu, 14 Jan 2010 11:53:37 -0500 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1NVSwx-0008L0-U3 for grub-devel@gnu.org; Thu, 14 Jan 2010 11:53:35 -0500 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1NVSwt-0008Is-6s for grub-devel@gnu.org; Thu, 14 Jan 2010 11:53:35 -0500 Received: from [199.232.76.173] (port=44500 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1NVSwt-0008In-0m for grub-devel@gnu.org; Thu, 14 Jan 2010 11:53:31 -0500 Received: from mx20.gnu.org ([199.232.41.8]:23829) by monty-python.gnu.org with esmtps (TLS-1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1NVSws-00034u-An for grub-devel@gnu.org; Thu, 14 Jan 2010 11:53:30 -0500 Received: from mail-fx0-f228.google.com ([209.85.220.228]) by mx20.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1NVSwr-0007AG-B3 for grub-devel@gnu.org; Thu, 14 Jan 2010 11:53:29 -0500 Received: by fxm28 with SMTP id 28so16382956fxm.26 for ; Thu, 14 Jan 2010 08:53:27 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:message-id:date:from :user-agent:mime-version:to:subject:content-type :content-transfer-encoding; bh=O6x2BbVMRytkkqPeafBMrg/3h7rY3WHGhoCLWaKpt5g=; b=mLaIOeccBHVzkobKrnvuLnx817kKc9TfaxDumue2C2UerzLfEX7gRWj00KblXmSmVY Ju7SDsv6KLgNpEaq7TskAanQyqNSMjm3mCMs6WUDi6PCZWTIKx1nNqhvE8/oWtz5hy6b n8cYSW9f/7T6Pul47Wa43QRE4Uui8Qg2IRcFE= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=message-id:date:from:user-agent:mime-version:to:subject :content-type:content-transfer-encoding; b=fxAG7WpAQbXK7P1P2WgG8wx40udjYJXphnXjCATAoeuyjbJrpGRrAxT9bz+tp/mgrj 6HmWF/PY8YXqjA7hQog14IgNTXSUqZJNoxEmZAgtYGsD7+ZbziFVNjLmPRLeNp9RNvMc HEUOSi77nroRFKHdDobniTdJ9AtyE8nZ37uzE= Received: by 10.223.13.202 with SMTP id d10mr404436faa.40.1263488007455; Thu, 14 Jan 2010 08:53:27 -0800 (PST) Received: from ?147.210.129.1? (laptop-147-210-129-1.labri.fr [147.210.129.1]) by mx.google.com with ESMTPS id 15sm461048fxm.6.2010.01.14.08.53.26 (version=TLSv1/SSLv3 cipher=RC4-MD5); Thu, 14 Jan 2010 08:53:26 -0800 (PST) Message-ID: <4B4F4C05.8070003@gmail.com> Date: Thu, 14 Jan 2010 17:53:25 +0100 From: =?ISO-8859-1?Q?Gr=E9goire_Sutre?= User-Agent: Thunderbird 2.0.0.23 (X11/20091027) MIME-Version: 1.0 To: The development of GRUB 2 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 8bit X-detected-operating-system: by mx20.gnu.org: GNU/Linux 2.6 (newer, 2) X-detected-operating-system: by monty-python.gnu.org: GNU/Linux 2.6, seldom 2.4 (older, 4) Subject: [multiboot] command-line format X-BeenThere: grub-devel@gnu.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: The development of GNU GRUB List-Id: The development of GNU GRUB List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 14 Jan 2010 16:53:36 -0000 Hi, Vladimir just sent a patch regarding this issue, but I had this long (sorry!) email almost finished already, so here it is. And this might give more context for Vladimir's email. As mentioned in a previous thread, I had some problems getting multiboot options recognized by the NetBSD kernel, and this was actually due to the fact that GRUB Legacy implicitly passes the booted file as first argument whereas GRUB 2 doesn't [1]. I started a thread on NetBSD's port-i386 mailing list [2] on the format of the multiboot command-line, and the discussion moved towards the change in GRUB regarding the first argument (booted kernel in GRUB Legacy, removed in GRUB 2). I ended up doing tests with Xen, which is also multiboot-compliant, and Xen also skips the first argument in its command-line parsing code (well, it's a bit more complex, see [3] for details if you're interested). In the end, it may be the case that most multiboot-compliant kernels out there still assume that the first argument is the booted file name, and skip it without even looking at it. Do you know of any kernel that does not make this assumption? There are also other multiboot-compliant boot loaders (e.g. NetBSD's boot loader). Apart from GRUB 2, do you know of another boot-loader that does not put the booted file name as first argument? I understand that the specification does not enforce the boot loader to follow a specific command-line format. And, in a perfect world, developers should follow the specification, disregarding any particular implementation of the specification. But I guess we don't live in a perfect world ;-) The reference implementation (GRUB legacy) for the specification led kernel developers to assume a specific command-line format. And for the sake of backward compatibility, all multiboot command-lines for those kernels should contain the booted file name as first argument. So why not change the specification in this way, i.e. require that the command-line starts with the booted file name? I believe that this would merely amount to writing down what most users of the specification had already in mind... Grégoire p.s. I guess that there are not many GRUB developers on the NetBSD mailing lists, and, for my part, this topic is new... Feel free to intervene :-) [1] http://lists.gnu.org/archive/html/grub-devel/2010-01/msg00146.html [2] http://mail-index.netbsd.org/port-i386/2010/01/09/msg001747.html [3] http://mail-index.netbsd.org/port-i386/2010/01/14/msg001768.html