lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <2f7b7320-6899-93a0-420c-523d53363f58@redhat.com>
Date:   Thu, 12 May 2022 10:55:45 +0200
From:   David Hildenbrand <david@...hat.com>
To:     Johannes Weiner <hannes@...xchg.org>
Cc:     Andrew Morton <akpm@...ux-foundation.org>,
        Michal Hocko <mhocko@...e.com>, Roman Gushchin <guro@...com>,
        Shakeel Butt <shakeelb@...gle.com>,
        Seth Jennings <sjenning@...hat.com>,
        Dan Streetman <ddstreet@...e.org>,
        Minchan Kim <minchan@...nel.org>, linux-mm@...ck.org,
        cgroups@...r.kernel.org, linux-kernel@...r.kernel.org,
        kernel-team@...com
Subject: Re: [PATCH v2 1/6] Documentation: filesystems: proc: update meminfo
 section

On 11.05.22 20:51, Johannes Weiner wrote:
> On Wed, May 11, 2022 at 07:11:06PM +0200, David Hildenbrand wrote:
>> On 10.05.22 17:28, Johannes Weiner wrote:
>>> Add new entries. Minor corrections and cleanups.
>>>
>>> Signed-off-by: Johannes Weiner <hannes@...xchg.org>
>>> ---
>>>  Documentation/filesystems/proc.rst | 155 ++++++++++++++++++-----------
>>>  1 file changed, 99 insertions(+), 56 deletions(-)
>>>
>>> diff --git a/Documentation/filesystems/proc.rst b/Documentation/filesystems/proc.rst
>>> index 061744c436d9..736ed384750c 100644
>>> --- a/Documentation/filesystems/proc.rst
>>> +++ b/Documentation/filesystems/proc.rst
>>> @@ -942,56 +942,71 @@ can be substantial.  In many cases there are other means to find out
>>>  additional memory using subsystem specific interfaces, for instance
>>>  /proc/net/sockstat for TCP memory allocations.
>>>  
>>> -The following is from a 16GB PIII, which has highmem enabled.
>>> -You may not have all of these fields.
>>> +Example output. You may not have all of these fields.
>>>  
>>>  ::
>>>  
>>>      > cat /proc/meminfo
>>>  
>>> -    MemTotal:     16344972 kB
>>> -    MemFree:      13634064 kB
>>> -    MemAvailable: 14836172 kB
>>> -    Buffers:          3656 kB
>>> -    Cached:        1195708 kB
>>> -    SwapCached:          0 kB
>>> -    Active:         891636 kB
>>> -    Inactive:      1077224 kB
>>> -    HighTotal:    15597528 kB
>>> -    HighFree:     13629632 kB
>>> -    LowTotal:       747444 kB
>>> -    LowFree:          4432 kB
>>> -    SwapTotal:           0 kB
>>> -    SwapFree:            0 kB
>>> -    Dirty:             968 kB
>>> -    Writeback:           0 kB
>>> -    AnonPages:      861800 kB
>>> -    Mapped:         280372 kB
>>> -    Shmem:             644 kB
>>> -    KReclaimable:   168048 kB
>>> -    Slab:           284364 kB
>>> -    SReclaimable:   159856 kB
>>> -    SUnreclaim:     124508 kB
>>> -    PageTables:      24448 kB
>>> -    NFS_Unstable:        0 kB
>>> -    Bounce:              0 kB
>>> -    WritebackTmp:        0 kB
>>> -    CommitLimit:   7669796 kB
>>> -    Committed_AS:   100056 kB
>>> -    VmallocTotal:   112216 kB
>>> -    VmallocUsed:       428 kB
>>> -    VmallocChunk:   111088 kB
>>> -    Percpu:          62080 kB
>>> -    HardwareCorrupted:   0 kB
>>> -    AnonHugePages:   49152 kB
>>> -    ShmemHugePages:      0 kB
>>> -    ShmemPmdMapped:      0 kB
>>> +    MemTotal:       32858820 kB
>>> +    MemFree:        21001236 kB
>>> +    MemAvailable:   27214312 kB
>>> +    Buffers:          581092 kB
>>> +    Cached:          5587612 kB
>>> +    SwapCached:            0 kB
>>> +    Active:          3237152 kB
>>> +    Inactive:        7586256 kB
>>> +    Active(anon):      94064 kB
>>> +    Inactive(anon):  4570616 kB
>>> +    Active(file):    3143088 kB
>>> +    Inactive(file):  3015640 kB
>>> +    Unevictable:           0 kB
>>> +    Mlocked:               0 kB
>>> +    SwapTotal:             0 kB
>>> +    SwapFree:              0 kB
>>> +    Dirty:                12 kB
>>> +    Writeback:             0 kB
>>> +    AnonPages:       4654780 kB
>>> +    Mapped:           266244 kB
>>> +    Shmem:              9976 kB
>>> +    KReclaimable:     517708 kB
>>> +    Slab:             660044 kB
>>> +    SReclaimable:     517708 kB
>>> +    SUnreclaim:       142336 kB
>>> +    KernelStack:       11168 kB
>>> +    PageTables:        20540 kB
>>> +    NFS_Unstable:          0 kB
>>> +    Bounce:                0 kB
>>> +    WritebackTmp:          0 kB
>>> +    CommitLimit:    16429408 kB
>>> +    Committed_AS:    7715148 kB
>>> +    VmallocTotal:   34359738367 kB
>>> +    VmallocUsed:       40444 kB
>>> +    VmallocChunk:          0 kB
>>> +    Percpu:            29312 kB
>>> +    HardwareCorrupted:     0 kB
>>> +    AnonHugePages:   4149248 kB
>>> +    ShmemHugePages:        0 kB
>>> +    ShmemPmdMapped:        0 kB
>>> +    FileHugePages:         0 kB
>>> +    FilePmdMapped:         0 kB
>>> +    CmaTotal:              0 kB
>>> +    CmaFree:               0 kB
>>> +    HugePages_Total:       0
>>> +    HugePages_Free:        0
>>> +    HugePages_Rsvd:        0
>>> +    HugePages_Surp:        0
>>> +    Hugepagesize:       2048 kB
>>> +    Hugetlb:               0 kB
>>> +    DirectMap4k:      401152 kB
>>> +    DirectMap2M:    10008576 kB
>>> +    DirectMap1G:    24117248 kB
>>>  
>>>  MemTotal
>>>                Total usable RAM (i.e. physical RAM minus a few reserved
>>>                bits and the kernel binary code)
>>>  MemFree
>>> -              The sum of LowFree+HighFree
>>> +              Total free RAM. On highmem systems, the sum of LowFree+HighFree
>>>  MemAvailable
>>>                An estimate of how much memory is available for starting new
>>>                applications, without swapping. Calculated from MemFree,
>>> @@ -1005,8 +1020,9 @@ Buffers
>>>                Relatively temporary storage for raw disk blocks
>>>                shouldn't get tremendously large (20MB or so)
>>>  Cached
>>> -              in-memory cache for files read from the disk (the
>>> -              pagecache).  Doesn't include SwapCached
>>> +              In-memory cache for files read from the disk (the
>>> +              pagecache) as well as tmpfs & shmem.
>>> +              Doesn't include SwapCached.
>>>  SwapCached
>>>                Memory that once was swapped out, is swapped back in but
>>>                still also is in the swapfile (if memory is needed it
>>> @@ -1018,6 +1034,11 @@ Active
>>>  Inactive
>>>                Memory which has been less recently used.  It is more
>>>                eligible to be reclaimed for other purposes
>>> +Unevictable
>>> +              Memory that cannot be reclaimed, such as mlocked pages,
>>> +              ramfs backing pages, secret memfd pages etc.
>>
>>
>> A little imprecise, because this only includes memory to be mapped into
>> user space. For example, all kernel allocations are unevictable but not
>> accounted here.
> 
> True. How about the below?

Sounds good, thanks!


-- 
Thanks,

David / dhildenb

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ