which fields in /proc/meminfo are orthogonal?
Hi,
We have a system (2.6.27 based) which seems to be increasing its memory consumption by several MB an hour. Summing up Pss for all maps in all processes doesn't seem to explain it, so I'm looking at the kernel.
I've backported the kmemleak functionality. It's self-test module shows leaks so I know it's working, but it doesn't report any leaks that would correspond to the memory increase.
I'm currently trying to figure out which of the entries in /proc/meminfo are actually orthogonal to each other. Ideally I'd like to be able to add up the suitable entries and have it work out to the total memory on the system, so that I can then narrow down exactly where the memory is going. Is this feasable?
I'll keep reading the code but if anyone happens to know this already I'd appreciate some assistance.
Thanks,
Chris
Quoted 5 lines · Chris Friesen
I'm currently trying to figure out which of the entries in
/proc/meminfoare actually orthogonal to each other. Ideally I'd like to be able to add up the suitable entries and have it work out to the total memory on the system, so that I can then narrow down exactly where the memory is going. Is this feasable?
I've tried adding up MemFree+Buffers+Cached+AnonPages+Mapped+Slab+PageTables+VmallocUsed
(hugepages are disabled and there is no swap)
Shortly after boot this gets me within about 3MB of MemTotal. However, after 1070 minutes there is a 64MB difference between MemTotal and the above sum.
Here's /proc/meminfo after 1070 minutes:
MemTotal: 4042848 kB MemFree: 406112 kB Buffers: 12072 kB Cached: 3068368 kB SwapCached: 0 kB Active: 671200 kB Inactive: 2711952 kB SwapTotal: 0 kB SwapFree: 0 kB Dirty: 44 kB Writeback: 0 kB AnonPages: 235864 kB Mapped: 30752 kB Slab: 200156 kB SReclaimable: 142828 kB SUnreclaim: 57328 kB PageTables: 4320 kB NFS_Unstable: 0 kB Bounce: 0 kB WritebackTmp: 0 kB CommitLimit: 2021424 kB Committed_AS: 2593116 kB VmallocTotal: 34359738367 kB VmallocUsed: 21496 kB VmallocChunk: 34359716779 kB HugePages_Total: 0 HugePages_Free: 0 HugePages_Rsvd: 0 HugePages_Surp: 0 Hugepagesize: 2048 kB DirectMap4k: 3008 kB DirectMap2M: 4190208 kB
Any ideas how to track down the missing memory?
Chris
Quoted 8 lines · Chris Friesen
I've tried adding up MemFree+Buffers+Cached+AnonPages+Mapped+Slab+PageTables+VmallocUsed
(hugepages are disabled and there is no swap)
Shortly after boot this gets me within about 3MB of MemTotal. However, after 1070 minutes there is a 64MB difference between MemTotal and the above sum.
Oddly enough, over the same period it appears that
MemFree + Active + Inactive + Slab + PageTables
is basically (+/- half a meg) constant and equal to "MemTotal - 48.5MB".
It would seem that active/inactive track memory that isn't visible in Buffers+Cached+AnonPages+Mapped. Anyone have any suggestions what it might be?
Thanks,
Chris
--
To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to [email protected]. For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"[email protected]"> [email protected] </a>
Quoted 10 lines · Chris Friesen
Quoted 5 lines · Chris Friesen
I'm currently trying to figure out which of the entries in
/proc/meminfoare actually orthogonal to each other. Ideally I'd like to be able to add up the suitable entries and have it work out to the total memory on the system, so that I can then narrow down exactly where the memory is going. Is this feasable?I've tried adding up MemFree+Buffers+Cached+AnonPages+Mapped+Slab+PageTables+VmallocUsed
VmallocUsed referws to Vmalloc address space consumption. However, Vmalloc address space is not used exclusively to map system RAM into virtual address space. It is also used to map PCI MMIO windows to the register sets or memory chips on PCI cards into the vritual address space.
Regards,
Andy
Quoted 41 lines
(hugepages are disabled and there is no swap)
Shortly after boot this gets me within about 3MB of MemTotal. However, after 1070 minutes there is a 64MB difference between MemTotal and the above sum.
Here's
/proc/meminfoafter 1070 minutes:MemTotal: 4042848 kB MemFree: 406112 kB Buffers: 12072 kB Cached: 3068368 kB SwapCached: 0 kB Active: 671200 kB Inactive: 2711952 kB SwapTotal: 0 kB SwapFree: 0 kB Dirty: 44 kB Writeback: 0 kB AnonPages: 235864 kB Mapped: 30752 kB Slab: 200156 kB SReclaimable: 142828 kB SUnreclaim: 57328 kB PageTables: 4320 kB NFS_Unstable: 0 kB Bounce: 0 kB WritebackTmp: 0 kB CommitLimit: 2021424 kB Committed_AS: 2593116 kB VmallocTotal: 34359738367 kB VmallocUsed: 21496 kB VmallocChunk: 34359716779 kB HugePages_Total: 0 HugePages_Free: 0 HugePages_Rsvd: 0 HugePages_Surp: 0 Hugepagesize: 2048 kB DirectMap4k: 3008 kB DirectMap2M: 4190208 kB
Quoted 9 lines
Any ideas how to track down the missing memory?
Chris
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
--
To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to [email protected]. For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"[email protected]"> [email protected] </a>
Hi Andy,
I am seeing similar kind of issue, where SUnreclaim increases. How did
you resolve your issue.
Thanks
Jayasri
Quoted 83 lines · Andy Walls-2 wrote:
Quoted 11 lines · Chris Friesen
Quoted 1 line · Chris Friesen
I'm currently trying to figure out which of the entries in
/proc/meminfoQuoted 4 lines
are actually orthogonal to each other. Ideally I'd like to be able to add up the suitable entries and have it work out to the total memory on the system, so that I can then narrow down exactly where the memory is going. Is this feasable?
I've tried adding up MemFree+Buffers+Cached+AnonPages+Mapped+Slab+PageTables+VmallocUsed
VmallocUsed referws to Vmalloc address space consumption. However, Vmalloc address space is not used exclusively to map system RAM into virtual address space. It is also used to map PCI MMIO windows to the register sets or memory chips on PCI cards into the vritual address space.
Regards,
AndyQuoted 43 lines
(hugepages are disabled and there is no swap)
Shortly after boot this gets me within about 3MB of MemTotal. However, after 1070 minutes there is a 64MB difference between MemTotal and the above sum.
Here's
/proc/meminfoafter 1070 minutes:MemTotal: 4042848 kB MemFree: 406112 kB Buffers: 12072 kB Cached: 3068368 kB SwapCached: 0 kB Active: 671200 kB Inactive: 2711952 kB SwapTotal: 0 kB SwapFree: 0 kB Dirty: 44 kB Writeback: 0 kB AnonPages: 235864 kB Mapped: 30752 kB Slab: 200156 kB SReclaimable: 142828 kB SUnreclaim: 57328 kB PageTables: 4320 kB NFS_Unstable: 0 kB Bounce: 0 kB WritebackTmp: 0 kB CommitLimit: 2021424 kB Committed_AS: 2593116 kB VmallocTotal: 34359738367 kB VmallocUsed: 21496 kB VmallocChunk: 34359716779 kB HugePages_Total: 0 HugePages_Free: 0 HugePages_Rsvd: 0 HugePages_Surp: 0 Hugepagesize: 2048 kB DirectMap4k: 3008 kB DirectMap2M: 4190208 kBAny ideas how to track down the missing memory?
Quoted 8 lines
Chris
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Signature · 2 lines
View this message in context: http://old.nabble.com/which-fields-in--proc-meminfo-are-orthogonal--tp27328047p29337843.html Sent from the linux-kernel mailing list archive at Nabble.com.
Quoted 8 lines · Chris Friesen
I've tried adding up MemFree+Buffers+Cached+AnonPages+Mapped+Slab+PageTables+VmallocUsed
(hugepages are disabled and there is no swap)
Shortly after boot this gets me within about 3MB of MemTotal. However, after 1070 minutes there is a 64MB difference between MemTotal and the above sum.
I believe that pages allocated directly with get_free_pages won't show up in your sum. So, just look for someone doing a lot of that :-)
Jeff
--
To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to [email protected]. For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"[email protected]"> [email protected] </a>