Re: [Qemu-devel] CPUTLBEntry Question

2007-06-14 Thread amateur
On Thu, Jun 14, 2007 at 05:00:32PM +0300, Blue Swirl wrote: > On 6/14/07, amateur <[EMAIL PROTECTED]> wrote: > >The softmmu_header.h code does assume each TLB entry has a fixed size > >of (2^CPU_TLB_ENTRY_BITS) bytes. Not only the assembly code, but also > >the C code assume this. So if you want to

Re: [Qemu-devel] CPUTLBEntry Question

2007-06-14 Thread Ryan Riley
On 6/14/07, Paul Brook <[EMAIL PROTECTED]> wrote: > then QEMU crashes on startup. (It also crashes if I put that blah > entry on the beginning instead of the end.) I'm sure there's code > somewhere that must be making assumptions about the size of TLB entry, > but I'm at a loss for finding it.

Re: [Qemu-devel] CPUTLBEntry Question

2007-06-14 Thread Blue Swirl
On 6/14/07, amateur <[EMAIL PROTECTED]> wrote: The softmmu_header.h code does assume each TLB entry has a fixed size of (2^CPU_TLB_ENTRY_BITS) bytes. Not only the assembly code, but also the C code assume this. So if you want to add new members into CPUTLBEntry, add the new member at the end of t

Re: [Qemu-devel] CPUTLBEntry Question

2007-06-14 Thread amateur
On Wed, Jun 13, 2007 at 04:25:07PM -0400, Ryan Riley wrote: > typedef struct CPUTLBEntry { >/* bit 31 to TARGET_PAGE_BITS : virtual address > bit TARGET_PAGE_BITS-1..IO_MEM_SHIFT : if non zero, memory io > zone number > bit 3

Re: [Qemu-devel] CPUTLBEntry Question

2007-06-14 Thread Paul Brook
> then QEMU crashes on startup. (It also crashes if I put that blah > entry on the beginning instead of the end.) I'm sure there's code > somewhere that must be making assumptions about the size of TLB entry, > but I'm at a loss for finding it. (I have noticed that the assembly > code in softmmu

[Qemu-devel] CPUTLBEntry Question

2007-06-14 Thread Ryan Riley
I'm making some small changes to the TLB stuff in QEMU 0.9.0 (specifically, I'm only working with i386-softmmu) and have run into an odd question I'm hoping someone can answer for me. The CPUTLBEntry structure definition in cpu-defs.h looks like this... typedef struct CPUTLBEntry { /* bit 31