mirror of
https://github.com/archlinuxarm/PKGBUILDs.git
synced 2024-11-28 22:57:37 +00:00
core/linux-kirkwood to 3.13-1
This commit is contained in:
parent
7e33c91a19
commit
66274425ff
5 changed files with 157 additions and 130 deletions
|
@ -7,12 +7,12 @@ buildarch=2
|
|||
pkgbase=linux-kirkwood
|
||||
_kernelname=${pkgbase#linux}
|
||||
_desc="Marvell Kirkwood"
|
||||
pkgver=3.12.8
|
||||
pkgver=3.13
|
||||
pkgrel=1
|
||||
cryptover=1.6
|
||||
cryptodev_commit=57b5544de80db85c8955499831fdaa30829db77a
|
||||
bfqver=v6r2
|
||||
uksmver="0.1.2.2"
|
||||
uksmname="v3.12"
|
||||
uksmname="v3.13"
|
||||
|
||||
arch=('arm')
|
||||
url="http://www.kernel.org/"
|
||||
|
@ -26,36 +26,27 @@ source=("ftp://ftp.kernel.org/pub/linux/kernel/v3.x/linux-${pkgver}.tar.xz"
|
|||
'mach-types::http://www.arm.linux.org.uk/developer/machines/download.php'
|
||||
'change-default-console-loglevel.patch'
|
||||
'usb-add-reset-resume-quirk-for-several-webcams.patch'
|
||||
"git://git.code.sf.net/p/aufs/aufs3-standalone#branch=aufs${pkgver%.*}"
|
||||
"http://download.gna.org/cryptodev-linux/cryptodev-linux-${cryptover}.tar.gz"
|
||||
"git://git.code.sf.net/p/aufs/aufs3-standalone#branch=aufs${pkgver:0:4}"
|
||||
"https://github.com/cryptodev-linux/cryptodev-linux/archive/${cryptodev_commit}.tar.gz"
|
||||
"http://kerneldedup.org/download/uksm/${uksmver}/uksm-${uksmver}-for-${uksmname}.patch"
|
||||
"http://algo.ing.unimo.it/people/paolo/disk_sched/patches/${pkgver%.*}.0-${bfqver}/0001-block-cgroups-kconfig-build-bits-for-BFQ-${bfqver}-${pkgver%.*}.patch"
|
||||
"http://algo.ing.unimo.it/people/paolo/disk_sched/patches/${pkgver%.*}.0-${bfqver}/0002-block-introduce-the-BFQ-${bfqver}-I-O-sched-for-${pkgver%.*}.patch"
|
||||
"http://algo.ing.unimo.it/people/paolo/disk_sched/patches/${pkgver%.*}.0-${bfqver}/0003-block-bfq-add-Early-Queue-Merge-EQM-to-BFQ-${bfqver}-for-${pkgver%.*}.0.patch"
|
||||
'aufs-sources-3.12.7-mmap-aufs3.patch')
|
||||
"http://algo.ing.unimo.it/people/paolo/disk_sched/patches/${pkgver:0:4}.0-${bfqver}/0001-block-cgroups-kconfig-build-bits-for-BFQ-${bfqver}-${pkgver:0:4}.patch"
|
||||
"http://algo.ing.unimo.it/people/paolo/disk_sched/patches/${pkgver:0:4}.0-${bfqver}/0002-block-introduce-the-BFQ-${bfqver}-I-O-sched-for-${pkgver:0:4}.patch"
|
||||
"http://algo.ing.unimo.it/people/paolo/disk_sched/patches/${pkgver:0:4}.0-${bfqver}/0003-block-bfq-add-Early-Queue-Merge-EQM-to-BFQ-${bfqver}-for-${pkgver:0:4}.0.patch")
|
||||
|
||||
md5sums=('bacfc23a07a6fee0d271a4b062862445'
|
||||
md5sums=('0ecbaf65c00374eb4a826c2f9f37606f'
|
||||
'1c87cbbc3355eb8741143b4595d0bb5e'
|
||||
'5050ace2b2352cd39edc4e7396b8651a'
|
||||
'b4b1b416e579e1daabd84c4e5953a382'
|
||||
'SKIP'
|
||||
'65d5a4f313310bb2a732d022d51ea7e7'
|
||||
'9b5a265440abf57d2052838f31486a3a'
|
||||
'SKIP'
|
||||
'eade38998313c25fd7934719cdf8a2ea'
|
||||
'57cbf7fa8220461f8a052ea0eb9af779'
|
||||
'2d39966d14fdad1e05679232f97fdb3c'
|
||||
'2965641038a5aae263722b1ba16b971b'
|
||||
'9a55951ee4c3741b61e2e159631b5cf2'
|
||||
'2dd9dae61c1d0eacda41a17bd13e7f7f')
|
||||
'a59f78f0a34cfe321921265246a7b725'
|
||||
'36d74b349f4c0e97dd5e5b91b8a1d750'
|
||||
'32db619d53dd4a174b85dc417363b964'
|
||||
'788c1b0d2951e019547460f952aabdfb'
|
||||
'1c3dc805758bd27109abab08a78305a6')
|
||||
|
||||
prepare() {
|
||||
|
||||
#Remove after this fix is in the tree
|
||||
msg2 "Fixing aufs3 for kernel >=3.12.7"
|
||||
cd "${srcdir}/aufs3-standalone"
|
||||
patch -p1 -i ../aufs-sources-3.12.7-mmap-aufs3.patch
|
||||
#Evomer
|
||||
|
||||
cd "${srcdir}/linux-${pkgver}"
|
||||
|
||||
msg2 "Copying aufs3 patches into the kernel source tree"
|
||||
|
@ -83,9 +74,9 @@ msg2 "Add UKSM patch"
|
|||
patch -Np1 -i "${srcdir}/uksm-${uksmver}-for-${uksmname}.patch"
|
||||
|
||||
msg2 "Add BFQ patches"
|
||||
patch -Np1 -i "${srcdir}/0001-block-cgroups-kconfig-build-bits-for-BFQ-${bfqver}-${pkgver%.*}.patch"
|
||||
patch -Np1 -i "${srcdir}/0002-block-introduce-the-BFQ-${bfqver}-I-O-sched-for-${pkgver%.*}.patch"
|
||||
patch -Np1 -i "${srcdir}/0003-block-bfq-add-Early-Queue-Merge-EQM-to-BFQ-${bfqver}-for-${pkgver%.*}.0.patch"
|
||||
patch -Np1 -i "${srcdir}/0001-block-cgroups-kconfig-build-bits-for-BFQ-${bfqver}-${pkgver:0:4}.patch"
|
||||
patch -Np1 -i "${srcdir}/0002-block-introduce-the-BFQ-${bfqver}-I-O-sched-for-${pkgver:0:4}.patch"
|
||||
patch -Np1 -i "${srcdir}/0003-block-bfq-add-Early-Queue-Merge-EQM-to-BFQ-${bfqver}-for-${pkgver:0:4}.0.patch"
|
||||
|
||||
cat "${srcdir}/config" > ./.config
|
||||
|
||||
|
@ -126,7 +117,7 @@ msg "Building!"
|
|||
make ${MAKEFLAGS} uImage modules
|
||||
|
||||
msg "Building cryptodev module"
|
||||
cd "${srcdir}/cryptodev-linux-${cryptover}"
|
||||
cd "${srcdir}/cryptodev-linux-${cryptodev_commit}"
|
||||
make KERNEL_DIR="${srcdir}/linux-${pkgver}"
|
||||
}
|
||||
|
||||
|
@ -171,7 +162,7 @@ _package() {
|
|||
echo "${_kernver}" > "${pkgdir}/lib/modules/extramodules-${_basekernel}-${_kernelname:-ARCH}/version"
|
||||
|
||||
# install cryptodev module
|
||||
cd "${srcdir}/cryptodev-linux-${cryptover}"
|
||||
cd "${srcdir}/cryptodev-linux-${cryptodev_commit}"
|
||||
make -C "${srcdir}/linux-${pkgver}" INSTALL_MOD_PATH="${pkgdir}" SUBDIRS=`pwd` modules_install
|
||||
|
||||
cd "${srcdir}/linux-${pkgver}"
|
||||
|
@ -324,7 +315,7 @@ _package-headers() {
|
|||
rm -rf "${pkgdir}"/usr/src/linux-${_kernver}/arch/{alpha,arm26,avr32,blackfin,cris,frv,h8300,ia64,m32r,m68k,m68knommu,mips,microblaze,mn10300,parisc,powerpc,ppc,s390,sh,sh64,sparc,sparc64,um,v850,x86,xtensa}
|
||||
|
||||
# install cryptodev header
|
||||
cd "${srcdir}/cryptodev-linux-${cryptover}"
|
||||
cd "${srcdir}/cryptodev-linux-${cryptodev_commit}"
|
||||
install -D crypto/cryptodev.h "${pkgdir}/usr/src/linux-${_kernver}/crypto/cryptodev.h"
|
||||
}
|
||||
|
||||
|
|
|
@ -1,38 +0,0 @@
|
|||
aufs3-mmap.patch | 17 ++++++-----------
|
||||
1 file changed, 6 insertions(+), 11 deletions(-)
|
||||
|
||||
diff --git a/aufs3-mmap.patch b/aufs3-mmap.patch
|
||||
index acebfa8..8682a6d 100644
|
||||
--- a/aufs3-mmap.patch
|
||||
+++ b/aufs3-mmap.patch
|
||||
@@ -215,24 +215,19 @@ index ae4846f..3f890ee 100644
|
||||
if (page->mapping != inode->i_mapping) {
|
||||
unlock_page(page);
|
||||
diff --git a/mm/fremap.c b/mm/fremap.c
|
||||
-index 5bff081..246a9c7 100644
|
||||
+index bbc4d66..7deee2c 100644
|
||||
--- a/mm/fremap.c
|
||||
+++ b/mm/fremap.c
|
||||
-@@ -207,11 +207,12 @@ get_write_lock:
|
||||
- */
|
||||
- if (mapping_cap_account_dirty(mapping)) {
|
||||
- unsigned long addr;
|
||||
-- struct file *file = get_file(vma->vm_file);
|
||||
-+ struct file *file = vma->vm_file;
|
||||
+@@ -211,7 +211,9 @@ get_write_lock:
|
||||
+ /* mmap_region may free vma; grab the info now */
|
||||
+ vm_flags = vma->vm_flags;
|
||||
|
||||
+ vma_get_file(vma);
|
||||
- addr = mmap_region(file, start, size,
|
||||
- vma->vm_flags, pgoff);
|
||||
-- fput(file);
|
||||
+ addr = mmap_region(file, start, size, vm_flags, pgoff);
|
||||
+ vma_fput(vma);
|
||||
+ fput(file);
|
||||
if (IS_ERR_VALUE(addr)) {
|
||||
err = addr;
|
||||
- } else {
|
||||
diff --git a/mm/madvise.c b/mm/madvise.c
|
||||
index 539eeb9..5e700b1 100644
|
||||
--- a/mm/madvise.c
|
|
@ -1,6 +1,6 @@
|
|||
#
|
||||
# Automatically generated file; DO NOT EDIT.
|
||||
# Linux/arm 3.12.6-1 Kernel Configuration
|
||||
# Linux/arm 3.13.0-1 Kernel Configuration
|
||||
#
|
||||
CONFIG_ARM=y
|
||||
CONFIG_SYS_SUPPORTS_APM_EMULATION=y
|
||||
|
@ -49,7 +49,6 @@ CONFIG_POSIX_MQUEUE_SYSCTL=y
|
|||
CONFIG_FHANDLE=y
|
||||
CONFIG_AUDIT=y
|
||||
# CONFIG_AUDITSYSCALL is not set
|
||||
# CONFIG_AUDIT_LOGINUID_IMMUTABLE is not set
|
||||
|
||||
#
|
||||
# IRQ subsystem
|
||||
|
@ -79,6 +78,7 @@ CONFIG_HIGH_RES_TIMERS=y
|
|||
# CPU/Task time and stats accounting
|
||||
#
|
||||
CONFIG_TICK_CPU_ACCOUNTING=y
|
||||
# CONFIG_VIRT_CPU_ACCOUNTING_GEN is not set
|
||||
# CONFIG_IRQ_TIME_ACCOUNTING is not set
|
||||
CONFIG_BSD_PROCESS_ACCT=y
|
||||
CONFIG_BSD_PROCESS_ACCT_V3=y
|
||||
|
@ -191,10 +191,13 @@ CONFIG_GENERIC_IDLE_POLL_SETUP=y
|
|||
CONFIG_HAVE_REGS_AND_STACK_ACCESS_API=y
|
||||
CONFIG_HAVE_CLK=y
|
||||
CONFIG_HAVE_DMA_API_DEBUG=y
|
||||
CONFIG_HAVE_PERF_REGS=y
|
||||
CONFIG_HAVE_PERF_USER_STACK_DUMP=y
|
||||
CONFIG_HAVE_ARCH_JUMP_LABEL=y
|
||||
CONFIG_ARCH_WANT_IPC_PARSE_VERSION=y
|
||||
CONFIG_HAVE_ARCH_SECCOMP_FILTER=y
|
||||
CONFIG_HAVE_CONTEXT_TRACKING=y
|
||||
CONFIG_HAVE_VIRT_CPU_ACCOUNTING_GEN=y
|
||||
CONFIG_HAVE_IRQ_TIME_ACCOUNTING=y
|
||||
CONFIG_HAVE_MOD_ARCH_SPECIFIC=y
|
||||
CONFIG_MODULES_USE_ELF_REL=y
|
||||
|
@ -210,6 +213,7 @@ CONFIG_HAVE_GENERIC_DMA_COHERENT=y
|
|||
CONFIG_SLABINFO=y
|
||||
CONFIG_RT_MUTEXES=y
|
||||
CONFIG_BASE_SMALL=0
|
||||
# CONFIG_SYSTEM_TRUSTED_KEYRING is not set
|
||||
CONFIG_MODULES=y
|
||||
# CONFIG_MODULE_FORCE_LOAD is not set
|
||||
CONFIG_MODULE_UNLOAD=y
|
||||
|
@ -305,7 +309,6 @@ CONFIG_ARCH_KIRKWOOD=y
|
|||
# CONFIG_ARCH_S5PC100 is not set
|
||||
# CONFIG_ARCH_S5PV210 is not set
|
||||
# CONFIG_ARCH_EXYNOS is not set
|
||||
# CONFIG_ARCH_SHARK is not set
|
||||
# CONFIG_ARCH_DAVINCI is not set
|
||||
# CONFIG_ARCH_OMAP1 is not set
|
||||
# CONFIG_GPIO_PCA953X is not set
|
||||
|
@ -461,6 +464,8 @@ CONFIG_ALIGNMENT_TRAP=y
|
|||
CONFIG_UACCESS_WITH_MEMCPY=y
|
||||
# CONFIG_SECCOMP is not set
|
||||
# CONFIG_CC_STACKPROTECTOR is not set
|
||||
CONFIG_SWIOTLB=y
|
||||
CONFIG_IOMMU_HELPER=y
|
||||
|
||||
#
|
||||
# Boot options
|
||||
|
@ -485,7 +490,6 @@ CONFIG_ATAGS_PROC=y
|
|||
# CPU Frequency scaling
|
||||
#
|
||||
CONFIG_CPU_FREQ=y
|
||||
CONFIG_CPU_FREQ_TABLE=y
|
||||
CONFIG_CPU_FREQ_GOV_COMMON=y
|
||||
CONFIG_CPU_FREQ_STAT=y
|
||||
CONFIG_CPU_FREQ_STAT_DETAILS=y
|
||||
|
@ -615,7 +619,6 @@ CONFIG_TCP_CONG_CUBIC=y
|
|||
CONFIG_DEFAULT_TCP_CONG="cubic"
|
||||
# CONFIG_TCP_MD5SIG is not set
|
||||
CONFIG_IPV6=m
|
||||
CONFIG_IPV6_PRIVACY=y
|
||||
CONFIG_IPV6_ROUTER_PREF=y
|
||||
# CONFIG_IPV6_ROUTE_INFO is not set
|
||||
# CONFIG_IPV6_OPTIMISTIC_DAD is not set
|
||||
|
@ -629,10 +632,11 @@ CONFIG_INET6_XFRM_MODE_TRANSPORT=m
|
|||
CONFIG_INET6_XFRM_MODE_TUNNEL=m
|
||||
CONFIG_INET6_XFRM_MODE_BEET=m
|
||||
# CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION is not set
|
||||
CONFIG_IPV6_VTI=m
|
||||
CONFIG_IPV6_SIT=m
|
||||
# CONFIG_IPV6_SIT_6RD is not set
|
||||
CONFIG_IPV6_NDISC_NODETYPE=y
|
||||
# CONFIG_IPV6_TUNNEL is not set
|
||||
CONFIG_IPV6_TUNNEL=m
|
||||
# CONFIG_IPV6_GRE is not set
|
||||
CONFIG_IPV6_MULTIPLE_TABLES=y
|
||||
CONFIG_IPV6_SUBTREES=y
|
||||
|
@ -690,6 +694,17 @@ CONFIG_NF_NAT_FTP=m
|
|||
CONFIG_NF_NAT_IRC=m
|
||||
CONFIG_NF_NAT_SIP=m
|
||||
CONFIG_NF_NAT_TFTP=m
|
||||
CONFIG_NF_TABLES=m
|
||||
CONFIG_NFT_EXTHDR=m
|
||||
CONFIG_NFT_META=m
|
||||
CONFIG_NFT_CT=m
|
||||
CONFIG_NFT_RBTREE=m
|
||||
CONFIG_NFT_HASH=m
|
||||
CONFIG_NFT_COUNTER=m
|
||||
CONFIG_NFT_LOG=m
|
||||
CONFIG_NFT_LIMIT=m
|
||||
CONFIG_NFT_NAT=m
|
||||
CONFIG_NFT_COMPAT=m
|
||||
CONFIG_NETFILTER_XTABLES=m
|
||||
|
||||
#
|
||||
|
@ -780,7 +795,9 @@ CONFIG_IP_SET_HASH_IP=m
|
|||
CONFIG_IP_SET_HASH_IPPORT=m
|
||||
CONFIG_IP_SET_HASH_IPPORTIP=m
|
||||
CONFIG_IP_SET_HASH_IPPORTNET=m
|
||||
CONFIG_IP_SET_HASH_NETPORTNET=m
|
||||
CONFIG_IP_SET_HASH_NET=m
|
||||
CONFIG_IP_SET_HASH_NETNET=m
|
||||
CONFIG_IP_SET_HASH_NETPORT=m
|
||||
CONFIG_IP_SET_HASH_NETIFACE=m
|
||||
CONFIG_IP_SET_LIST_SET=m
|
||||
|
@ -792,6 +809,11 @@ CONFIG_IP_SET_LIST_SET=m
|
|||
CONFIG_NF_DEFRAG_IPV4=m
|
||||
CONFIG_NF_CONNTRACK_IPV4=m
|
||||
CONFIG_NF_CONNTRACK_PROC_COMPAT=y
|
||||
CONFIG_NF_TABLES_IPV4=m
|
||||
CONFIG_NFT_REJECT_IPV4=m
|
||||
CONFIG_NFT_CHAIN_ROUTE_IPV4=m
|
||||
CONFIG_NFT_CHAIN_NAT_IPV4=m
|
||||
CONFIG_NF_TABLES_ARP=m
|
||||
CONFIG_IP_NF_IPTABLES=m
|
||||
CONFIG_IP_NF_MATCH_AH=m
|
||||
CONFIG_IP_NF_MATCH_ECN=m
|
||||
|
@ -823,6 +845,9 @@ CONFIG_IP_NF_ARP_MANGLE=m
|
|||
#
|
||||
CONFIG_NF_DEFRAG_IPV6=m
|
||||
CONFIG_NF_CONNTRACK_IPV6=m
|
||||
CONFIG_NF_TABLES_IPV6=m
|
||||
CONFIG_NFT_CHAIN_ROUTE_IPV6=m
|
||||
CONFIG_NFT_CHAIN_NAT_IPV6=m
|
||||
CONFIG_IP6_NF_IPTABLES=m
|
||||
CONFIG_IP6_NF_MATCH_AH=m
|
||||
CONFIG_IP6_NF_MATCH_EUI64=m
|
||||
|
@ -843,6 +868,7 @@ CONFIG_IP6_NF_RAW=m
|
|||
CONFIG_NF_NAT_IPV6=m
|
||||
CONFIG_IP6_NF_TARGET_MASQUERADE=m
|
||||
CONFIG_IP6_NF_TARGET_NPT=m
|
||||
CONFIG_NF_TABLES_BRIDGE=m
|
||||
CONFIG_BRIDGE_NF_EBTABLES=m
|
||||
CONFIG_BRIDGE_EBT_BROUTE=m
|
||||
CONFIG_BRIDGE_EBT_T_FILTER=m
|
||||
|
@ -945,6 +971,7 @@ CONFIG_NET_CLS_RSVP=m
|
|||
CONFIG_NET_CLS_RSVP6=m
|
||||
CONFIG_NET_CLS_FLOW=m
|
||||
CONFIG_NET_CLS_CGROUP=y
|
||||
CONFIG_NET_CLS_BPF=m
|
||||
CONFIG_NET_EMATCH=y
|
||||
CONFIG_NET_EMATCH_STACK=32
|
||||
CONFIG_NET_EMATCH_CMP=m
|
||||
|
@ -974,6 +1001,7 @@ CONFIG_VSOCKETS=m
|
|||
# CONFIG_NETLINK_MMAP is not set
|
||||
# CONFIG_NETLINK_DIAG is not set
|
||||
# CONFIG_NET_MPLS_GSO is not set
|
||||
# CONFIG_HSR is not set
|
||||
# CONFIG_NETPRIO_CGROUP is not set
|
||||
CONFIG_NET_RX_BUSY_POLL=y
|
||||
CONFIG_BQL=y
|
||||
|
@ -1229,7 +1257,6 @@ CONFIG_MTD_PHYSMAP=y
|
|||
# CONFIG_MTD_PMC551 is not set
|
||||
# CONFIG_MTD_DATAFLASH is not set
|
||||
CONFIG_MTD_M25P80=y
|
||||
CONFIG_M25PXX_USE_FAST_READ=y
|
||||
# CONFIG_MTD_SST25L is not set
|
||||
# CONFIG_MTD_SLRAM is not set
|
||||
# CONFIG_MTD_PHRAM is not set
|
||||
|
@ -1268,7 +1295,9 @@ CONFIG_MTD_UBI_BEB_LIMIT=20
|
|||
# CONFIG_MTD_UBI_FASTMAP is not set
|
||||
# CONFIG_MTD_UBI_GLUEBI is not set
|
||||
# CONFIG_PARPORT is not set
|
||||
CONFIG_ARCH_MIGHT_HAVE_PC_PARPORT=y
|
||||
CONFIG_BLK_DEV=y
|
||||
# CONFIG_BLK_DEV_NULL_BLK is not set
|
||||
# CONFIG_BLK_DEV_PCIESSD_MTIP32XX is not set
|
||||
# CONFIG_BLK_CPQ_CISS_DA is not set
|
||||
# CONFIG_BLK_DEV_DAC960 is not set
|
||||
|
@ -1351,6 +1380,14 @@ CONFIG_TI_ST=m
|
|||
# Altera FPGA firmware download module
|
||||
#
|
||||
# CONFIG_ALTERA_STAPL is not set
|
||||
|
||||
#
|
||||
# Intel MIC Host Driver
|
||||
#
|
||||
|
||||
#
|
||||
# Intel MIC Card Driver
|
||||
#
|
||||
CONFIG_HAVE_IDE=y
|
||||
# CONFIG_IDE is not set
|
||||
|
||||
|
@ -1551,7 +1588,6 @@ CONFIG_MD_MULTIPATH=m
|
|||
# CONFIG_MD_FAULTY is not set
|
||||
CONFIG_BCACHE=m
|
||||
# CONFIG_BCACHE_DEBUG is not set
|
||||
# CONFIG_BCACHE_EDEBUG is not set
|
||||
# CONFIG_BCACHE_CLOSURES_DEBUG is not set
|
||||
CONFIG_BLK_DEV_DM=m
|
||||
# CONFIG_DM_DEBUG is not set
|
||||
|
@ -1560,8 +1596,8 @@ CONFIG_DM_SNAPSHOT=m
|
|||
# CONFIG_DM_THIN_PROVISIONING is not set
|
||||
# CONFIG_DM_CACHE is not set
|
||||
CONFIG_DM_MIRROR=m
|
||||
CONFIG_DM_RAID=m
|
||||
# CONFIG_DM_LOG_USERSPACE is not set
|
||||
CONFIG_DM_RAID=m
|
||||
CONFIG_DM_ZERO=m
|
||||
CONFIG_DM_MULTIPATH=m
|
||||
CONFIG_DM_MULTIPATH_QL=m
|
||||
|
@ -1827,6 +1863,7 @@ CONFIG_USB_NET_AX88179_178A=m
|
|||
CONFIG_USB_NET_CDCETHER=m
|
||||
# CONFIG_USB_NET_CDC_EEM is not set
|
||||
CONFIG_USB_NET_CDC_NCM=m
|
||||
CONFIG_USB_NET_HUAWEI_CDC_NCM=m
|
||||
CONFIG_USB_NET_CDC_MBIM=m
|
||||
CONFIG_USB_NET_DM9601=m
|
||||
CONFIG_USB_NET_SR9700=m
|
||||
|
@ -1903,6 +1940,8 @@ CONFIG_ATH10K=m
|
|||
# CONFIG_ATH10K_DEBUG is not set
|
||||
# CONFIG_ATH10K_DEBUGFS is not set
|
||||
# CONFIG_ATH10K_TRACING is not set
|
||||
CONFIG_WCN36XX=m
|
||||
# CONFIG_WCN36XX_DEBUGFS is not set
|
||||
CONFIG_B43=m
|
||||
CONFIG_B43_SSB=y
|
||||
CONFIG_B43_PCI_AUTOSELECT=y
|
||||
|
@ -1982,6 +2021,7 @@ CONFIG_RT2800USB_RT3573=y
|
|||
# CONFIG_RT2800USB_RT55XX is not set
|
||||
CONFIG_RT2800USB_UNKNOWN=y
|
||||
CONFIG_RT2800_LIB=m
|
||||
CONFIG_RT2800_LIB_MMIO=m
|
||||
CONFIG_RT2X00_LIB_MMIO=m
|
||||
CONFIG_RT2X00_LIB_PCI=m
|
||||
CONFIG_RT2X00_LIB_USB=m
|
||||
|
@ -2065,6 +2105,7 @@ CONFIG_KEYBOARD_TCA6416=m
|
|||
# CONFIG_KEYBOARD_SAMSUNG is not set
|
||||
# CONFIG_KEYBOARD_STOWAWAY is not set
|
||||
# CONFIG_KEYBOARD_SUNKBD is not set
|
||||
# CONFIG_KEYBOARD_SH_KEYSC is not set
|
||||
# CONFIG_KEYBOARD_XTKBD is not set
|
||||
CONFIG_INPUT_MOUSE=y
|
||||
CONFIG_MOUSE_PS2=m
|
||||
|
@ -2150,7 +2191,9 @@ CONFIG_TOUCHSCREEN_USB_EASYTOUCH=y
|
|||
CONFIG_TOUCHSCREEN_TSC2007=m
|
||||
# CONFIG_TOUCHSCREEN_W90X900 is not set
|
||||
# CONFIG_TOUCHSCREEN_ST1232 is not set
|
||||
# CONFIG_TOUCHSCREEN_SUR40 is not set
|
||||
CONFIG_TOUCHSCREEN_TPS6507X=m
|
||||
# CONFIG_TOUCHSCREEN_ZFORCE is not set
|
||||
# CONFIG_INPUT_MISC is not set
|
||||
|
||||
#
|
||||
|
@ -2206,6 +2249,7 @@ CONFIG_SERIAL_8250_RUNTIME_UARTS=2
|
|||
# CONFIG_SERIAL_MAX3100 is not set
|
||||
# CONFIG_SERIAL_MAX310X is not set
|
||||
# CONFIG_SERIAL_MFD_HSU is not set
|
||||
# CONFIG_SERIAL_SH_SCI is not set
|
||||
CONFIG_SERIAL_CORE=y
|
||||
CONFIG_SERIAL_CORE_CONSOLE=y
|
||||
# CONFIG_SERIAL_JSM is not set
|
||||
|
@ -2269,8 +2313,10 @@ CONFIG_I2C_MV64XXX=m
|
|||
# CONFIG_I2C_OCORES is not set
|
||||
# CONFIG_I2C_PCA_PLATFORM is not set
|
||||
# CONFIG_I2C_PXA_PCI is not set
|
||||
# CONFIG_I2C_SH_MOBILE is not set
|
||||
# CONFIG_I2C_SIMTEC is not set
|
||||
# CONFIG_I2C_XILINX is not set
|
||||
# CONFIG_I2C_RCAR is not set
|
||||
|
||||
#
|
||||
# External I2C/SMBus adapter drivers
|
||||
|
@ -2297,7 +2343,6 @@ CONFIG_SPI_MASTER=y
|
|||
# CONFIG_SPI_ALTERA is not set
|
||||
# CONFIG_SPI_BITBANG is not set
|
||||
# CONFIG_SPI_GPIO is not set
|
||||
# CONFIG_SPI_FSL_DSPI is not set
|
||||
# CONFIG_SPI_OC_TINY is not set
|
||||
CONFIG_SPI_ORION=y
|
||||
# CONFIG_SPI_PXA2XX is not set
|
||||
|
@ -2352,8 +2397,8 @@ CONFIG_PINCTRL_MVEBU=y
|
|||
CONFIG_PINCTRL_KIRKWOOD=y
|
||||
CONFIG_ARCH_HAVE_CUSTOM_GPIO_H=y
|
||||
CONFIG_ARCH_REQUIRE_GPIOLIB=y
|
||||
CONFIG_GPIO_DEVRES=y
|
||||
CONFIG_GPIOLIB=y
|
||||
CONFIG_GPIO_DEVRES=y
|
||||
# CONFIG_DEBUG_GPIO is not set
|
||||
CONFIG_GPIO_SYSFS=y
|
||||
|
||||
|
@ -2361,7 +2406,6 @@ CONFIG_GPIO_SYSFS=y
|
|||
# Memory mapped GPIO drivers:
|
||||
#
|
||||
# CONFIG_GPIO_GENERIC_PLATFORM is not set
|
||||
# CONFIG_GPIO_EM is not set
|
||||
# CONFIG_GPIO_RCAR is not set
|
||||
# CONFIG_GPIO_TS5500 is not set
|
||||
# CONFIG_GPIO_VX855 is not set
|
||||
|
@ -2450,6 +2494,7 @@ CONFIG_POWER_SUPPLY=y
|
|||
# CONFIG_CHARGER_GPIO is not set
|
||||
# CONFIG_CHARGER_BQ2415X is not set
|
||||
# CONFIG_CHARGER_BQ24190 is not set
|
||||
# CONFIG_CHARGER_BQ24735 is not set
|
||||
# CONFIG_CHARGER_SMB347 is not set
|
||||
# CONFIG_POWER_RESET is not set
|
||||
# CONFIG_POWER_RESET_RESTART is not set
|
||||
|
@ -3018,7 +3063,7 @@ CONFIG_VIDEO_MT9V011=m
|
|||
#
|
||||
|
||||
#
|
||||
# Miscelaneous helper chips
|
||||
# Miscellaneous helper chips
|
||||
#
|
||||
|
||||
#
|
||||
|
@ -3269,7 +3314,7 @@ CONFIG_BACKLIGHT_CLASS_DEVICE=m
|
|||
CONFIG_BACKLIGHT_GENERIC=m
|
||||
# CONFIG_BACKLIGHT_ADP8860 is not set
|
||||
# CONFIG_BACKLIGHT_ADP8870 is not set
|
||||
# CONFIG_BACKLIGHT_LM3630 is not set
|
||||
# CONFIG_BACKLIGHT_LM3630A is not set
|
||||
# CONFIG_BACKLIGHT_LM3639 is not set
|
||||
# CONFIG_BACKLIGHT_LP855X is not set
|
||||
# CONFIG_BACKLIGHT_GPIO is not set
|
||||
|
@ -3410,6 +3455,7 @@ CONFIG_HID_ROCCAT=m
|
|||
# CONFIG_HID_SAITEK is not set
|
||||
CONFIG_HID_SAMSUNG=m
|
||||
CONFIG_HID_SONY=m
|
||||
# CONFIG_SONY_FF is not set
|
||||
CONFIG_HID_SPEEDLINK=m
|
||||
# CONFIG_HID_STEELSERIES is not set
|
||||
CONFIG_HID_SUNPLUS=m
|
||||
|
@ -3685,6 +3731,7 @@ CONFIG_LEDS_GPIO=y
|
|||
# CONFIG_LEDS_LP8501 is not set
|
||||
# CONFIG_LEDS_PCA955X is not set
|
||||
# CONFIG_LEDS_PCA963X is not set
|
||||
# CONFIG_LEDS_PCA9685 is not set
|
||||
# CONFIG_LEDS_DAC124S085 is not set
|
||||
# CONFIG_LEDS_BD2802 is not set
|
||||
# CONFIG_LEDS_LT3593 is not set
|
||||
|
@ -3816,9 +3863,9 @@ CONFIG_DMA_ENGINE=y
|
|||
#
|
||||
# DMA Clients
|
||||
#
|
||||
# CONFIG_NET_DMA is not set
|
||||
CONFIG_ASYNC_TX_DMA=y
|
||||
# CONFIG_DMATEST is not set
|
||||
CONFIG_DMA_ENGINE_RAID=y
|
||||
# CONFIG_AUXDISPLAY is not set
|
||||
# CONFIG_UIO is not set
|
||||
# CONFIG_VIRT_DRIVERS is not set
|
||||
|
@ -3980,6 +4027,7 @@ CONFIG_NET_VENDOR_SILICOM=y
|
|||
# CONFIG_BPCTL is not set
|
||||
# CONFIG_CED1401 is not set
|
||||
# CONFIG_DGRP is not set
|
||||
# CONFIG_MTD_SPINAND_MT29F is not set
|
||||
# CONFIG_USB_DWC2 is not set
|
||||
# CONFIG_LUSTRE_FS is not set
|
||||
CONFIG_USB_BTMTK=m
|
||||
|
@ -4002,6 +4050,7 @@ CONFIG_COMMON_CLK=y
|
|||
CONFIG_CLKSRC_MMIO=y
|
||||
# CONFIG_MAILBOX is not set
|
||||
CONFIG_IOMMU_SUPPORT=y
|
||||
# CONFIG_SHMOBILE_IOMMU is not set
|
||||
|
||||
#
|
||||
# Remoteproc drivers
|
||||
|
@ -4038,6 +4087,7 @@ CONFIG_IIO=m
|
|||
# CONFIG_AD7923 is not set
|
||||
# CONFIG_MAX1363 is not set
|
||||
# CONFIG_MCP320X is not set
|
||||
# CONFIG_MCP3422 is not set
|
||||
# CONFIG_NAU7802 is not set
|
||||
# CONFIG_TI_ADC081C is not set
|
||||
|
||||
|
@ -4051,7 +4101,6 @@ CONFIG_IIO=m
|
|||
#
|
||||
CONFIG_HID_SENSOR_IIO_COMMON=m
|
||||
# CONFIG_HID_SENSOR_IIO_TRIGGER is not set
|
||||
# CONFIG_HID_SENSOR_ENUM_BASE_QUIRKS is not set
|
||||
|
||||
#
|
||||
# Digital to analog converters
|
||||
|
@ -4110,14 +4159,19 @@ CONFIG_HID_SENSOR_IIO_COMMON=m
|
|||
#
|
||||
# CONFIG_ADJD_S311 is not set
|
||||
# CONFIG_APDS9300 is not set
|
||||
# CONFIG_CM36651 is not set
|
||||
# CONFIG_GP2AP020A00F is not set
|
||||
# CONFIG_HID_SENSOR_ALS is not set
|
||||
# CONFIG_TCS3472 is not set
|
||||
# CONFIG_SENSORS_TSL2563 is not set
|
||||
# CONFIG_TSL4531 is not set
|
||||
# CONFIG_VCNL4000 is not set
|
||||
|
||||
#
|
||||
# Magnetometer sensors
|
||||
#
|
||||
# CONFIG_AK8975 is not set
|
||||
# CONFIG_MAG3110 is not set
|
||||
# CONFIG_HID_SENSOR_MAGNETOMETER_3D is not set
|
||||
# CONFIG_IIO_ST_MAGN_3AXIS is not set
|
||||
|
||||
|
@ -4136,6 +4190,13 @@ CONFIG_HID_SENSOR_IIO_COMMON=m
|
|||
# CONFIG_RESET_CONTROLLER is not set
|
||||
# CONFIG_FMC is not set
|
||||
|
||||
#
|
||||
# PHY Subsystem
|
||||
#
|
||||
# CONFIG_GENERIC_PHY is not set
|
||||
# CONFIG_PHY_EXYNOS_MIPI_VIDEO is not set
|
||||
# CONFIG_POWERCAP is not set
|
||||
|
||||
#
|
||||
# File systems
|
||||
#
|
||||
|
@ -4277,6 +4338,11 @@ CONFIG_UBIFS_FS_ZLIB=y
|
|||
# CONFIG_LOGFS is not set
|
||||
CONFIG_CRAMFS=y
|
||||
CONFIG_SQUASHFS=m
|
||||
CONFIG_SQUASHFS_FILE_CACHE=y
|
||||
# CONFIG_SQUASHFS_FILE_DIRECT is not set
|
||||
CONFIG_SQUASHFS_DECOMP_SINGLE=y
|
||||
# CONFIG_SQUASHFS_DECOMP_MULTI is not set
|
||||
# CONFIG_SQUASHFS_DECOMP_MULTI_PERCPU is not set
|
||||
CONFIG_SQUASHFS_XATTR=y
|
||||
CONFIG_SQUASHFS_ZLIB=y
|
||||
CONFIG_SQUASHFS_LZO=y
|
||||
|
@ -4303,6 +4369,7 @@ CONFIG_F2FS_STAT_FS=y
|
|||
CONFIG_F2FS_FS_XATTR=y
|
||||
CONFIG_F2FS_FS_POSIX_ACL=y
|
||||
# CONFIG_F2FS_FS_SECURITY is not set
|
||||
CONFIG_F2FS_CHECK_FS=y
|
||||
CONFIG_AUFS_FS=y
|
||||
CONFIG_AUFS_BRANCH_MAX_127=y
|
||||
# CONFIG_AUFS_BRANCH_MAX_511 is not set
|
||||
|
@ -4441,6 +4508,7 @@ CONFIG_DEBUG_FS=y
|
|||
# CONFIG_DEBUG_SECTION_MISMATCH is not set
|
||||
# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set
|
||||
CONFIG_MAGIC_SYSRQ=y
|
||||
CONFIG_MAGIC_SYSRQ_DEFAULT_ENABLE=0x1
|
||||
CONFIG_DEBUG_KERNEL=y
|
||||
|
||||
#
|
||||
|
@ -4549,6 +4617,7 @@ CONFIG_PROBE_EVENTS=y
|
|||
# CONFIG_BACKTRACE_SELF_TEST is not set
|
||||
# CONFIG_RBTREE_TEST is not set
|
||||
# CONFIG_INTERVAL_TREE_TEST is not set
|
||||
# CONFIG_PERCPU_TEST is not set
|
||||
# CONFIG_ATOMIC64_SELFTEST is not set
|
||||
# CONFIG_ASYNC_RAID6_TEST is not set
|
||||
# CONFIG_TEST_STRING_HELPERS is not set
|
||||
|
@ -4582,6 +4651,8 @@ CONFIG_EARLY_PRINTK=y
|
|||
# Security options
|
||||
#
|
||||
CONFIG_KEYS=y
|
||||
# CONFIG_PERSISTENT_KEYRINGS is not set
|
||||
# CONFIG_BIG_KEYS is not set
|
||||
# CONFIG_ENCRYPTED_KEYS is not set
|
||||
# CONFIG_KEYS_DEBUG_PROC_KEYS is not set
|
||||
# CONFIG_SECURITY_DMESG_RESTRICT is not set
|
||||
|
@ -4743,6 +4814,7 @@ CONFIG_GENERIC_STRNLEN_USER=y
|
|||
CONFIG_GENERIC_NET_UTILS=y
|
||||
CONFIG_GENERIC_PCI_IOMAP=y
|
||||
CONFIG_GENERIC_IO=y
|
||||
CONFIG_ARCH_USE_CMPXCHG_LOCKREF=y
|
||||
CONFIG_CRC_CCITT=y
|
||||
CONFIG_CRC16=y
|
||||
# CONFIG_CRC_T10DIF is not set
|
||||
|
@ -4757,6 +4829,7 @@ CONFIG_CRC7=m
|
|||
CONFIG_LIBCRC32C=y
|
||||
# CONFIG_CRC8 is not set
|
||||
CONFIG_AUDIT_GENERIC=y
|
||||
# CONFIG_RANDOM32_SELFTEST is not set
|
||||
CONFIG_ZLIB_INFLATE=y
|
||||
CONFIG_ZLIB_DEFLATE=y
|
||||
CONFIG_LZO_COMPRESS=y
|
||||
|
@ -4783,6 +4856,7 @@ CONFIG_TEXTSEARCH=y
|
|||
CONFIG_TEXTSEARCH_KMP=m
|
||||
CONFIG_TEXTSEARCH_BM=m
|
||||
CONFIG_TEXTSEARCH_FSM=m
|
||||
CONFIG_ASSOCIATIVE_ARRAY=y
|
||||
CONFIG_HAS_IOMEM=y
|
||||
CONFIG_HAS_IOPORT=y
|
||||
CONFIG_HAS_DMA=y
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
# arg 2: the old package version
|
||||
|
||||
KERNEL_NAME=-kirkwood
|
||||
KERNEL_VERSION=3.12.5-1-ARCH
|
||||
KERNEL_VERSION=3.13.0-1-ARCH
|
||||
|
||||
post_install () {
|
||||
# updating module dependencies
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
diff --git a/Documentation/vm/00-INDEX b/Documentation/vm/00-INDEX
|
||||
index 5481c8b..7141876 100644
|
||||
index a39d066..a03f094 100644
|
||||
--- a/Documentation/vm/00-INDEX
|
||||
+++ b/Documentation/vm/00-INDEX
|
||||
@@ -14,6 +14,8 @@ hwpoison.txt
|
||||
@@ -16,6 +16,8 @@ hwpoison.txt
|
||||
- explains what hwpoison is
|
||||
ksm.txt
|
||||
- how to use the Kernel Samepage Merging feature.
|
||||
|
@ -10,7 +10,7 @@ index 5481c8b..7141876 100644
|
|||
+ - Introduction to Ultra KSM
|
||||
locking
|
||||
- info on how locking and synchronization is done in the Linux vm code.
|
||||
map_hugetlb.c
|
||||
numa
|
||||
diff --git a/Documentation/vm/uksm.txt b/Documentation/vm/uksm.txt
|
||||
new file mode 100644
|
||||
index 0000000..9b2cb51
|
||||
|
@ -75,7 +75,7 @@ index 0000000..9b2cb51
|
|||
+2012-10-13 UKSM 0.1.2.1 Bug fixes.
|
||||
+2012-12-31 UKSM 0.1.2.2 Minor bug fixes
|
||||
diff --git a/fs/exec.c b/fs/exec.c
|
||||
index 8875dd1..4b86536 100644
|
||||
index 7ea097f..ae44a37 100644
|
||||
--- a/fs/exec.c
|
||||
+++ b/fs/exec.c
|
||||
@@ -19,7 +19,7 @@
|
||||
|
@ -95,7 +95,7 @@ index 8875dd1..4b86536 100644
|
|||
|
||||
#include <asm/uaccess.h>
|
||||
#include <asm/mmu_context.h>
|
||||
@@ -1143,7 +1144,7 @@ void setup_new_exec(struct linux_binprm * bprm)
|
||||
@@ -1141,7 +1142,7 @@ void setup_new_exec(struct linux_binprm * bprm)
|
||||
group */
|
||||
|
||||
current->self_exec_id++;
|
||||
|
@ -104,7 +104,7 @@ index 8875dd1..4b86536 100644
|
|||
flush_signal_handlers(current, 0);
|
||||
do_close_on_exec(current->files);
|
||||
}
|
||||
@@ -1269,8 +1270,8 @@ static int check_unsafe_exec(struct linux_binprm *bprm)
|
||||
@@ -1267,8 +1268,8 @@ static int check_unsafe_exec(struct linux_binprm *bprm)
|
||||
return res;
|
||||
}
|
||||
|
||||
|
@ -116,10 +116,10 @@ index 8875dd1..4b86536 100644
|
|||
*
|
||||
* This may be called multiple times for binary chains (scripts for example).
|
||||
diff --git a/fs/proc/meminfo.c b/fs/proc/meminfo.c
|
||||
index 59d85d6..948cab28 100644
|
||||
index a77d2b2..d435567 100644
|
||||
--- a/fs/proc/meminfo.c
|
||||
+++ b/fs/proc/meminfo.c
|
||||
@@ -88,6 +88,9 @@ static int meminfo_proc_show(struct seq_file *m, void *v)
|
||||
@@ -85,6 +85,9 @@ static int meminfo_proc_show(struct seq_file *m, void *v)
|
||||
"SUnreclaim: %8lu kB\n"
|
||||
"KernelStack: %8lu kB\n"
|
||||
"PageTables: %8lu kB\n"
|
||||
|
@ -129,7 +129,7 @@ index 59d85d6..948cab28 100644
|
|||
#ifdef CONFIG_QUICKLIST
|
||||
"Quicklists: %8lu kB\n"
|
||||
#endif
|
||||
@@ -141,6 +144,9 @@ static int meminfo_proc_show(struct seq_file *m, void *v)
|
||||
@@ -138,6 +141,9 @@ static int meminfo_proc_show(struct seq_file *m, void *v)
|
||||
K(global_page_state(NR_SLAB_UNRECLAIMABLE)),
|
||||
global_page_state(NR_KERNEL_STACK) * THREAD_SIZE / 1024,
|
||||
K(global_page_state(NR_PAGETABLE)),
|
||||
|
@ -140,7 +140,7 @@ index 59d85d6..948cab28 100644
|
|||
K(quicklist_total_size()),
|
||||
#endif
|
||||
diff --git a/include/asm-generic/pgtable.h b/include/asm-generic/pgtable.h
|
||||
index f330d28..0bc3f46 100644
|
||||
index db09234..b936093 100644
|
||||
--- a/include/asm-generic/pgtable.h
|
||||
+++ b/include/asm-generic/pgtable.h
|
||||
@@ -502,12 +502,25 @@ extern void untrack_pfn(struct vm_area_struct *vma, unsigned long pfn,
|
||||
|
@ -247,10 +247,10 @@ index 45c9b6a..c7de7a7 100644
|
|||
+
|
||||
#endif /* __LINUX_KSM_H */
|
||||
diff --git a/include/linux/mm_types.h b/include/linux/mm_types.h
|
||||
index d9851ee..ecbb39c 100644
|
||||
index 290901a..a6d4935 100644
|
||||
--- a/include/linux/mm_types.h
|
||||
+++ b/include/linux/mm_types.h
|
||||
@@ -289,6 +289,9 @@ struct vm_area_struct {
|
||||
@@ -307,6 +307,9 @@ struct vm_area_struct {
|
||||
#ifdef CONFIG_NUMA
|
||||
struct mempolicy *vm_policy; /* NUMA policy for the VMA */
|
||||
#endif
|
||||
|
@ -519,7 +519,7 @@ index 0000000..a644bca
|
|||
+#endif /* !CONFIG_UKSM */
|
||||
+#endif /* __LINUX_UKSM_H */
|
||||
diff --git a/kernel/fork.c b/kernel/fork.c
|
||||
index 086fe73..d774585 100644
|
||||
index dfa736c..79a2187 100644
|
||||
--- a/kernel/fork.c
|
||||
+++ b/kernel/fork.c
|
||||
@@ -394,7 +394,7 @@ static int dup_mmap(struct mm_struct *mm, struct mm_struct *oldmm)
|
||||
|
@ -541,7 +541,7 @@ index 086fe73..d774585 100644
|
|||
retval = copy_page_range(mm, oldmm, mpnt);
|
||||
|
||||
diff --git a/lib/Makefile b/lib/Makefile
|
||||
index f3bb2cb..f42bf2c 100644
|
||||
index a459c31..9630dae 100644
|
||||
--- a/lib/Makefile
|
||||
+++ b/lib/Makefile
|
||||
@@ -8,7 +8,7 @@ KBUILD_CFLAGS = $(subst -pg,,$(ORIG_CFLAGS))
|
||||
|
@ -1036,10 +1036,10 @@ index 0000000..8d06329
|
|||
+ return 0;
|
||||
+}
|
||||
diff --git a/mm/Kconfig b/mm/Kconfig
|
||||
index 394838f..daf01b3 100644
|
||||
index 723bbe0..da46fbd 100644
|
||||
--- a/mm/Kconfig
|
||||
+++ b/mm/Kconfig
|
||||
@@ -315,6 +315,32 @@ config KSM
|
||||
@@ -324,6 +324,32 @@ config KSM
|
||||
See Documentation/vm/ksm.txt for more information: KSM is inactive
|
||||
until a program has madvised that an area is MADV_MERGEABLE, and
|
||||
root has set /sys/kernel/mm/ksm/run to 1 (if CONFIG_SYSFS is set).
|
||||
|
@ -1087,7 +1087,7 @@ index 305d10a..b5e5920 100644
|
|||
obj-$(CONFIG_SLAB) += slab.o
|
||||
obj-$(CONFIG_SLUB) += slub.o
|
||||
diff --git a/mm/memory.c b/mm/memory.c
|
||||
index d176154..5d30a95 100644
|
||||
index 6768ce9..146ef7d 100644
|
||||
--- a/mm/memory.c
|
||||
+++ b/mm/memory.c
|
||||
@@ -116,6 +116,27 @@ __setup("norandmaps", disable_randmaps);
|
||||
|
@ -1126,7 +1126,7 @@ index d176154..5d30a95 100644
|
|||
#if defined(SPLIT_RSS_COUNTING)
|
||||
|
||||
void sync_mm_rss(struct mm_struct *mm)
|
||||
@@ -871,6 +893,11 @@ copy_one_pte(struct mm_struct *dst_mm, struct mm_struct *src_mm,
|
||||
@@ -870,6 +892,11 @@ copy_one_pte(struct mm_struct *dst_mm, struct mm_struct *src_mm,
|
||||
rss[MM_ANONPAGES]++;
|
||||
else
|
||||
rss[MM_FILEPAGES]++;
|
||||
|
@ -1138,7 +1138,7 @@ index d176154..5d30a95 100644
|
|||
}
|
||||
|
||||
out_set_pte:
|
||||
@@ -1113,8 +1140,10 @@ again:
|
||||
@@ -1112,8 +1139,10 @@ again:
|
||||
ptent = ptep_get_and_clear_full(mm, addr, pte,
|
||||
tlb->fullmm);
|
||||
tlb_remove_tlb_entry(tlb, pte, addr);
|
||||
|
@ -1150,7 +1150,7 @@ index d176154..5d30a95 100644
|
|||
if (unlikely(details) && details->nonlinear_vma
|
||||
&& linear_page_index(details->nonlinear_vma,
|
||||
addr) != page->index) {
|
||||
@@ -1705,7 +1734,7 @@ long __get_user_pages(struct task_struct *tsk, struct mm_struct *mm,
|
||||
@@ -1704,7 +1733,7 @@ long __get_user_pages(struct task_struct *tsk, struct mm_struct *mm,
|
||||
|
||||
VM_BUG_ON(!!pages != !!(gup_flags & FOLL_GET));
|
||||
|
||||
|
@ -1159,7 +1159,7 @@ index d176154..5d30a95 100644
|
|||
* Require read or write permissions.
|
||||
* If FOLL_FORCE is set, we only require the "MAY" flags.
|
||||
*/
|
||||
@@ -1765,7 +1794,7 @@ long __get_user_pages(struct task_struct *tsk, struct mm_struct *mm,
|
||||
@@ -1764,7 +1793,7 @@ long __get_user_pages(struct task_struct *tsk, struct mm_struct *mm,
|
||||
page = vm_normal_page(vma, start, *pte);
|
||||
if (!page) {
|
||||
if (!(gup_flags & FOLL_DUMP) &&
|
||||
|
@ -1168,7 +1168,7 @@ index d176154..5d30a95 100644
|
|||
page = pte_page(*pte);
|
||||
else {
|
||||
pte_unmap(pte);
|
||||
@@ -2580,8 +2609,10 @@ static inline void cow_user_page(struct page *dst, struct page *src, unsigned lo
|
||||
@@ -2579,8 +2608,10 @@ static inline void cow_user_page(struct page *dst, struct page *src, unsigned lo
|
||||
clear_page(kaddr);
|
||||
kunmap_atomic(kaddr);
|
||||
flush_dcache_page(dst);
|
||||
|
@ -1180,7 +1180,7 @@ index d176154..5d30a95 100644
|
|||
}
|
||||
|
||||
/*
|
||||
@@ -2780,6 +2811,7 @@ gotten:
|
||||
@@ -2787,6 +2818,7 @@ gotten:
|
||||
new_page = alloc_zeroed_user_highpage_movable(vma, address);
|
||||
if (!new_page)
|
||||
goto oom;
|
||||
|
@ -1188,7 +1188,7 @@ index d176154..5d30a95 100644
|
|||
} else {
|
||||
new_page = alloc_page_vma(GFP_HIGHUSER_MOVABLE, vma, address);
|
||||
if (!new_page)
|
||||
@@ -2805,8 +2837,11 @@ gotten:
|
||||
@@ -2812,8 +2844,11 @@ gotten:
|
||||
dec_mm_counter_fast(mm, MM_FILEPAGES);
|
||||
inc_mm_counter_fast(mm, MM_ANONPAGES);
|
||||
}
|
||||
|
@ -1202,7 +1202,7 @@ index d176154..5d30a95 100644
|
|||
entry = mk_pte(new_page, vma->vm_page_prot);
|
||||
entry = maybe_mkwrite(pte_mkdirty(entry), vma);
|
||||
diff --git a/mm/mmap.c b/mm/mmap.c
|
||||
index 9d54851..6c8b834 100644
|
||||
index 834b2d7..9211c9b 100644
|
||||
--- a/mm/mmap.c
|
||||
+++ b/mm/mmap.c
|
||||
@@ -36,6 +36,7 @@
|
||||
|
@ -1222,7 +1222,7 @@ index 9d54851..6c8b834 100644
|
|||
* MAP_PRIVATE r: (no) no r: (yes) yes r: (no) yes r: (no) yes
|
||||
* w: (no) no w: (no) no w: (copy) copy w: (no) no
|
||||
* x: (no) no x: (no) yes x: (no) yes x: (yes) yes
|
||||
@@ -252,6 +253,7 @@ static struct vm_area_struct *remove_vma(struct vm_area_struct *vma)
|
||||
@@ -250,6 +251,7 @@ static struct vm_area_struct *remove_vma(struct vm_area_struct *vma)
|
||||
if (vma->vm_file)
|
||||
fput(vma->vm_file);
|
||||
mpol_put(vma_policy(vma));
|
||||
|
@ -1230,7 +1230,7 @@ index 9d54851..6c8b834 100644
|
|||
kmem_cache_free(vm_area_cachep, vma);
|
||||
return next;
|
||||
}
|
||||
@@ -707,9 +709,16 @@ int vma_adjust(struct vm_area_struct *vma, unsigned long start,
|
||||
@@ -705,9 +707,16 @@ int vma_adjust(struct vm_area_struct *vma, unsigned long start,
|
||||
long adjust_next = 0;
|
||||
int remove_next = 0;
|
||||
|
||||
|
@ -1247,7 +1247,7 @@ index 9d54851..6c8b834 100644
|
|||
if (end >= next->vm_end) {
|
||||
/*
|
||||
* vma expands, overlapping all the next, and
|
||||
@@ -803,6 +812,7 @@ again: remove_next = 1 + (end > next->vm_end);
|
||||
@@ -801,6 +810,7 @@ again: remove_next = 1 + (end > next->vm_end);
|
||||
end_changed = true;
|
||||
}
|
||||
vma->vm_pgoff = pgoff;
|
||||
|
@ -1255,7 +1255,7 @@ index 9d54851..6c8b834 100644
|
|||
if (adjust_next) {
|
||||
next->vm_start += adjust_next << PAGE_SHIFT;
|
||||
next->vm_pgoff += adjust_next;
|
||||
@@ -873,16 +883,22 @@ again: remove_next = 1 + (end > next->vm_end);
|
||||
@@ -871,16 +881,22 @@ again: remove_next = 1 + (end > next->vm_end);
|
||||
* up the code too much to do both in one go.
|
||||
*/
|
||||
next = vma->vm_next;
|
||||
|
@ -1281,7 +1281,7 @@ index 9d54851..6c8b834 100644
|
|||
validate_mm(mm);
|
||||
|
||||
return 0;
|
||||
@@ -1249,6 +1265,9 @@ unsigned long do_mmap_pgoff(struct file *file, unsigned long addr,
|
||||
@@ -1247,6 +1263,9 @@ unsigned long do_mmap_pgoff(struct file *file, unsigned long addr,
|
||||
vm_flags = calc_vm_prot_bits(prot) | calc_vm_flag_bits(flags) |
|
||||
mm->def_flags | VM_MAYREAD | VM_MAYWRITE | VM_MAYEXEC;
|
||||
|
||||
|
@ -1291,7 +1291,7 @@ index 9d54851..6c8b834 100644
|
|||
if (flags & MAP_LOCKED)
|
||||
if (!can_do_mlock())
|
||||
return -EPERM;
|
||||
@@ -1593,6 +1612,7 @@ munmap_back:
|
||||
@@ -1591,6 +1610,7 @@ munmap_back:
|
||||
if (vm_flags & VM_DENYWRITE)
|
||||
allow_write_access(file);
|
||||
file = vma->vm_file;
|
||||
|
@ -1299,7 +1299,7 @@ index 9d54851..6c8b834 100644
|
|||
out:
|
||||
perf_event_mmap(vma);
|
||||
|
||||
@@ -1629,6 +1649,7 @@ unmap_and_free_vma:
|
||||
@@ -1627,6 +1647,7 @@ unmap_and_free_vma:
|
||||
unmap_region(mm, vma, prev, vma->vm_start, vma->vm_end);
|
||||
charged = 0;
|
||||
free_vma:
|
||||
|
@ -1307,7 +1307,7 @@ index 9d54851..6c8b834 100644
|
|||
kmem_cache_free(vm_area_cachep, vma);
|
||||
unacct_error:
|
||||
if (charged)
|
||||
@@ -1877,7 +1898,7 @@ arch_get_unmapped_area(struct file *filp, unsigned long addr,
|
||||
@@ -1875,7 +1896,7 @@ arch_get_unmapped_area(struct file *filp, unsigned long addr,
|
||||
info.align_mask = 0;
|
||||
return vm_unmapped_area(&info);
|
||||
}
|
||||
|
@ -1316,7 +1316,7 @@ index 9d54851..6c8b834 100644
|
|||
|
||||
/*
|
||||
* This mmap-allocator allocates new areas top-down from below the
|
||||
@@ -2423,6 +2444,8 @@ static int __split_vma(struct mm_struct * mm, struct vm_area_struct * vma,
|
||||
@@ -2421,6 +2442,8 @@ static int __split_vma(struct mm_struct * mm, struct vm_area_struct * vma,
|
||||
else
|
||||
err = vma_adjust(vma, vma->vm_start, addr, vma->vm_pgoff, new);
|
||||
|
||||
|
@ -1325,7 +1325,7 @@ index 9d54851..6c8b834 100644
|
|||
/* Success. */
|
||||
if (!err)
|
||||
return 0;
|
||||
@@ -2588,6 +2611,7 @@ static unsigned long do_brk(unsigned long addr, unsigned long len)
|
||||
@@ -2586,6 +2609,7 @@ static unsigned long do_brk(unsigned long addr, unsigned long len)
|
||||
return addr;
|
||||
|
||||
flags = VM_DATA_DEFAULT_FLAGS | VM_ACCOUNT | mm->def_flags;
|
||||
|
@ -1333,7 +1333,7 @@ index 9d54851..6c8b834 100644
|
|||
|
||||
error = get_unmapped_area(NULL, addr, len, 0, MAP_FIXED);
|
||||
if (error & ~PAGE_MASK)
|
||||
@@ -2655,6 +2679,7 @@ static unsigned long do_brk(unsigned long addr, unsigned long len)
|
||||
@@ -2653,6 +2677,7 @@ static unsigned long do_brk(unsigned long addr, unsigned long len)
|
||||
vma->vm_flags = flags;
|
||||
vma->vm_page_prot = vm_get_page_prot(flags);
|
||||
vma_link(mm, vma, prev, rb_link, rb_parent);
|
||||
|
@ -1341,7 +1341,7 @@ index 9d54851..6c8b834 100644
|
|||
out:
|
||||
perf_event_mmap(vma);
|
||||
mm->total_vm += len >> PAGE_SHIFT;
|
||||
@@ -2690,6 +2715,12 @@ void exit_mmap(struct mm_struct *mm)
|
||||
@@ -2688,6 +2713,12 @@ void exit_mmap(struct mm_struct *mm)
|
||||
/* mm's last user has gone, and its about to be pulled down */
|
||||
mmu_notifier_release(mm);
|
||||
|
||||
|
@ -1354,7 +1354,7 @@ index 9d54851..6c8b834 100644
|
|||
if (mm->locked_vm) {
|
||||
vma = mm->mmap;
|
||||
while (vma) {
|
||||
@@ -2726,6 +2757,11 @@ void exit_mmap(struct mm_struct *mm)
|
||||
@@ -2724,6 +2755,11 @@ void exit_mmap(struct mm_struct *mm)
|
||||
}
|
||||
vm_unacct_memory(nr_accounted);
|
||||
|
||||
|
@ -1363,10 +1363,10 @@ index 9d54851..6c8b834 100644
|
|||
+ mm->mmap_cache = NULL;
|
||||
+ up_write(&mm->mmap_sem);
|
||||
+
|
||||
WARN_ON(mm->nr_ptes > (FIRST_USER_ADDRESS+PMD_SIZE-1)>>PMD_SHIFT);
|
||||
WARN_ON(atomic_long_read(&mm->nr_ptes) >
|
||||
(FIRST_USER_ADDRESS+PMD_SIZE-1)>>PMD_SHIFT);
|
||||
}
|
||||
|
||||
@@ -2833,6 +2869,7 @@ struct vm_area_struct *copy_vma(struct vm_area_struct **vmap,
|
||||
@@ -2832,6 +2868,7 @@ struct vm_area_struct *copy_vma(struct vm_area_struct **vmap,
|
||||
new_vma->vm_ops->open(new_vma);
|
||||
vma_link(mm, new_vma, prev, rb_link, rb_parent);
|
||||
*need_rmap_locks = false;
|
||||
|
@ -1374,7 +1374,7 @@ index 9d54851..6c8b834 100644
|
|||
}
|
||||
}
|
||||
return new_vma;
|
||||
@@ -2934,10 +2971,10 @@ int install_special_mapping(struct mm_struct *mm,
|
||||
@@ -2933,10 +2970,10 @@ int install_special_mapping(struct mm_struct *mm,
|
||||
ret = insert_vm_struct(mm, vma);
|
||||
if (ret)
|
||||
goto out;
|
||||
|
@ -1387,10 +1387,10 @@ index 9d54851..6c8b834 100644
|
|||
return 0;
|
||||
|
||||
diff --git a/mm/rmap.c b/mm/rmap.c
|
||||
index fd3ee7a..6c07ff9 100644
|
||||
index 068522d..7552b6d 100644
|
||||
--- a/mm/rmap.c
|
||||
+++ b/mm/rmap.c
|
||||
@@ -970,9 +970,9 @@ void page_move_anon_rmap(struct page *page,
|
||||
@@ -971,9 +971,9 @@ void page_move_anon_rmap(struct page *page,
|
||||
|
||||
/**
|
||||
* __page_set_anon_rmap - set up new anonymous rmap
|
||||
|
@ -7049,7 +7049,7 @@ index 0000000..794867a
|
|||
+#endif
|
||||
+
|
||||
diff --git a/mm/vmstat.c b/mm/vmstat.c
|
||||
index 9bb3145..885419c 100644
|
||||
index 7249614..3cbe5ba 100644
|
||||
--- a/mm/vmstat.c
|
||||
+++ b/mm/vmstat.c
|
||||
@@ -772,6 +772,9 @@ const char * const vmstat_text[] = {
|
Loading…
Reference in a new issue