From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1NZYVB-0003Uy-RM for mharc-grub-devel@gnu.org; Mon, 25 Jan 2010 18:37:49 -0500 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1NZYV9-0003Tf-UT for grub-devel@gnu.org; Mon, 25 Jan 2010 18:37:47 -0500 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1NZYV5-0003Q1-Fs for grub-devel@gnu.org; Mon, 25 Jan 2010 18:37:47 -0500 Received: from [199.232.76.173] (port=44149 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1NZYV5-0003Pv-Bk for grub-devel@gnu.org; Mon, 25 Jan 2010 18:37:43 -0500 Received: from mail-ew0-f224.google.com ([209.85.219.224]:45190) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1NZYV4-0005zm-Us for grub-devel@gnu.org; Mon, 25 Jan 2010 18:37:43 -0500 Received: by ewy24 with SMTP id 24so4788452ewy.26 for ; Mon, 25 Jan 2010 15:37:42 -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=pXEHNaZmUcaMpC150jy7TPq92xeRS83rLxv6eYzthoQ=; b=e8fJC/Jx9L+OC/VZ38NFJ/PtuMlGJPFpN24b+FMZzieFELCtqWSFBGh6aS6XWtG/rt +gcaBdJ4T0eFe9xUAKS+4tBMW1mwFzU2mZb/iJHeuClHbdKt6Ikdl2igV0a2K4DB1bEb 9uGNuy6s5LVCynWYkaMYcrX+oI1+h0eZR37hI= 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=TspwUOSAF6UErDIRtqqtIQsjvp8ua8KIwIGDrxoKOGy9D6ZxWfkmRiMBbnfsGWULUN uM/k+RASmFmY1mTM+YSIZ8HufZ/yumnFizrMr8W6bClWUP9yC1UeeMnWE6t46S5jhue6 w9o8gSpx4vSMBWEznSdHXYyvo4R8+I8lPCJLU= Received: by 10.213.40.19 with SMTP id i19mr1506129ebe.45.1264462661420; Mon, 25 Jan 2010 15:37:41 -0800 (PST) Received: from ?192.168.1.50? (c2433-1-88-160-112-182.fbx.proxad.net [88.160.112.182]) by mx.google.com with ESMTPS id 14sm4863675ewy.3.2010.01.25.15.37.40 (version=TLSv1/SSLv3 cipher=RC4-MD5); Mon, 25 Jan 2010 15:37:41 -0800 (PST) Message-ID: <4B5E2B44.2060106@gmail.com> Date: Tue, 26 Jan 2010 00:37:40 +0100 From: =?ISO-8859-1?Q?Gr=E9goire_Sutre?= User-Agent: Mozilla-Thunderbird 2.0.0.22 (X11/20090707) MIME-Version: 1.0 To: The development of GNU GRUB Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 8bit X-detected-operating-system: by monty-python.gnu.org: GNU/Linux 2.6 (newer, 2) Subject: Multiboot's boot_device field specification + implementation bug 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: Mon, 25 Jan 2010 23:37:48 -0000 Hi, I'm trying to understand the specification of the multiboot boot_device field. How should this information be interpreted by a kernel that uses a native (non-DOS) disk label? For instance, if the MBI passed to the NetBSD kernel says part1=5 and part2=part3=0xFF, does this mean: - 6th partition in the NetBSD disk-label, or - 6th partition in the DOS disk label (MBR)? The specification says that part1 specifies the top-level partition number. However there may be several top-level disk-labels. For instance: take a disk with a DOS disk-label (in the MBR) but without any UFS partition in it, and install a NetBSD disk-label on the disk. The NetBSD disk-label will be written in the second sector of the disk, and both disk-labels will be independent and top-level. For a NetBSD kernel, the top-level disklabel will be the NetBSD one, and for other kernels the top-level disk-label may be the DOS one. On a related note, experiments with the multiboot example kernel show that setting root in GRUB has an impact on the value of the boot_device field: (a) set root=(hd1,2,a) ; multiboot /mbtest ; boot --> boot_device = 0x810100ff (b) multiboot (hd1,2,a)/mbtest ; boot --> boot_device = 0x8000ffff According to the spec, (a) is correct but (b) is wrong. It looks like the boot_device field of MBI is set using the value of $root. Best regards, Grégoire