Messages in this thread | | | From | "Michael S. Zick" <> | Subject | Re: [Bug Fix]: Do 32-bit table calculations in pre-processor | Date | Fri, 3 Jul 2009 14:13:15 -0500 |
| |
On Fri July 3 2009, Jeremy Fitzhardinge wrote: > On 07/03/09 11:38, Michael S. Zick wrote: > > I make no claims for it at the moment - too early in the test process. > > Just the general observation that it takes 0.5M to describe 0.5G of ram. > > > Only if you're using 4k pages. With large pages, 1 pte can map 2M, so > 256 entries can map 512M, so you only need 1/2 a page of pagetable > (assuming PAE; if not a single entry can map 4M). >
Ah, but you can't assume that - look at your VIA-C7M tech sheet - NO PAE.
Mike
> > Also, > > the observation that (1<<32) drops the bit off the left end of a 32-bit value. > > You can see the result in the portion of the post you snipped out. ;) > > > > Those computations aren't done as 32-bit. >
Try ending the filename in ".S" and passing it to gcc, like the build system does.
And while your at it, thank A.K. for snipping off the before/after dmesg.
Mike > > $ as << EOF > .data > .byte (1 << 100) >> 100 > EOF > $ objdump -D a.out > > a.out: file format elf64-x86-64 > > Disassembly of section .data: > > 0000000000000000 <.data>: > 0: 01 .byte 0x1 > > > J > >
| |