Re: Problem with pxeboot and binutils-2.11
On 09-Aug-01 Paul Saab wrote: > David Malone ([EMAIL PROTECTED]) wrote: >> On Thu, Aug 09, 2001 at 11:12:32AM -0700, John Baldwin wrote: >> > > It appears that gas is now properly padding the end of the text >> > > section (and inserting the jmp and nops). This, in turn, misaligns >> > > the loader that is tacked onto the end of the pxeldr. I'm currently >> > > not setup to test pxeboot'ing but here's a patch that might fix it. >> > >> > The disassembly looks right, I just don't have a means for testing it. >> >> Oliver Hartmann tested Mark's patch and it seems to fix the problem. >> Mark's going to look into committing and (hopefully) merging the >> fix to -stable. > > Yes.. This fixes the problem. John's patch also works. Mark's patch is less hokey than mine. I've given him the goahead to commit his. -- John Baldwin <[EMAIL PROTECTED]> -- http://www.FreeBSD.org/~jhb/ PGP Key: http://www.baldwin.cx/~john/pgpkey.asc "Power Users Use the Power to Serve!" - http://www.FreeBSD.org/ To Unsubscribe: send mail to [EMAIL PROTECTED] with "unsubscribe freebsd-current" in the body of the message
Re: Problem with pxeboot and binutils-2.11
David Malone ([EMAIL PROTECTED]) wrote: > On Thu, Aug 09, 2001 at 11:12:32AM -0700, John Baldwin wrote: > > > It appears that gas is now properly padding the end of the text > > > section (and inserting the jmp and nops). This, in turn, misaligns > > > the loader that is tacked onto the end of the pxeldr. I'm currently > > > not setup to test pxeboot'ing but here's a patch that might fix it. > > > > The disassembly looks right, I just don't have a means for testing it. > > Oliver Hartmann tested Mark's patch and it seems to fix the problem. > Mark's going to look into committing and (hopefully) merging the > fix to -stable. Yes.. This fixes the problem. John's patch also works. -- Paul Saab Technical Yahoo [EMAIL PROTECTED] - [EMAIL PROTECTED] - [EMAIL PROTECTED] Do You .. uhh .. Yahoo!? To Unsubscribe: send mail to [EMAIL PROTECTED] with "unsubscribe freebsd-current" in the body of the message
Re: Problem with pxeboot and binutils-2.11
On Thu, Aug 09, 2001 at 11:12:32AM -0700, John Baldwin wrote: > > It appears that gas is now properly padding the end of the text > > section (and inserting the jmp and nops). This, in turn, misaligns > > the loader that is tacked onto the end of the pxeldr. I'm currently > > not setup to test pxeboot'ing but here's a patch that might fix it. > > The disassembly looks right, I just don't have a means for testing it. Oliver Hartmann tested Mark's patch and it seems to fix the problem. Mark's going to look into committing and (hopefully) merging the fix to -stable. David. To Unsubscribe: send mail to [EMAIL PROTECTED] with "unsubscribe freebsd-current" in the body of the message
RE: Problem with pxeboot and binutils-2.11
On 09-Aug-01 Harti Brandt wrote: > > Hello, > > some time ago we reported a problem with pxeboot under -current (see below). > We have tried to track down the problem and it seems to be a bug or a > feature in gas or libbfd. It turns out, that the output from pxeldr before > the binutils-2.11 import on 5/29/2001 was 500 bytes long. After the import > the output has grown to 512 byte. The excess bytes contain a jump to the > address 512 and a number of NOPs. The result of this is, that the loader > image which is located imediately after pxeldr is shifted by 12 bytes > and the address calculations in pxeldr.s are wrong now. > > Unfortunately we're not able to find out what new bug^h^h^hfeature of > gas or libbfd causes this behaviour. A simple workaround is to strip the > excess bytes from pxeldr just before building pxeboot, but that is REALLY > ugly: It is evil. Looks like it is aligning the end of the text even though I haven't asked. A grotty hack would be to use a org at the end to force pxeldr to be 512 bytes. Try this: --- pxeldr.s2001/02/06 11:20:05 1.6 +++ pxeldr.s2001/08/09 17:41:38 @@ -277,5 +277,6 @@ bootinfo_msg: .asciz "Building the boot loader arguments\r\n" relocate_msg: .asciz "Relocating the loader and the BTX\r\n" jump_message: .asciz "Starting the BTX loader\r\n" - + + .org 0x200,0x0 end: -- John Baldwin <[EMAIL PROTECTED]> -- http://www.FreeBSD.org/~jhb/ PGP Key: http://www.baldwin.cx/~john/pgpkey.asc "Power Users Use the Power to Serve!" - http://www.FreeBSD.org/ To Unsubscribe: send mail to [EMAIL PROTECTED] with "unsubscribe freebsd-current" in the body of the message
Re: Problem with pxeboot and binutils-2.11
On 09-Aug-01 Mark Peek wrote: > At 4:46 PM +0200 8/9/01, Harti Brandt wrote: >>some time ago we reported a problem with pxeboot under -current (see below). >>We have tried to track down the problem and it seems to be a bug or a >>feature in gas or libbfd. It turns out, that the output from pxeldr before >>the binutils-2.11 import on 5/29/2001 was 500 bytes long. After the import >>the output has grown to 512 byte. The excess bytes contain a jump to the >>address 512 and a number of NOPs. The result of this is, that the loader >>image which is located imediately after pxeldr is shifted by 12 bytes >>and the address calculations in pxeldr.s are wrong now. >> >>Unfortunately we're not able to find out what new bug^h^h^hfeature of >>gas or libbfd causes this behaviour. A simple workaround is to strip the >>excess bytes from pxeldr just before building pxeboot, but that is REALLY >>ugly: > > > It appears that gas is now properly padding the end of the text > section (and inserting the jmp and nops). This, in turn, misaligns > the loader that is tacked onto the end of the pxeldr. I'm currently > not setup to test pxeboot'ing but here's a patch that might fix it. The disassembly looks right, I just don't have a means for testing it. -- John Baldwin <[EMAIL PROTECTED]> -- http://www.FreeBSD.org/~jhb/ PGP Key: http://www.baldwin.cx/~john/pgpkey.asc "Power Users Use the Power to Serve!" - http://www.FreeBSD.org/ To Unsubscribe: send mail to [EMAIL PROTECTED] with "unsubscribe freebsd-current" in the body of the message
Re: Problem with pxeboot and binutils-2.11
At 4:46 PM +0200 8/9/01, Harti Brandt wrote: >some time ago we reported a problem with pxeboot under -current (see below). >We have tried to track down the problem and it seems to be a bug or a >feature in gas or libbfd. It turns out, that the output from pxeldr before >the binutils-2.11 import on 5/29/2001 was 500 bytes long. After the import >the output has grown to 512 byte. The excess bytes contain a jump to the >address 512 and a number of NOPs. The result of this is, that the loader >image which is located imediately after pxeldr is shifted by 12 bytes >and the address calculations in pxeldr.s are wrong now. > >Unfortunately we're not able to find out what new bug^h^h^hfeature of >gas or libbfd causes this behaviour. A simple workaround is to strip the >excess bytes from pxeldr just before building pxeboot, but that is REALLY >ugly: It appears that gas is now properly padding the end of the text section (and inserting the jmp and nops). This, in turn, misaligns the loader that is tacked onto the end of the pxeldr. I'm currently not setup to test pxeboot'ing but here's a patch that might fix it. Mark Index: pxeldr.s === RCS file: /cvs/freebsd/src/sys/boot/i386/pxeldr/pxeldr.s,v retrieving revision 1.6 diff -u -u -r1.6 pxeldr.s --- pxeldr.s2001/02/06 11:20:05 1.6 +++ pxeldr.s2001/08/09 16:28:07 @@ -278,4 +278,5 @@ relocate_msg: .asciz "Relocating the loader and the BTX\r\n" jump_message: .asciz "Starting the BTX loader\r\n" + .p2align 4 end: To Unsubscribe: send mail to [EMAIL PROTECTED] with "unsubscribe freebsd-current" in the body of the message