On Thu, Feb 15, 2024 at 04:54:38PM -0800, Andrew Morton wrote: > On Mon, 12 Feb 2024 13:38:59 -0800 Suren Baghdasaryan <surenb@xxxxxxxxxx> wrote: > > > +Example output. > > + > > +:: > > + > > + > cat /proc/allocinfo > > + > > + 153MiB mm/slub.c:1826 module:slub func:alloc_slab_page > > + 6.08MiB mm/slab_common.c:950 module:slab_common func:_kmalloc_order > > + 5.09MiB mm/memcontrol.c:2814 module:memcontrol func:alloc_slab_obj_exts > > + 4.54MiB mm/page_alloc.c:5777 module:page_alloc func:alloc_pages_exact > > + 1.32MiB include/asm-generic/pgalloc.h:63 module:pgtable func:__pte_alloc_one > > I don't really like the fancy MiB stuff. Wouldn't it be better to just > present the amount of memory in plain old bytes, so people can use sort > -n on it? They can use sort -h on it; the string_get_size() patch was specifically so that we could make the output compatible with sort -h > And it's easier to tell big-from-small at a glance because > big has more digits. > > Also, the first thing any sort of downstream processing of this data is > going to have to do is to convert the fancified output back into > plain-old-bytes. So why not just emit plain-old-bytes? > > If someone wants the fancy output (and nobody does) then that can be > done in userspace. I like simpler, more discoverable tools; e.g. we've got a bunch of interesting stuff in scripts/ but it doesn't get used nearly as much - not as accessible as cat'ing a file, definitely not going to be installed by default. I'm just optimizing for the most common use case. I doubt there's going to be nearly as much consumption by tools, and I'm ok with making them do the conversion back to bytes if they really need it.