Kernel boot parameter "mem=" is not limiting memory size correctly

Solution Verified - Updated -

Issue

  • The kernel boot parameter mem= is not limiting memory size correctly.

  • Output without the kernel command line parameter mem=8G.

# numactl -H                                                                                                                                                                                                                                               
available: 2 nodes (0-1)
node 0 cpus: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47
node 0 size: 130973 MB
node 0 free: 127251 MB
node 1 cpus: 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63
node 1 size: 131072 MB
node 1 free: 128177 MB
node distances:
node   0   1
  0:  10  35
  1:  35  10
  • Output with the kernel command line parameter mem=8G. It is limiting memory size only from NUMA node 0.
# numactl -H                                                                                                                                                                                                                                               
node 0 cpus: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47
node 0 size: 5533 MB
node 0 free: 2206 MB
node 1 cpus: 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63
node 1 size: 131072 MB
node 1 free: 130466 MB
node distances:
node   0   1
  0:  10  35
  1:  35  10

Environment

  • Red Hat Enterprise Linux release 8
  • Fujitsu PRIMEQUEST 3800E
  • kernel

Subscriber exclusive content

A Red Hat subscription provides unlimited access to our knowledgebase, tools, and much more.

Current Customers and Partners

Log in for full access

Log In

New to Red Hat?

Learn more about Red Hat subscriptions

Using a Red Hat product through a public cloud?

How to access this content