Dennis Zhou (Facebook)
7e8a6304d5
/proc/meminfo: add percpu populated pages count
...
Currently, percpu memory only exposes allocation and utilization
information via debugfs. This more or less is only really useful for
understanding the fragmentation and allocation information at a per-chunk
level with a few global counters. This is also gated behind a config.
BPF and cgroup, for example, have seen an increase in use causing
increased use of percpu memory. Let's make it easier for someone to
identify how much memory is being used.
This patch adds the "Percpu" stat to meminfo to more easily look up how
much percpu memory is in use. This number includes the cost for all
allocated backing pages and not just insight at the per a unit, per chunk
level. Metadata is excluded. I think excluding metadata is fair because
the backing memory scales with the numbere of cpus and can quickly
outweigh the metadata. It also makes this calculation light.
Link: http://lkml.kernel.org/r/20180807184723.74919-1-dennisszhou@gmail.com
Signed-off-by: Dennis Zhou <dennisszhou@gmail.com>
Acked-by: Tejun Heo <tj@kernel.org>
Acked-by: Roman Gushchin <guro@fb.com>
Reviewed-by: Andrew Morton <akpm@linux-foundation.org>
Acked-by: David Rientjes <rientjes@google.com>
Acked-by: Vlastimil Babka <vbabka@suse.cz>
Cc: Johannes Weiner <hannes@cmpxchg.org>
Cc: Christoph Lameter <cl@linux.com>
Cc: Alexey Dobriyan <adobriyan@gmail.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2018-08-22 10:52:45 -07:00
..
ABI
Char/Misc driver patches for 4.19-rc1
2018-08-18 11:04:51 -07:00
accelerators
accounting
acpi
ACPI: property: graph: Update graph documentation to use generic references
2018-07-23 12:44:52 +02:00
admin-guide
mm, oom: introduce memory.oom.group
2018-08-22 10:52:45 -07:00
aoe
arm
arm64
auxdisplay
backlight
block
block: Track DISCARD statistics and output them in stat and diskstat
2018-07-18 08:44:22 -06:00
blockdev
bpf
Merge git://git.kernel.org/pub/scm/linux/kernel/git/bpf/bpf-next
2018-08-07 11:02:05 -07:00
bus-devices
cdrom
cgroup-v1
cma
connector
console
Documentation: corrections to console/console.txt
2018-08-10 16:09:40 -06:00
core-api
This was a moderately busy cycle for docs, with the usual collection of
2018-08-14 14:29:31 -07:00
cpu-freq
cpuidle
crypto
crypto: remove redundant type flags from tfm allocation
2018-07-09 00:30:29 +08:00
dev-tools
doc: dev-tools: kselftest.rst: update contributing new tests
2018-06-29 09:01:50 -06:00
device-mapper
dm thin: include metadata_low_watermark threshold in pool status
2018-07-30 11:49:08 -04:00
devicetree
RTC for 4.19
2018-08-20 16:30:27 -07:00
doc-guide
Documentation/sphinx: allow "functions" with no parameters
2018-06-30 07:52:42 -06:00
driver-api
Driver core patches for 4.19-rc1
2018-08-18 11:44:53 -07:00
driver-model
dmaengine: add a new helper dmaenginem_async_device_register
2018-07-30 10:50:22 +05:30
early-userspace
EDID
extcon
fault-injection
fb
console/fbcon: Add support for deferred console takeover
2018-06-28 15:20:30 +02:00
features
ARM: 8777/1: Hook up SYNC_CORE functionality for sys_membarrier()
2018-07-11 11:02:08 +01:00
filesystems
/proc/meminfo: add percpu populated pages count
2018-08-22 10:52:45 -07:00
firmware_class
fmc
fpga
docs: fpga: add a document for FPGA Device Feature List (DFL) Framework Overview
2018-07-15 13:55:44 +02:00
gpio
gpu
drm/msm/gpu: Add the buffer objects from the submit to the crash dump
2018-07-30 08:50:10 -04:00
hid
hwmon
powerpc updates for 4.19
2018-08-17 11:32:50 -07:00
i2c
ia64
ide
iio
infiniband
input
input: add MT_TOOL_DIAL
2018-07-17 15:33:47 +02:00
ioctl
Char/Misc driver patches for 4.19-rc1
2018-08-18 11:04:51 -07:00
isdn
kbuild
Kconfig updates for v4.19
2018-08-15 12:50:10 -07:00
kdump
kernel-hacking
doc:it_IT: translation for kernel-hacking
2018-07-26 16:21:09 -06:00
laptops
leds
lightnvm
livepatch
locking
locking: Implement an algorithm choice for Wound-Wait mutexes
2018-07-03 09:44:36 +02:00
m68k
maintainer
md
media
media: doc: media/v4l-drivers: Update Qualcomm CAMSS driver document for 8x96
2018-08-02 08:48:00 -04:00
memory-devices
mic
mips
misc-devices
pci_endpoint_test: Add 2 ioctl commands
2018-07-19 11:46:57 +01:00
mmc
mtd
namespaces
netlabel
networking
Merge git://git.kernel.org/pub/scm/linux/kernel/git/pablo/nf
2018-08-18 09:59:19 -07:00
nfc
nios2
nvdimm
nvmem
openrisc
parisc
PCI
Merge branch 'remotes/lorenzo/pci/dwc'
2018-08-15 14:59:11 -05:00
pcmcia
pcmcia: remove long deprecated pcmcia_request_exclusive_irq() function
2018-08-18 12:30:42 -07:00
perf
phy
platform
power
PM / reboot: Eliminate race between reboot and suspend
2018-08-06 12:35:20 +02:00
powerpc
powerpc: Document issues with TM on POWER9
2018-07-02 23:54:29 +10:00
pps
process
Raise the minimum required gcc version to 4.6
2018-08-20 14:12:38 -07:00
pti
ptp
rapidio
RCU
rculist: Improve documentation for list_for_each_entry_from_rcu()
2018-07-12 15:39:25 -07:00
riscv
s390
scheduler
scsi
security
serial
sh
sound
ASoC: Updates for v4.19
2018-08-13 12:12:31 +02:00
sparc
sphinx
Documentation/sphinx: allow "functions" with no parameters
2018-06-30 07:52:42 -06:00
sphinx-static
spi
sysctl
Documentation/sysctl/vm.txt: update __vm_enough_memory()'s path
2018-08-22 10:52:44 -07:00
target
thermal
timers
timekeeping.txt: Correct maxCount of n-bit binary counter
2018-07-23 09:33:06 -06:00
trace
This was a moderately busy cycle for docs, with the usual collection of
2018-08-14 14:29:31 -07:00
translations
This was a moderately busy cycle for docs, with the usual collection of
2018-08-14 14:29:31 -07:00
usb
USB-serial updates for v4.19-rc1
2018-07-20 21:47:15 +02:00
userspace-api
virtual
KVM: X86: Implement "send IPI" hypercall
2018-08-06 17:59:20 +02:00
vm
w1
w1: fix w1_ds2438 documentation
2018-07-07 17:27:13 +02:00
watchdog
wimax
x86
Merge branch 'x86-timers-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
2018-08-13 18:28:19 -07:00
xtensa
.gitignore
00-INDEX
atomic_bitops.txt
atomic_t.txt
bt8xxgpio.txt
btmrvl.txt
bus-virt-phys-mapping.txt
Changes
clearing-warn-once.txt
CodingStyle
conf.py
ext4: import inode data fork chapter from wiki page
2018-07-29 15:45:00 -04:00
cpu-load.txt
cputopology.txt
crc32.txt
dcdbas.txt
debugging-modules.txt
debugging-via-ohci1394.txt
dell_rbu.txt
digsig.txt
DMA-API-HOWTO.txt
DMA-API.txt
DMA-attributes.txt
DMA-ISA-LPC.txt
docutils.conf
dontdiff
efi-stub.txt
eisa.txt
flexible-arrays.txt
futex-requeue-pi.txt
gcc-plugins.txt
highuid.txt
hw_random.txt
hwspinlock.txt
index.rst
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next
2018-08-15 15:04:25 -07:00
Intel-IOMMU.txt
intel_txt.txt
io-mapping.txt
io_ordering.txt
iostats.txt
block: Track DISCARD statistics and output them in stat and diskstat
2018-07-18 08:44:22 -06:00
IPMI.txt
IRQ-affinity.txt
IRQ-domain.txt
IRQ.txt
irqflags-tracing.txt
isa.txt
isapnp.txt
kernel-per-CPU-kthreads.txt
kobject.txt
kprobes.txt
kprobes/Documentation: Fix various typos
2018-06-22 11:10:55 +02:00
kref.txt
ldm.txt
lockup-watchdogs.txt
logo.gif
logo.txt
lsm.txt
lzo.txt
mailbox.txt
Makefile
memory-barriers.txt
sched/Documentation: Update wake_up() & co. memory-barrier guarantees
2018-07-17 09:30:34 +02:00
memory-hotplug.txt
men-chameleon-bus.txt
nommu-mmap.txt
Documentation: nommu-map: Fix duplicate word typo
2018-06-26 09:01:27 -06:00
ntb.txt
numastat.txt
padata.txt
parport-lowlevel.txt
percpu-rw-semaphore.txt
phy.txt
pi-futex.txt
pnp.txt
preempt-locking.txt
pwm.txt
rbtree.txt
remoteproc.txt
rfkill.txt
robust-futex-ABI.txt
robust-futexes.txt
rpmsg.txt
rtc.txt
SAK.txt
sgi-ioc4.txt
siphash.txt
SM501.txt
smsc_ece1099.txt
speculation.txt
static-keys.txt
SubmittingPatches
svga.txt
switchtec.txt
sync_file.txt
tee.txt
this_cpu_ops.txt
unaligned-memory-access.txt
vfio-mediated-device.txt
vfio.txt
video-output.txt
xillybus.txt
xz.txt
zorro.txt