diff --git a/PKGBUILD b/PKGBUILD index 65cb77b..4de2e31 100644 --- a/PKGBUILD +++ b/PKGBUILD @@ -7,7 +7,7 @@ pkgname=('linux' 'linux-headers' 'linux-docs') # Build stock -ARCH kernel # pkgname=linux-custom # Build kernel with a different name _kernelname=${pkgname#linux} _basekernel=3.3 -pkgver=${_basekernel}.3 +pkgver=${_basekernel}.4 pkgrel=1 arch=('i686' 'x86_64') url="http://www.kernel.org/" @@ -23,19 +23,15 @@ source=("http://www.kernel.org/pub/linux/kernel/v3.x/linux-3.3.tar.xz" 'fix-acerhdf-1810T-bios.patch' 'change-default-console-loglevel.patch' 'i915-fix-ghost-tv-output.patch' - 'fix-memblock-3.3.x.patch' - 'fix-r8712u-3.3.2.patch' 'ext4-options.patch') md5sums=('7133f5a2086a7d7ef97abac610c094f5' - '634a088d3789870885dc6ee1eb9627d4' - '24f0949ec8d43588f4421df60f39e811' - 'a8b420d03eb7282b234c1aee13a054a5' + '9c4cc16f10b645fbb90f6c05ad388883' + 'a69f3228ec513be819e20f0e6625fef6' + '744c93715cbf8dfd31db5f7b216b954c' 'eb14dcfd80c00852ef81ded6e826826a' '38c1fd4a1f303f1f6c38e7f082727e2f' '9d3c56a4b999c8bfbd4018089a62f662' '263725f20c0b9eb9c353040792d644e5' - 'ecf75895eddc92efcc797dea367ca692' - '4be6f77e4c1533c4587dd48cfd50759e' 'bb7fd1aa23016c8057046b84fd4eb528') build() { @@ -56,16 +52,6 @@ build() { # needed. patch -Np1 -i "${srcdir}/i915-fix-ghost-tv-output.patch" - # Patch submitted upstream, waiting for inclusion: - # fix https://bugzilla.kernel.org/show_bug.cgi?id=43098 - # Arch Linux bug report #29351 - patch -Np1 -i "${srcdir}/fix-memblock-3.3.x.patch" - - # Patch submitted upstream, waiting for inclusion: - # Arch Linux bug report #29339 - # probably 3.3.4 will include it - patch -Np1 -i "${srcdir}/fix-r8712u-3.3.2.patch" - # Patch submitted upstream, waiting for inclusion: # https://lkml.org/lkml/2012/2/19/51 # add support for latest bios of Acer 1810T acerhdf module diff --git a/config b/config index 8cda051..14f35ea 100644 --- a/config +++ b/config @@ -795,7 +795,8 @@ CONFIG_NF_CONNTRACK=m CONFIG_NF_CONNTRACK_MARK=y CONFIG_NF_CONNTRACK_SECMARK=y CONFIG_NF_CONNTRACK_ZONES=y -# CONFIG_NF_CONNTRACK_PROCFS is not set +CONFIG_NF_CONNTRACK_PROCFS=y +# CONFIG_NF_CONNTRACK_PROC_COMPAT is not set CONFIG_NF_CONNTRACK_EVENTS=y CONFIG_NF_CONNTRACK_TIMESTAMP=y CONFIG_NF_CT_PROTO_DCCP=m diff --git a/config.x86_64 b/config.x86_64 index 2cf0ca8..d2cdc2a 100644 --- a/config.x86_64 +++ b/config.x86_64 @@ -1,6 +1,6 @@ # # Automatically generated file; DO NOT EDIT. -# Linux/x86_64 3.3.0-1 Kernel Configuration +# Linux/x86_64 3.3.4-1 Kernel Configuration # CONFIG_64BIT=y # CONFIG_X86_32 is not set @@ -757,7 +757,7 @@ CONFIG_NF_CONNTRACK=m CONFIG_NF_CONNTRACK_MARK=y CONFIG_NF_CONNTRACK_SECMARK=y CONFIG_NF_CONNTRACK_ZONES=y -# CONFIG_NF_CONNTRACK_PROCFS is not set +CONFIG_NF_CONNTRACK_PROCFS=y CONFIG_NF_CONNTRACK_EVENTS=y CONFIG_NF_CONNTRACK_TIMESTAMP=y CONFIG_NF_CT_PROTO_DCCP=m @@ -914,6 +914,7 @@ CONFIG_IP_VS_PE_SIP=m # CONFIG_NF_DEFRAG_IPV4=m CONFIG_NF_CONNTRACK_IPV4=m +# CONFIG_NF_CONNTRACK_PROC_COMPAT is not set CONFIG_IP_NF_QUEUE=m CONFIG_IP_NF_IPTABLES=m CONFIG_IP_NF_MATCH_AH=m @@ -1127,8 +1128,6 @@ CONFIG_BPF_JIT=y CONFIG_NET_PKTGEN=m CONFIG_NET_DROP_MONITOR=y CONFIG_HAMRADIO=y -# CONFIG_CAN is not set -CONFIG_IRDA=m # # Packet Radio protocols @@ -1148,6 +1147,8 @@ CONFIG_BAYCOM_SER_FDX=m CONFIG_BAYCOM_SER_HDX=m CONFIG_BAYCOM_PAR=m CONFIG_YAM=m +# CONFIG_CAN is not set +CONFIG_IRDA=m # # IrDA protocols @@ -4718,7 +4719,6 @@ CONFIG_RTLLIB_CRYPTO_TKIP=m CONFIG_RTLLIB_CRYPTO_WEP=m CONFIG_RTL8192E=m CONFIG_R8712U=m -CONFIG_R8712_AP=y CONFIG_RTS_PSTOR=m # CONFIG_RTS_PSTOR_DEBUG is not set CONFIG_RTS5139=m diff --git a/fix-memblock-3.3.x.patch b/fix-memblock-3.3.x.patch deleted file mode 100644 index aa493d8..0000000 --- a/fix-memblock-3.3.x.patch +++ /dev/null @@ -1,65 +0,0 @@ -From: Tejun Heo kernel.org> -Subject: [PATCH 3.4-rc3] memblock: memblock should be able to handle zero length operations -Newsgroups: gmane.linux.kernel, gmane.linux.kernel.stable -Date: 2012-04-20 15:31:34 GMT (2 days, 14 hours and 59 minutes ago) -24aa07882b "memblock, x86: Replace memblock_x86_reserve/free_range() -with generic ones" replaced x86 specific memblock operations with the -generic ones; unfortunately, it lost zero length operation handling in -the process making the kernel panic if somebody tries to reserve zero -length area. - -There isn't much to be gained by being cranky to zero length -operations and panicking is almost the worst response. Drop the -BUG_ON() in memblock_reserve() and update -memblock_add_region/isolate_range() so that all zero length operations -are handled as noops. - -Signed-off-by: Tejun Heo kernel.org> -Cc: stable vger.kernel.org -Reported-by: Valere Monseur ymail.com> -Bisected-by: Joseph Freeman gmail.com> -Tested-by: Joseph Freeman gmail.com> -Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=43098 ---- -This is causing early panics if anyone tries to reserve zero len area, -which unfortunately isn't too uncommon depending on BIOS. The fix is -fairly safe. Unsure which tree it should go through. Cc'ing Linus -and Ingo. - -Thanks. - - mm/memblock.c | 7 ++++++- - 1 file changed, 6 insertions(+), 1 deletion(-) - -diff --git a/mm/memblock.c b/mm/memblock.c -index 99f2855..a44eab3 100644 ---- a/mm/memblock.c -+++ b/mm/memblock.c -@@ -330,6 +330,9 @@ static int __init_memblock memblock_add_region(struct memblock_type *type, - phys_addr_t end = base + memblock_cap_size(base, &size); - int i, nr_new; - -+ if (!size) -+ return 0; -+ - /* special case for empty array */ - if (type->regions[0].size == 0) { - WARN_ON(type->cnt != 1 || type->total_size); -@@ -430,6 +433,9 @@ static int __init_memblock memblock_isolate_range(struct memblock_type *type, - - *start_rgn = *end_rgn = 0; - -+ if (!size) -+ return 0; -+ - /* we'll create at most two more regions */ - while (type->cnt + 2 > type->max) - if (memblock_double_array(type) < 0) -@@ -514,7 +520,6 @@ int __init_memblock memblock_reserve(phys_addr_t base, phys_addr_t size) - (unsigned long long)base, - (unsigned long long)base + size, - (void *)_RET_IP_); -- BUG_ON(0 == size); - - return memblock_add_region(_rgn, base, size, MAX_NUMNODES); - } \ No newline at end of file diff --git a/fix-r8712u-3.3.2.patch b/fix-r8712u-3.3.2.patch deleted file mode 100644 index a83618d..0000000 --- a/fix-r8712u-3.3.2.patch +++ /dev/null @@ -1,56 +0,0 @@ -commit 2080913e017ab9f88379d93fd09546ad95faf87b -Author: Larry Finger -Date: Sat Feb 25 18:10:21 2012 -0600 - - staging: r8712u: Fix regression caused by commit 8c213fa - - In commit 8c213fa "staging: r8712u: Use asynchronous firmware loading", - the command to release the firmware was placed in the wrong routine. - - In combination with the bug introduced in commit a5ee652 "staging: r8712u: - Interface-state not fully tracked", the driver attempts to upload firmware - that had already been released. This bug is the source of one of the - problems in https://bugs.archlinux.org/task/27996#comment89833. - - Tested-by: Alberto Lago Ballesteros - Tested-by: Adrian - Signed-off-by: Larry Finger - Signed-off-by: Greg Kroah-Hartman - -diff --git a/drivers/staging/rtl8712/os_intfs.c b/drivers/staging/rtl8712/os_intfs.c -index 4cf175f..7bbd53a 100644 ---- a/drivers/staging/rtl8712/os_intfs.c -+++ b/drivers/staging/rtl8712/os_intfs.c -@@ -475,9 +475,6 @@ static int netdev_close(struct net_device *pnetdev) - r8712_free_assoc_resources(padapter); - /*s2-4.*/ - r8712_free_network_queue(padapter); -- release_firmware(padapter->fw); -- /* never exit with a firmware callback pending */ -- wait_for_completion(&padapter->rtl8712_fw_ready); - return 0; - } - -diff --git a/drivers/staging/rtl8712/usb_intf.c b/drivers/staging/rtl8712/usb_intf.c -index fe0e2ff..e01fe14 100644 ---- a/drivers/staging/rtl8712/usb_intf.c -+++ b/drivers/staging/rtl8712/usb_intf.c -@@ -30,6 +30,7 @@ - - #include - #include -+#include - - #include "osdep_service.h" - #include "drv_types.h" -@@ -620,6 +621,10 @@ static void r871xu_dev_remove(struct usb_interface *pusb_intf) - struct _adapter *padapter = netdev_priv(pnetdev); - struct usb_device *udev = interface_to_usbdev(pusb_intf); - -+ if (padapter->fw_found) -+ release_firmware(padapter->fw); -+ /* never exit with a firmware callback pending */ -+ wait_for_completion(&padapter->rtl8712_fw_ready); - usb_set_intfdata(pusb_intf, NULL); - if (padapter) { - if (drvpriv.drv_registered == true) diff --git a/linux.install b/linux.install index 0724f2c..be68055 100644 --- a/linux.install +++ b/linux.install @@ -2,7 +2,7 @@ # arg 2: the old package version KERNEL_NAME= -KERNEL_VERSION=3.3.3-1-ARCH +KERNEL_VERSION=3.3.4-1-ARCH post_install () { # updating module dependencies