All of lore.kernel.org
 help / color / mirror / Atom feed
From: Pavel Roskin <proski@gnu.org>
To: The development of GRUB 2 <grub-devel@gnu.org>
Subject: Re: contradiction in boot/i386/pc/boot.S
Date: Tue, 08 Jan 2008 17:57:16 -0500	[thread overview]
Message-ID: <1199833036.21357.12.camel@dv> (raw)
In-Reply-To: <20080108202455.GA22878@thorin>


On Tue, 2008-01-08 at 21:24 +0100, Robert Millan wrote:
> On Tue, Jan 08, 2008 at 01:24:25PM -0500, Pavel Roskin wrote:
> > On Tue, 2008-01-08 at 11:50 +0100, Robert Millan wrote:
> > > boot_drive_check:
> > >         jmp     1f      /* grub-setup may overwrite this jump */
> > >         testb   $0x80, %dl
> > >         jnz     1f
> > >         movb    $0x80, %dl
> > > 1:
> > > 
> > > However, if 0x80 is really "the only possible boot drive", that means the
> > > test is pointless and can be replaced with:
> > 
> > No, I was wrong, I misread "testb" as "cmpb".  Values such as 0x81 are
> > valid and should be preserved.
> 
> Yeah I was going to point that..
> 
> > Please ignore my previous message.
> 
> All of it, or just partly ?

All of it, I'm afraid.

However, it's possible to save 2 bytes if we get rid of the first short
jump and overwrite the whole section (testb, jnz, movb) with NOPs for
the floppies.

We can save 4 more bytes if we do "orb $0x80, %dl" unconditionally for
the hard drives.  However, I'm not sure if there are BIOSes that pass 1
in %dl and how critical it would be if it becomes 0x81.  That's
something I'll rather not do without seeing the original bug reports.

-- 
Regards,
Pavel Roskin



  reply	other threads:[~2008-01-08 22:57 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-01-08 10:50 contradiction in boot/i386/pc/boot.S Robert Millan
2008-01-08 18:13 ` Pavel Roskin
2008-01-08 18:24 ` Pavel Roskin
2008-01-08 20:24   ` Robert Millan
2008-01-08 22:57     ` Pavel Roskin [this message]
2008-01-08 23:37       ` Robert Millan
2008-01-08 23:48         ` Vincent Pelletier
2008-01-08 23:51           ` Vincent Pelletier
2008-01-08 23:52         ` Pavel Roskin
2008-01-08 23:57           ` Robert Millan

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1199833036.21357.12.camel@dv \
    --to=proski@gnu.org \
    --cc=grub-devel@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.