From 66274425ff121a6b76191787d9400a2193762c1d Mon Sep 17 00:00:00 2001 From: moonman Date: Mon, 27 Jan 2014 20:41:56 -0700 Subject: [PATCH] core/linux-kirkwood to 3.13-1 --- core/linux-kirkwood/PKGBUILD | 51 ++++----- .../aufs-sources-3.12.7-mmap-aufs3.patch | 38 ------- core/linux-kirkwood/config | 106 +++++++++++++++--- core/linux-kirkwood/linux-kirkwood.install | 2 +- ....12.patch => uksm-0.1.2.2-for-v3.13.patch} | 90 +++++++-------- 5 files changed, 157 insertions(+), 130 deletions(-) delete mode 100644 core/linux-kirkwood/aufs-sources-3.12.7-mmap-aufs3.patch rename core/linux-kirkwood/{uksm-0.1.2.2-for-v3.12.patch => uksm-0.1.2.2-for-v3.13.patch} (98%) diff --git a/core/linux-kirkwood/PKGBUILD b/core/linux-kirkwood/PKGBUILD index 6a7fa51bb..5e0508a05 100644 --- a/core/linux-kirkwood/PKGBUILD +++ b/core/linux-kirkwood/PKGBUILD @@ -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" } diff --git a/core/linux-kirkwood/aufs-sources-3.12.7-mmap-aufs3.patch b/core/linux-kirkwood/aufs-sources-3.12.7-mmap-aufs3.patch deleted file mode 100644 index b4f7335a9..000000000 --- a/core/linux-kirkwood/aufs-sources-3.12.7-mmap-aufs3.patch +++ /dev/null @@ -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 diff --git a/core/linux-kirkwood/config b/core/linux-kirkwood/config index 18de1e904..849ee9670 100644 --- a/core/linux-kirkwood/config +++ b/core/linux-kirkwood/config @@ -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 diff --git a/core/linux-kirkwood/linux-kirkwood.install b/core/linux-kirkwood/linux-kirkwood.install index 7409b43fc..1ba720f57 100644 --- a/core/linux-kirkwood/linux-kirkwood.install +++ b/core/linux-kirkwood/linux-kirkwood.install @@ -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 diff --git a/core/linux-kirkwood/uksm-0.1.2.2-for-v3.12.patch b/core/linux-kirkwood/uksm-0.1.2.2-for-v3.13.patch similarity index 98% rename from core/linux-kirkwood/uksm-0.1.2.2-for-v3.12.patch rename to core/linux-kirkwood/uksm-0.1.2.2-for-v3.13.patch index 7378dddee..a13218c21 100644 --- a/core/linux-kirkwood/uksm-0.1.2.2-for-v3.12.patch +++ b/core/linux-kirkwood/uksm-0.1.2.2-for-v3.13.patch @@ -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 #include -@@ -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[] = {