Re: Problems building xnu-792
Re: Problems building xnu-792
- Subject: Re: Problems building xnu-792
- From: Markus Hitter <email@hidden>
- Date: Mon, 9 May 2005 15:29:06 +0200
William,
first, thanks for the in-depth description of you findings.
Am 09.05.2005 um 05:49 schrieb William Kucharski:
On May 8, 2005, at 8:37 AM, Markus Hitter wrote:
The offending line is always similar:
1362: rlwinm r12,r11,-1,504
There's a bug remaining in the source somewhere, as the "-1" is an
illegal
third parameter to rlwinm.
This specific line translates to this line in osfmk/ppc/hw_vm.s:
rlwinm r12,r11,GV_HPAGE_SHIFT,GV_HPAGE_MASK
Yes, all 17 occurences of this error use the same "rlwinm" and the same
two macros at the end. Luckily, one can easily look up these lines by
the unique comment later in these lines.
which SHOULD assemble to:
rlwinm r12,r11,31,23,28
Looking at the kernel coming with the Darwin 8.0.1 binary release, I
can confirm this for the first occurence.
But 5 parameters instead of 4? I tried to look up the mapping in Google
as I'm currently resisting to take an in-depth course in PPC assembly
...
GV_HPAGE_SHIFT is defined in osfmk/ppc/mappings.h as:
#define GV_HPAGE_SHIFT (GV_PGIDX_SZ_LG2 - GV_GRPS_PPG_LG2)
which according to:
#define GV_PGIDX_SZ_LG2 3 /* 64-bit Hash-table-page
physical-addrress index entry size */
#define GV_SLOT_SZ_LG2 5 /* 32 bytes per slot (mapping size) */
#define GV_PGIDX_SZ_LG2 3 /* 64-bit Hash-table-page
physical-addrress index entry size */
#define GV_PAGE_SZ_LG2 12 /* 4k-byte hash-table-page size */
#define GV_GRPS_PPG_LG2 (GV_PAGE_SZ_LG2 - (GV_SLOT_SZ_LG2 +
GV_SLOTS_LG2))
calculates out as (3 - (12 - 5 + 3)))), or -1. Oooh.
I just saw the 10.4 kernel debug kit is already released. I'll take a
look there, next.
Cheers,
Markus
- - - - - - - - - - - - - - - - - - -
Dipl. Ing. Markus Hitter
http://www.jump-ing.de/
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Darwin-kernel mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden