On 01/03/2012 09:54 PM, Anthony Liguori wrote: > On 01/03/2012 09:34 AM, Orit Wasserman wrote: >> Add page caching mechanism. >> The pages are stored in the cache ordered by their address. >> >> Signed-off-by: Orit Wasserman<owass...@redhat.com> >> --- >> arch_init.c | 183 >> +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ >> 1 files changed, 183 insertions(+), 0 deletions(-) >> >> diff --git a/arch_init.c b/arch_init.c >> index d4c92b0..fdda277 100644 >> --- a/arch_init.c >> +++ b/arch_init.c >> @@ -28,6 +28,7 @@ >> #include<sys/types.h> >> #include<sys/mman.h> >> #endif >> +#include<assert.h> >> #include "config.h" >> #include "monitor.h" >> #include "sysemu.h" >> @@ -42,6 +43,14 @@ >> #include "gdbstub.h" >> #include "hw/smbios.h" >> >> +#ifdef DEBUG_ARCH_INIT >> +#define DPRINTF(fmt, ...) \ >> + do { fprintf(stdout, "arch_init: " fmt, ## __VA_ARGS__); } while (0) >> +#else >> +#define DPRINTF(fmt, ...) \ >> + do { } while (0) >> +#endif >> + >> #ifdef TARGET_SPARC >> int graphic_width = 1024; >> int graphic_height = 768; >> @@ -94,6 +103,180 @@ const uint32_t arch_type = QEMU_ARCH; >> #define RAM_SAVE_FLAG_EOS 0x10 >> #define RAM_SAVE_FLAG_CONTINUE 0x20 >> >> +/***********************************************************/ >> +/* Page cache for storing previous pages as basis for XBRLE compression */ >> +#define CACHE_N_WAY 2 /* 2-way assossiative cache */ > > Is there any reason we can't just use a GCache for this? > > http://developer.gnome.org/glib/stable/glib-Caches.html I'm not familiar with I will check. Is it 2-way associative cache ?
Orit > > Regards, > > Anthony Liguori