From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1MIsEk-0003gU-2t for mharc-grub-devel@gnu.org; Mon, 22 Jun 2009 18:43:38 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1MIsEh-0003eC-PF for grub-devel@gnu.org; Mon, 22 Jun 2009 18:43:35 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1MIsEd-0003bp-BU for grub-devel@gnu.org; Mon, 22 Jun 2009 18:43:35 -0400 Received: from [199.232.76.173] (port=44001 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1MIsEd-0003be-4s for grub-devel@gnu.org; Mon, 22 Jun 2009 18:43:31 -0400 Received: from aybabtu.com ([69.60.117.155]:33378) by monty-python.gnu.org with esmtps (TLS-1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1MIsEc-00029n-MX for grub-devel@gnu.org; Mon, 22 Jun 2009 18:43:30 -0400 Received: from [192.168.10.10] (helo=thorin) by aybabtu.com with esmtp (Exim 4.69) (envelope-from ) id 1MIrBa-0001Z1-WA for grub-devel@gnu.org; Mon, 22 Jun 2009 23:36:19 +0200 Received: from rmh by thorin with local (Exim 4.69) (envelope-from ) id 1MIsEZ-000395-Ov for grub-devel@gnu.org; Tue, 23 Jun 2009 00:43:27 +0200 Date: Tue, 23 Jun 2009 00:43:27 +0200 From: Robert Millan To: The development of GRUB 2 Message-ID: <20090622224327.GB11998@thorin> References: <20090621181748.GA21152@thorin> <20090621225332.GB2360@thorin> <1245633761.9864.34.camel@mj> <20090622095252.GC8969@thorin> <1245699543.2561.1.camel@mj> <20090622205213.GB7871@thorin> <20090622213232.GB10027@thorin> <1245707083.5069.2.camel@mj> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1245707083.5069.2.camel@mj> 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.18 (2008-05-17) X-detected-operating-system: by monty-python.gnu.org: GNU/Linux 2.6 (newer, 1) Subject: Re: [PATCH] access gdtdesc on segment 0 unconditionally (Re: [PATCH] i386-qemu port) 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: Mon, 22 Jun 2009 22:43:35 -0000 On Mon, Jun 22, 2009 at 05:44:43PM -0400, Pavel Roskin wrote: > On Mon, 2009-06-22 at 23:32 +0200, Robert Millan wrote: > > On Mon, Jun 22, 2009 at 10:52:13PM +0200, Robert Millan wrote: > > > I don't think it's possible to use relative addresses > > > with this particular instruction. > > > > Uhm sorry, this was silly. Of course you can use addresses relative to a > > segment in lgdt, but this doesn't change the fact that GAS always gives > > you absolute ones. > > > > Also, I'm not sure if it's possible to use a 16-bit field in this instruction, > > it could be that the field is always 32-bit, even if it's relative to a > > segment. This dump is from the i386-pc kernel.img: > > > > 836f: 2e 67 66 0f 01 15 68 addr32 lgdtl %cs:0x8368 > > 8376: 83 00 00 > > > > a little-endian 0x00008368 is seen here, indicating the field is 32-bit. > > But if I omit ADDR32, I get: > > 0000016e : > 16e: fa cli > 16f: 2e 66 0f 01 16 68 01 lgdtl %cs:0x168 > 176: 0f 20 c0 mov %cr0,%eax > > The address is 16-bit. If I omit ADDR32 on i386-pc, I get: 836f: 2e 66 0f 01 16 68 83 lgdtl %cs:-0x7c98 "-0x7c98" being the signed version of 0x8368, which is also 16-bit. What is really odd is that you got 0x168 which is an offset to 0x8200, when in fact %cs is 0, so I don't think your binary would work (did you test it?). Btw my binutils version is 2.18.0.20080103. -- 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."