From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1KPEg4-0007rB-Ee for mharc-grub-devel@gnu.org; Sat, 02 Aug 2008 06:49:36 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1KPEg1-0007n7-9J for grub-devel@gnu.org; Sat, 02 Aug 2008 06:49:33 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1KPEg0-0007li-AT for grub-devel@gnu.org; Sat, 02 Aug 2008 06:49:32 -0400 Received: from [199.232.76.173] (port=40046 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1KPEfz-0007lD-Nu for grub-devel@gnu.org; Sat, 02 Aug 2008 06:49:32 -0400 Received: from aybabtu.com ([69.60.117.155]:42504) by monty-python.gnu.org with esmtps (TLS-1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1KPEfy-0004xI-UZ for grub-devel@gnu.org; Sat, 02 Aug 2008 06:49:31 -0400 Received: from [192.168.10.10] (helo=thorin) by aybabtu.com with esmtps (TLS-1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.69) (envelope-from ) id 1KPEZ0-0002wd-JB for grub-devel@gnu.org; Sat, 02 Aug 2008 12:42:19 +0200 Received: from rmh by thorin with local (Exim 4.63) (envelope-from ) id 1KPEey-00031Q-Mu for grub-devel@gnu.org; Sat, 02 Aug 2008 12:48:28 +0200 Date: Sat, 2 Aug 2008 12:48:28 +0200 From: Robert Millan To: The development of GRUB 2 Message-ID: <20080802104828.GA11358@thorin> References: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: Organization: free as in freedom X-Message-Flag: Worried about Outlook viruses? Switch to Thunderbird! www.mozilla.com/thunderbird X-Debbugs-No-Ack: true User-Agent: Mutt/1.5.13 (2006-08-11) X-detected-kernel: by monty-python.gnu.org: Genre and OS details not recognized. Subject: Re: [PATCH] PXE support for grub2 X-BeenThere: grub-devel@gnu.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: The development of GRUB 2 List-Id: The development of GRUB 2 List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 02 Aug 2008 10:49:33 -0000 On Thu, Jul 31, 2008 at 12:50:22AM +0800, Bean wrote: > +#if 1 > +#define GRUB_PXE_BOOTP_DHCPVEND 1024 /* DHCP extended vendor field size */ > +#else > +#define GRUB_PXE_BOOTP_DHCPVEND 312 /* DHCP standard vendor field size */ > +#endif A comment would be helpful to explain the 'if 1' option. > --- a/kern/i386/pc/init.c > +++ b/kern/i386/pc/init.c > @@ -71,14 +71,19 @@ make_install_device (void) > if (grub_root_drive == 0xFF) > grub_root_drive = grub_boot_drive; > > - grub_sprintf (dev, "(%cd%u", (grub_root_drive & 0x80) ? 'h' : 'f', > - grub_root_drive & 0x7f); > + if (grub_root_drive == 0x7F) > + grub_strcpy (dev, "(pxe"); > + else > + { > + grub_sprintf (dev, "(%cd%u", (grub_root_drive & 0x80) ? 'h' : 'f', > + grub_root_drive & 0x7f); > > - if (grub_install_dos_part >= 0) > - grub_sprintf (dev + grub_strlen (dev), ",%u", grub_install_dos_part + 1); > + if (grub_install_dos_part >= 0) > + grub_sprintf (dev + grub_strlen (dev), ",%u", grub_install_dos_part + 1); > > - if (grub_install_bsd_part >= 0) > - grub_sprintf (dev + grub_strlen (dev), ",%c", grub_install_bsd_part + 'a'); > + if (grub_install_bsd_part >= 0) > + grub_sprintf (dev + grub_strlen (dev), ",%c", grub_install_bsd_part + 'a'); > + } > > grub_sprintf (dev + grub_strlen (dev), ")%s", grub_prefix); > grub_strcpy (grub_prefix, dev); Can we avoid this? I wish make_install_device() was reduced and eventually disappeared. Since we already know at install time that the boot drive will be 0x7f, why not just set the drive via grub-mkimage --prefix? > --- a/kern/i386/pc/startup.S > +++ b/kern/i386/pc/startup.S > @@ -2053,3 +2053,102 @@ FUNCTION(grub_vbe_bios_set_palette_data) > popl %ebx > popl %ebp > ret > + > + > +pxe_rm_entry: > + .long 0 > + > +/* > + * struct grub_pxenv *grub_pxe_scan (void); > + */ > +FUNCTION(grub_pxe_scan) Could these go in a module? If they're only used by disk/i386/pc/pxe.c, maybe they could be merged with that? -- Robert Millan The DRM opt-in fallacy: "Your data belongs to us. We will decide when (and how) you may access your data; but nobody's threatening your freedom: we still allow you to remove your data and not access it at all."