0
0
mirror of https://gitlab.nic.cz/labs/bird.git synced 2024-12-22 09:41:54 +00:00
bird/sysdep/cf
Ondrej Zajicek 1338ba86da Alloc: Disable transparent huge pages
The usage pattern implemented in allocator seems to be incompatible with
transparent huge pages, as memory released using madvise(MADV_DONTNEED)
with regular page size and alignment does not seem to trigger demotion
of huge pages back to regular pages, even when significant number of
pages is released. Even if demotion is triggered when system memory
is low, it still breaks memory accounting.
2024-05-30 12:30:00 +02:00
..
bsd-netlink.h Netlink: move OS-specific headers and defines to sysdep 2024-05-30 12:29:59 +02:00
bsd.h Build system reworked to one global Makefile with includes and no nesting 2016-05-10 14:07:34 +02:00
linux.h Alloc: Disable transparent huge pages 2024-05-30 12:30:00 +02:00
README Alloc: Disable transparent huge pages 2024-05-30 12:30:00 +02:00

Available configuration variables:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

CONFIG_AUTO_ROUTES	Device routes are added automagically by the kernel
CONFIG_SELF_CONSCIOUS	We're able to recognize whether route was installed by us
CONFIG_MULTIPLE_TABLES	The kernel supports multiple routing tables
CONFIG_SINGLE_ROUTE	There is only one route per network

CONFIG_MC_PROPER_SRC	Multicast packets have source address according to socket saddr field
CONFIG_SKIP_MC_BIND	Don't call bind on multicast socket (def for *BSD)
CONFIG_NO_IFACE_BIND	Bind to iface is not available, use workarounds (def for *BSD)
CONFIG_UNIX_DONTROUTE	Use setsockopts DONTROUTE (undef for *BSD)
CONFIG_DONTROUTE_UNICAST Use MSG_DONTROUTE flag for unicast packets (def for FreeBSD)
CONFIG_USE_HDRINCL	Use IP_HDRINCL instead of control messages for source address on raw IP sockets.

CONFIG_RESTRICTED_PRIVILEGES	Implements restricted privileges using drop_uid()

CONFIG_MADV_DONTNEED_TO_FREE	To free pages, use MADV_DONTNEED instead of MADV_FREE (linux)
CONFIG_DISABLE_THP	Disable transparent huge pages (linux)