Is it kernel bug? The code works normally on ia64 machine,howerver, on EM64T,it fails tot work. The function call of shmat will change /proc/meminfo file's content;and the shmdt can't restore the file's content. How to restore it to original stauts?Thanks. ------------------------------------------------------- === before shmat === MemTotal: 2056388 kB MemFree: 607300 kB Buffers: 43976 kB Cached: 134252 kB SwapCached: 0 kB Active: 151940 kB Inactive: 63436 kB HighTotal: 0 kB HighFree: 0 kB LowTotal: 2056388 kB LowFree: 607300 kB SwapTotal: 4096564 kB SwapFree: 4096564 kB Dirty: 176 kB Writeback: 0 kB Mapped: 50880 kB Slab: 93236 kB Committed_AS: 90340 kB PageTables: 3528 kB VmallocTotal: 536870911 kB VmallocUsed: 264436 kB VmallocChunk: 536606243 kB HugePages_Total: 500 HugePages_Free: 500 Hugepagesize: 2048 kB === after shmat === MemTotal: 2056388 kB MemFree: 607300 kB Buffers: 43976 kB Cached: 134252 kB SwapCached: 0 kB Active: 151940 kB Inactive: 63436 kB HighTotal: 0 kB HighFree: 0 kB LowTotal: 2056388 kB LowFree: 607300 kB SwapTotal: 4096564 kB SwapFree: 4096564 kB Dirty: 176 kB Writeback: 0 kB Mapped: 50880 kB Slab: 93236 kB Committed_AS: 90340 kB PageTables: 3528 kB VmallocTotal: 536870911 kB VmallocUsed: 264436 kB VmallocChunk: 536606243 kB HugePages_Total: 500 HugePages_Free: 0 Hugepagesize: 2048 kB === after shmdt=== MemTotal: 2056388 kB MemFree: 607300 kB Buffers: 43976 kB Cached: 134252 kB SwapCached: 0 kB Active: 151940 kB Inactive: 63436 kB HighTotal: 0 kB HighFree: 0 kB LowTotal: 2056388 kB LowFree: 607300 kB SwapTotal: 4096564 kB SwapFree: 4096564 kB Dirty: 176 kB Writeback: 0 kB Mapped: 50880 kB Slab: 93236 kB Committed_AS: 90340 kB PageTables: 3528 kB VmallocTotal: 536870911 kB VmallocUsed: 264436 kB VmallocChunk: 536606243 kB HugePages_Total: 500 HugePages_Free: 0 Hugepagesize: 2048 kB