aboutsummaryrefslogtreecommitdiff
path: root/linaro/configs/server.conf
blob: 0961ea412cd93248ccefee28366569b08f2c4c86 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
# A set of config options for server workloads.
# I merged this together with the Arndale config via:
#
# ARCH=arm ./scripts/kconfig/merge_config.sh linaro/configs/linaro-base.conf \
# 	linaro/configs/ubuntu-minimal.conf linaro/configs/arndale.conf \
# 	linaro/configs/server.conf linaro/configs/kvm-host.conf \ 
# 	linaro/configs/kvm-guest.conf

# A network bridge makes guest VM networking easier
CONFIG_BRIDGE=m
CONFIG_BRIDGE_NETFILTER=y

# Huge Pages can reduce TLB thrashing for certain workloads.
CONFIG_HUGETLBFS=y

# Transparent huge pages enabled but set to "madvise"
# This means applications must ask for them with madvise syscall.
# We do this as THPs can slow down short term tasks (by copying memory to huge
# pages). For servers with long running tasks this can safely be enabeled.
# One can enable THP for all cases via:
# echo always > /sys/kernel/mm/transparent_hugepage/enabled
CONFIG_TRANSPARENT_HUGEPAGE=y
CONFIG_TRANSPARENT_HUGEPAGE_MADVISE=y

# A point for discussion, with 3G of user space one can mmap larger files.
# With 3G kernel space, more file caching can take place...
# Set at 3G user space for the moment.
CONFIG_VMSPLIT_3G=y

# Save PTEs to high mem. This will make faulting new pages slightly more
# expensive but gives us a little more normal memory headroom in the kernel
# potentially speeding up other things.
CONFIG_HIGHPTE=y

# Switch over to the SLUB allocator. It is likely to replace SLAB soon, is
# a little simpler and faster, and is the default slab allocator in the
# kernel since about 2.6.22 anyway...
CONFIG_SLUB=y