MEMCONFIG(8) - System Manager's Manual

MEMCONFIG(8) - System Manager’s Manual #

MEMCONFIG(8) - System Manager’s Manual

NAME #

memconfig - control system cache behaviour with respect to memory

SYNOPSIS #

memconfig list [-a]
memconfig set -b base -l length -o owner attribute
memconfig clear -o owner
memconfig clear -b base -l length

DESCRIPTION #

A number of supported system architectures allow the behaviour of the CPU cache to be programmed to behave differently depending on the region being written.

memconfig provides an interface to this facility, allowing CPU cache behavior to be altered for ranges of system physical memory.

These ranges are typically power-of-2 aligned and sized, however the specific rules governing their layout vary between architectures. The memconfig program does not attempt to enforce these rules, however the system will reject any attempt to set an illegal combination.

The operands and their options are as follows:

list

List range slots.

-a

List all range slots, even those that are inactive.

set

Set memory range attributes.

-b base

Memory range base address.

-l length

Length of memory range in bytes, power of 2.

-o owner

Text identifier for this setting (7 char max).

attribute

Attributes applied to this range; combinations of force, uncacheable, write-combine, write-through, write-back, or write-protect.

clear

Clear memory range attributes. Ranges may be cleared by owner or by base/length combination.

To clear based on ownership:

-o owner

All ranges with this owner will be cleared.

To clear based on the base/length combination:

-b base

Memory range base address.

-l length

Length of memory range in bytes, power of 2.

Base and length must exactly match an existing range.

SEE ALSO #

mtrr(4)

HISTORY #

memconfig was originally introduced in FreeBSD 3.3 as memcontrol.

OpenBSD 7.5 - January 20, 2014