If you like BoxMatrix then please contribute Supportdata, Supportdata2, Firmware and/or Hardware (get in touch).
My metamonk@yahoo.com is not reachable by me since years. Please use hippie2000@webnmail.de instead.

0
U

Property:buddyinfo

From BoxMatrix
(Redirected from buddyinfo)


BoxMatrix >> System >> buddyinfo @ BoxMatrix   -   IRC-Chat   -   Translate: de es fr it nl pl
News Selectors Models Accessories Components Environment Config Commands System Webif Software Develop Lexicon Community Project Media

Devices Filesystems Partitions Sockets Netlink Pipes Interfaces Bridges Ports Events Sources Sinks AVMIPC Processes Watchdogs Memory Slab Vmalloc ProcFS SysFS Research

Procfs-Object

Goto:   Examples  -  Dependencies   -   Model-Matrix   -   Help Supportdata2   -   SMW-Browser

Details

buddyinfo provides Kernel memory allocator information for diagnosing memory fragmentation issues.

Supportdata2 includes buddyinfo in the Meminfo section since sd2-09.
In Supportdata-Probes it is included since fw X.XX, but it's not parsed for BoxMatrix yet.

Excerpt from the proc(5) man page:

/proc/buddyinfo

       This file contains information which is used for
       diagnosing memory fragmentation issues.  Each line starts
       with the identification of the node and the name of the
       zone which together identify a memory region.  This is
       then followed by the count of available chunks of a
       certain order in which these zones are split.  The size in
       bytes of a certain order is given by the formula:

           (2^order) * PAGE_SIZE

       The binary buddy allocator algorithm inside the kernel
       will split one chunk into two chunks of a smaller order
       (thus with half the size) or combine two contiguous chunks
       into one larger chunk of a higher order (thus with double
       the size) to satisfy allocation requests and to counter
       memory fragmentation.  The order matches the column
       number, when starting to count at zero.

       For example on an x86-64 system:
          Node 0, zone     DMA     1    1    1    0    2    1    1    0    1    1    3
          Node 0, zone   DMA32    65   47    4   81   52   28   13   10    5    1  404
          Node 0, zone  Normal   216   55  189  101   84   38   37   27    5    3  587

       In this example, there is one node containing three zones
       and there are 11 different chunk sizes.  If the page size
       is 4 kilobytes, then the first zone called DMA (on x86 the
       first 16 megabyte of memory) has 1 chunk of 4 kilobytes
       (order 0) available and has 3 chunks of 4 megabytes (order
       10) available.

       If the memory is heavily fragmented, the counters for
       higher order chunks will be zero and allocation of large
       contiguous areas will fail.

       Further information about the zones can be found in
       /proc/zoneinfo.

Excerpt from the Kernel.org /proc filesystem documentation:

> cat /proc/buddyinfo

Node 0, zone      DMA      0      4      5      4      4      3 ...
Node 0, zone   Normal      1      0      0      1    101      8 ...
Node 0, zone  HighMem      2      0      0      1      1      0 ...

External fragmentation is a problem under some workloads, and buddyinfo is a
useful tool for helping diagnose these problems.  Buddyinfo will give you a 
clue as to how big an area you can safely allocate, or why a previous
allocation failed.

Each column represents the number of pages of a certain order which are 
available.  In this case, there are 0 chunks of 2^0*PAGE_SIZE available in 
ZONE_DMA, 4 chunks of 2^1*PAGE_SIZE in ZONE_DMA, 101 chunks of 2^4*PAGE_SIZE 
available in ZONE_NORMAL, etc... 

More information relevant to external fragmentation can be found in
pagetypeinfo.

Examples

6490 fw 7.29 examples:

root@fritz2:/var/mod/root# cat /proc/buddyinfo 

Node 0, zone      DMA      0      0      1      1      1      0      0      0      1      1      3 
Node 0, zone   Normal    283    152    103     35     13     11      2      3      2      2      5 

root@fritz2:/var/mod/root# rpc cat /proc/buddyinfo 

Node 0, zone   Normal     39     21     18      6      2      1      2      2      1      1     41

Dependencies

Daily updated index of all dependencies of this object. Last update: GMT.
A ** in the Mod column marks info from Supportdata2 probes, which will always stay incomplete.
A - in the Mod column marks manual research, the Firmware then shows where the Object occurs, not the Relation.

Relation Typ Object Mod Firmware Info Origin
0 dependencies for this object

Model-Matrix

Daily updated index of the presence, path and size of this object for each model. Last update: 2024-04-25 04:26 GMT.
Showing all models using this object. Click any column header (click-wait-click) to sort the list by the respective data.
The (main/scrpn/boot/arm/prx/atom) label in the Model column shows which CPU is meant for models with multiple Linux instances.
Note that this list comes from Supportdata2 probes, which can have arbitrary settings and come from different firmware versions.
It doesn't say much if a model is not listed here. It may be a missing supportdata2 file or just a disabled feature.

Help Supportdata2

The data in this article is incomplete since it was manually collected using the Supportdata2 project.

Unlike the Supportdata-Probes which have been collected for years Supportdata2 is brand new and only has a few probes.
If you have access to a shell then please help to extend the Supportdata2 collection to improve this data.

It's easy and it's done in minutes. Please send created data as an Email attachment to the address listed here. Thanks!

SMW-Browser

Information is currently being retrieved from the backend.
 

Synonyms

Showing 1 related property.

b