Hi, In @.4 for i386 VMALLOC_START is computed as: #define VMALLOC_START (((unsigned long)high_memory \ + 2*VMALLOC_OFFSET-1) & \ ~(VMALLOC_OFFSET-1)) I am not sure why do we need to AND in this way. If I am getting the concept right, I think that if a system has 32MB of RAM then VMALLOC_START = PAGE_OFFSET + (16 + 8) << 20 (For Kernel Image and ZONE_DMA) + (32 << 20) / PAGE_SIZE + VM_ALLOC_OFFSET Is that right? Thanks in advance. ______________________________________________________________________ Post your free ad now! http://personals.yahoo.ca -- Kernelnewbies: Help each other learn about the Linux kernel. Archive: http://mail.nl.linux.org/kernelnewbies/ FAQ: http://kernelnewbies.org/faq/