From: "Ahmed S. Darwish" <darwish.07@gmail.com>
To: Andreas Schwab <schwab@suse.de>
Cc: Jeremy Fitzhardinge <jeremy@goop.org>, linux-kernel@vger.kernel.org
Subject: Re: [i386] Questions regarding provisional page tables initialization
Date: Mon, 2 Jul 2007 13:23:03 +0300 [thread overview]
Message-ID: <20070702102303.GA17533@Ahmed> (raw)
In-Reply-To: <je8x9zrwof.fsf@sykes.suse.de>
Hi Andreas,
On Mon, Jul 02, 2007 at 11:18:08AM +0200, Andreas Schwab wrote:
> "Ahmed S. Darwish" <darwish.07@gmail.com> writes:
>
> > yes, but isn't the displacement here (0x007) a _bytes_ displacement ?. so
> > effectively, %ecx now contains physical address of pg0 + 7bytes. Is it A
> > meaningful place/address ?.
>
> It's not pg0 + 7bytes, it is pg0 plus 3 flag bits. Since a page address
> is always page aligned, the low bits are reused for flags.
>
I'm sure there's a problem in _my_ understanding, but isn't the displacement
- as specified by AT&T syntax - represented in bytes ?. I've wrote a small
assembly function to be sure:
.data
integer:
.string "%d\n"
.text
test_func:
push %ebp
mov %esp, %ebp
push 0x008(%ebp) ## 8 bytes displacement (the first arg), right ?
push $integer
call printf
mov %ebp, %esp
pop %ebp
ret
The above method works fine and prints "5" to stdout by the code:
.global main
main:
mov $5, %eax
push %eax
call test_func
movl $1, %eax
movl $0, %ebx
int $0x80
now back to head.S code:
leal 0x007(%edi),%ecx /* Create PDE entry */
Isn't the above line the same condition (bytes, not bits displacement) ?.
Thanks for your patience !.
(For other kind replies, don't understand me wrong. I did my homework and
studied the pte format before asking ;). It's just the bytes/bits issue
above that confuses me).
--
Ahmed S. Darwish
HomePage: http://darwish.07.googlepages.com
Blog: http://darwish-07.blogspot.com
next prev parent reply other threads:[~2007-07-02 10:23 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-07-01 20:38 [i386] Questions regarding provisional page tables initialization Ahmed S. Darwish
2007-07-01 22:02 ` Andreas Schwab
2007-07-01 22:19 ` Jeremy Fitzhardinge
2007-07-02 1:13 ` Ahmed S. Darwish
2007-07-02 9:18 ` Andreas Schwab
2007-07-02 10:23 ` Ahmed S. Darwish [this message]
2007-07-02 11:34 ` Brian Gerst
2007-07-02 15:43 ` Ahmed S. Darwish
2007-07-02 10:43 ` Andi Kleen
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=20070702102303.GA17533@Ahmed \
--to=darwish.07@gmail.com \
--cc=jeremy@goop.org \
--cc=linux-kernel@vger.kernel.org \
--cc=schwab@suse.de \
/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.