From ca3aa559be5856f5a6973e96c863158dcec1d548 Mon Sep 17 00:00:00 2001 From: Florian Fainelli Date: Thu, 28 May 2009 15:55:54 +0000 Subject: [PATCH] [brcm-2.4] update to 2.4.37, tested on wrt54gs (#4766) SVN-Revision: 16144 --- include/kernel-version.mk | 9 +- .../linux/brcm-2.4/patches/001-bcm47xx.patch | 110 ++++++----------- .../patches/003-bcm47xx_cache_fixes.patch | 36 ++---- target/linux/brcm-2.4/patches/004-flash.patch | 24 ++-- .../005-bluetooth_sco_buffer_align.patch | 6 +- .../brcm-2.4/patches/006-ide_workaround.patch | 6 +- .../patches/008-b44_bcm47xx_support.patch | 20 ++- .../patches/009-wrt54g3g_pcmcia.patch | 6 +- .../patches/010-bcm47xx-cam_absent.patch | 12 +- .../brcm-2.4/patches/011-wl_qdisc_war.patch | 6 +- .../linux/brcm-2.4/patches/012-aec62xx.patch | 6 +- .../patches/013-wl_hdd_pdc202xx.patch | 6 +- .../brcm-2.4/patches/014-sierra_support.patch | 10 +- .../brcm-2.4/patches/015-sierra_kconfig.patch | 14 +-- .../generic-2.4/patches/000-linux_mips.patch | 16 +-- .../generic-2.4/patches/001-squashfs.patch | 14 +-- .../patches/003-jffs2_compression.patch | 2 +- .../generic-2.4/patches/106-mppe_mppc.patch | 2 +- .../linux/generic-2.4/patches/107-cifs.patch | 2 +- .../patches/108-optional_aout_support.patch | 6 +- .../patches/110-netdev_random_core.patch | 2 +- .../linux/generic-2.4/patches/200-i4l.patch | 89 +++++++------- .../patches/202-pl2303_backport.patch | 38 ------ .../patches/602-netfilter_layer7_2.21.patch | 2 +- .../patches/605-netfilter_TTL.patch | 10 +- .../patches/606-netfilter_NETMAP.patch | 2 +- .../patches/607-netfilter_connmark.patch | 6 +- .../patches/608-netfilter_ipset.patch | 4 +- .../patches/610-netfilter_connbytes.patch | 2 +- .../patches/611-netfilter_condition.patch | 2 +- .../patches/616-netfilter_imq.patch | 6 +- .../patches/619-netfilter_classify.patch | 116 ------------------ .../patches/621-netfilter_random.patch | 2 +- .../generic-2.4/patches/622-tc_esfq.patch | 2 +- .../generic-2.4/patches/803-mii_ioctl.patch | 63 ---------- .../patches/900-CVE-2008-2136.patch | 26 ---- 36 files changed, 178 insertions(+), 507 deletions(-) delete mode 100644 target/linux/generic-2.4/patches/202-pl2303_backport.patch delete mode 100644 target/linux/generic-2.4/patches/619-netfilter_classify.patch delete mode 100644 target/linux/generic-2.4/patches/803-mii_ioctl.patch delete mode 100644 target/linux/generic-2.4/patches/900-CVE-2008-2136.patch diff --git a/include/kernel-version.mk b/include/kernel-version.mk index b34a493485..726feb58b3 100644 --- a/include/kernel-version.mk +++ b/include/kernel-version.mk @@ -1,17 +1,14 @@ # Use the default kernel version if the Makefile doesn't override it ifeq ($(KERNEL),2.4) - LINUX_VERSION?=2.4.35.4 + LINUX_VERSION?=2.4.37 else LINUX_VERSION?=2.6.21.7 endif LINUX_RELEASE?=1 -ifeq ($(LINUX_VERSION),2.4.34) - LINUX_KERNEL_MD5SUM:=f59665540a7f3351ea416a0dad104b55 -endif -ifeq ($(LINUX_VERSION),2.4.35.4) - LINUX_KERNEL_MD5SUM:=34066faff3d8c042df1c7600b08b8070 +ifeq ($(LINUX_VERSION),2.4.37) + LINUX_KERNEL_MD5SUM:=e4197b25bfddacee61490921c885b2ec endif ifeq ($(LINUX_VERSION),2.6.21.7) LINUX_KERNEL_MD5SUM:=bc15fad1487336d5dcb0945cd039d8ed diff --git a/target/linux/brcm-2.4/patches/001-bcm47xx.patch b/target/linux/brcm-2.4/patches/001-bcm47xx.patch index 31d0ec13dd..ba1e41ee9b 100644 --- a/target/linux/brcm-2.4/patches/001-bcm47xx.patch +++ b/target/linux/brcm-2.4/patches/001-bcm47xx.patch @@ -1,7 +1,5 @@ -Index: linux-2.4.35.4/arch/mips/config-shared.in -=================================================================== ---- linux-2.4.35.4.orig/arch/mips/config-shared.in -+++ linux-2.4.35.4/arch/mips/config-shared.in +--- a/arch/mips/config-shared.in ++++ b/arch/mips/config-shared.in @@ -208,6 +208,14 @@ if [ "$CONFIG_SIBYTE_SB1xxx_SOC" = "y" ] fi define_bool CONFIG_MIPS_RTC y @@ -55,10 +53,8 @@ Index: linux-2.4.35.4/arch/mips/config-shared.in dep_bool ' Console output to GDB' CONFIG_GDB_CONSOLE $CONFIG_KGDB if [ "$CONFIG_KGDB" = "y" ]; then define_bool CONFIG_DEBUG_INFO y -Index: linux-2.4.35.4/arch/mips/kernel/cpu-probe.c -=================================================================== ---- linux-2.4.35.4.orig/arch/mips/kernel/cpu-probe.c -+++ linux-2.4.35.4/arch/mips/kernel/cpu-probe.c +--- a/arch/mips/kernel/cpu-probe.c ++++ b/arch/mips/kernel/cpu-probe.c @@ -162,7 +162,7 @@ static inline int __cpu_has_fpu(void) static inline void cpu_probe_legacy(struct cpuinfo_mips *c) @@ -178,10 +174,8 @@ Index: linux-2.4.35.4/arch/mips/kernel/cpu-probe.c case PRID_COMP_SIBYTE: cpu_probe_sibyte(c); break; -Index: linux-2.4.35.4/arch/mips/kernel/head.S -=================================================================== ---- linux-2.4.35.4.orig/arch/mips/kernel/head.S -+++ linux-2.4.35.4/arch/mips/kernel/head.S +--- a/arch/mips/kernel/head.S ++++ b/arch/mips/kernel/head.S @@ -28,12 +28,20 @@ #include #include @@ -204,10 +198,8 @@ Index: linux-2.4.35.4/arch/mips/kernel/head.S /* The following two symbols are used for kernel profiling. */ EXPORT(stext) -Index: linux-2.4.35.4/arch/mips/kernel/proc.c -=================================================================== ---- linux-2.4.35.4.orig/arch/mips/kernel/proc.c -+++ linux-2.4.35.4/arch/mips/kernel/proc.c +--- a/arch/mips/kernel/proc.c ++++ b/arch/mips/kernel/proc.c @@ -78,9 +78,10 @@ static const char *cpu_name[] = { [CPU_AU1550] "Au1550", [CPU_24K] "MIPS 24K", @@ -220,10 +212,8 @@ Index: linux-2.4.35.4/arch/mips/kernel/proc.c static int show_cpuinfo(struct seq_file *m, void *v) { unsigned int version = current_cpu_data.processor_id; -Index: linux-2.4.35.4/arch/mips/kernel/setup.c -=================================================================== ---- linux-2.4.35.4.orig/arch/mips/kernel/setup.c -+++ linux-2.4.35.4/arch/mips/kernel/setup.c +--- a/arch/mips/kernel/setup.c ++++ b/arch/mips/kernel/setup.c @@ -493,6 +493,7 @@ void __init setup_arch(char **cmdline_p) void swarm_setup(void); void hp_setup(void); @@ -244,10 +234,8 @@ Index: linux-2.4.35.4/arch/mips/kernel/setup.c default: panic("Unsupported architecture"); } -Index: linux-2.4.35.4/arch/mips/kernel/traps.c -=================================================================== ---- linux-2.4.35.4.orig/arch/mips/kernel/traps.c -+++ linux-2.4.35.4/arch/mips/kernel/traps.c +--- a/arch/mips/kernel/traps.c ++++ b/arch/mips/kernel/traps.c @@ -920,6 +920,7 @@ void __init per_cpu_trap_init(void) void __init trap_init(void) { @@ -277,10 +265,8 @@ Index: linux-2.4.35.4/arch/mips/kernel/traps.c if (cpu_has_fpu && !cpu_has_nofpuex) set_except_vector(15, handle_fpe); -Index: linux-2.4.35.4/arch/mips/Makefile -=================================================================== ---- linux-2.4.35.4.orig/arch/mips/Makefile -+++ linux-2.4.35.4/arch/mips/Makefile +--- a/arch/mips/Makefile ++++ b/arch/mips/Makefile @@ -726,6 +726,19 @@ LOADADDR += 0x80020000 endif @@ -309,10 +295,8 @@ Index: linux-2.4.35.4/arch/mips/Makefile archmrproper: @$(MAKEBOOT) mrproper -Index: linux-2.4.35.4/arch/mips/mm/c-r4k.c -=================================================================== ---- linux-2.4.35.4.orig/arch/mips/mm/c-r4k.c -+++ linux-2.4.35.4/arch/mips/mm/c-r4k.c +--- a/arch/mips/mm/c-r4k.c ++++ b/arch/mips/mm/c-r4k.c @@ -1118,3 +1118,47 @@ void __init ld_mmu_r4xx0(void) build_clear_page(); build_copy_page(); @@ -361,10 +345,8 @@ Index: linux-2.4.35.4/arch/mips/mm/c-r4k.c +} + + -Index: linux-2.4.35.4/arch/mips/pci/Makefile -=================================================================== ---- linux-2.4.35.4.orig/arch/mips/pci/Makefile -+++ linux-2.4.35.4/arch/mips/pci/Makefile +--- a/arch/mips/pci/Makefile ++++ b/arch/mips/pci/Makefile @@ -13,7 +13,9 @@ obj-$(CONFIG_MIPS_GT64120) += ops-gt6412 obj-$(CONFIG_MIPS_MSC) += ops-msc.o obj-$(CONFIG_MIPS_NILE4) += ops-nile4.o @@ -375,10 +357,8 @@ Index: linux-2.4.35.4/arch/mips/pci/Makefile obj-$(CONFIG_PCI_AUTO) += pci_auto.o include $(TOPDIR)/Rules.make -Index: linux-2.4.35.4/drivers/char/serial.c -=================================================================== ---- linux-2.4.35.4.orig/drivers/char/serial.c -+++ linux-2.4.35.4/drivers/char/serial.c +--- a/drivers/char/serial.c ++++ b/drivers/char/serial.c @@ -444,6 +444,10 @@ static _INLINE_ unsigned int serial_in(s return inb(info->port+1); #endif @@ -447,10 +427,8 @@ Index: linux-2.4.35.4/drivers/char/serial.c cval = cflag & (CSIZE | CSTOPB); #if defined(__powerpc__) || defined(__alpha__) cval >>= 8; -Index: linux-2.4.35.4/drivers/net/Makefile -=================================================================== ---- linux-2.4.35.4.orig/drivers/net/Makefile -+++ linux-2.4.35.4/drivers/net/Makefile +--- a/drivers/net/Makefile ++++ b/drivers/net/Makefile @@ -3,6 +3,8 @@ # Makefile for the Linux network (ethercard) device drivers. # @@ -460,10 +438,8 @@ Index: linux-2.4.35.4/drivers/net/Makefile obj-y := obj-m := obj-n := -Index: linux-2.4.35.4/drivers/parport/Config.in -=================================================================== ---- linux-2.4.35.4.orig/drivers/parport/Config.in -+++ linux-2.4.35.4/drivers/parport/Config.in +--- a/drivers/parport/Config.in ++++ b/drivers/parport/Config.in @@ -11,6 +11,7 @@ comment 'Parallel port support' tristate 'Parallel port support' CONFIG_PARPORT if [ "$CONFIG_PARPORT" != "n" ]; then @@ -472,10 +448,8 @@ Index: linux-2.4.35.4/drivers/parport/Config.in if [ "$CONFIG_PARPORT_PC" != "n" -a "$CONFIG_SERIAL" != "n" ]; then if [ "$CONFIG_SERIAL" = "m" ]; then define_tristate CONFIG_PARPORT_PC_CML1 m -Index: linux-2.4.35.4/drivers/parport/Makefile -=================================================================== ---- linux-2.4.35.4.orig/drivers/parport/Makefile -+++ linux-2.4.35.4/drivers/parport/Makefile +--- a/drivers/parport/Makefile ++++ b/drivers/parport/Makefile @@ -22,6 +22,7 @@ endif obj-$(CONFIG_PARPORT) += parport.o @@ -484,10 +458,8 @@ Index: linux-2.4.35.4/drivers/parport/Makefile obj-$(CONFIG_PARPORT_PC_PCMCIA) += parport_cs.o obj-$(CONFIG_PARPORT_AMIGA) += parport_amiga.o obj-$(CONFIG_PARPORT_MFC3) += parport_mfc3.o -Index: linux-2.4.35.4/include/asm-mips/bootinfo.h -=================================================================== ---- linux-2.4.35.4.orig/include/asm-mips/bootinfo.h -+++ linux-2.4.35.4/include/asm-mips/bootinfo.h +--- a/include/asm-mips/bootinfo.h ++++ b/include/asm-mips/bootinfo.h @@ -37,6 +37,7 @@ #define MACH_GROUP_HP_LJ 20 /* Hewlett Packard LaserJet */ #define MACH_GROUP_LASAT 21 @@ -512,10 +484,8 @@ Index: linux-2.4.35.4/include/asm-mips/bootinfo.h * Valid machtype for group TITAN */ #define MACH_TITAN_YOSEMITE 1 /* PMC-Sierra Yosemite */ -Index: linux-2.4.35.4/include/asm-mips/cpu.h -=================================================================== ---- linux-2.4.35.4.orig/include/asm-mips/cpu.h -+++ linux-2.4.35.4/include/asm-mips/cpu.h +--- a/include/asm-mips/cpu.h ++++ b/include/asm-mips/cpu.h @@ -22,6 +22,11 @@ spec. */ @@ -564,10 +534,8 @@ Index: linux-2.4.35.4/include/asm-mips/cpu.h /* * ISA Level encodings -Index: linux-2.4.35.4/include/asm-mips/r4kcache.h -=================================================================== ---- linux-2.4.35.4.orig/include/asm-mips/r4kcache.h -+++ linux-2.4.35.4/include/asm-mips/r4kcache.h +--- a/include/asm-mips/r4kcache.h ++++ b/include/asm-mips/r4kcache.h @@ -567,4 +567,17 @@ static inline void blast_scache128_page_ cache128_unroll32(addr|ws,Index_Writeback_Inv_SD); } @@ -586,10 +554,8 @@ Index: linux-2.4.35.4/include/asm-mips/r4kcache.h +} + #endif /* __ASM_R4KCACHE_H */ -Index: linux-2.4.35.4/include/asm-mips/serial.h -=================================================================== ---- linux-2.4.35.4.orig/include/asm-mips/serial.h -+++ linux-2.4.35.4/include/asm-mips/serial.h +--- a/include/asm-mips/serial.h ++++ b/include/asm-mips/serial.h @@ -223,6 +223,13 @@ #define TXX927_SERIAL_PORT_DEFNS #endif @@ -612,11 +578,9 @@ Index: linux-2.4.35.4/include/asm-mips/serial.h COBALT_SERIAL_PORT_DEFNS \ DDB5477_SERIAL_PORT_DEFNS \ EV96100_SERIAL_PORT_DEFNS \ -Index: linux-2.4.35.4/init/do_mounts.c -=================================================================== ---- linux-2.4.35.4.orig/init/do_mounts.c -+++ linux-2.4.35.4/init/do_mounts.c -@@ -254,7 +254,13 @@ static struct dev_name_struct { +--- a/init/do_mounts.c ++++ b/init/do_mounts.c +@@ -255,7 +255,13 @@ static struct dev_name_struct { { "ftlb", 0x2c08 }, { "ftlc", 0x2c10 }, { "ftld", 0x2c18 }, diff --git a/target/linux/brcm-2.4/patches/003-bcm47xx_cache_fixes.patch b/target/linux/brcm-2.4/patches/003-bcm47xx_cache_fixes.patch index ebd987214c..28f8ac48b6 100644 --- a/target/linux/brcm-2.4/patches/003-bcm47xx_cache_fixes.patch +++ b/target/linux/brcm-2.4/patches/003-bcm47xx_cache_fixes.patch @@ -1,7 +1,5 @@ -Index: linux-2.4.35.4/arch/mips/kernel/entry.S -=================================================================== ---- linux-2.4.35.4.orig/arch/mips/kernel/entry.S -+++ linux-2.4.35.4/arch/mips/kernel/entry.S +--- a/arch/mips/kernel/entry.S ++++ b/arch/mips/kernel/entry.S @@ -100,6 +100,10 @@ END(except_vec1_generic) * and R4400 SC and MC versions. */ @@ -13,10 +11,8 @@ Index: linux-2.4.35.4/arch/mips/kernel/entry.S #if R5432_CP0_INTERRUPT_WAR mfc0 k0, CP0_INDEX #endif -Index: linux-2.4.35.4/arch/mips/mm/c-r4k.c -=================================================================== ---- linux-2.4.35.4.orig/arch/mips/mm/c-r4k.c -+++ linux-2.4.35.4/arch/mips/mm/c-r4k.c +--- a/arch/mips/mm/c-r4k.c ++++ b/arch/mips/mm/c-r4k.c @@ -14,6 +14,12 @@ #include #include @@ -244,10 +240,8 @@ Index: linux-2.4.35.4/arch/mips/mm/c-r4k.c probe_pcache(); setup_scache(); -Index: linux-2.4.35.4/arch/mips/mm/tlbex-mips32.S -=================================================================== ---- linux-2.4.35.4.orig/arch/mips/mm/tlbex-mips32.S -+++ linux-2.4.35.4/arch/mips/mm/tlbex-mips32.S +--- a/arch/mips/mm/tlbex-mips32.S ++++ b/arch/mips/mm/tlbex-mips32.S @@ -90,6 +90,9 @@ .set noat LEAF(except_vec0_r4000) @@ -258,10 +252,8 @@ Index: linux-2.4.35.4/arch/mips/mm/tlbex-mips32.S #ifdef CONFIG_SMP mfc0 k1, CP0_CONTEXT la k0, pgd_current -Index: linux-2.4.35.4/include/asm-mips/r4kcache.h -=================================================================== ---- linux-2.4.35.4.orig/include/asm-mips/r4kcache.h -+++ linux-2.4.35.4/include/asm-mips/r4kcache.h +--- a/include/asm-mips/r4kcache.h ++++ b/include/asm-mips/r4kcache.h @@ -15,6 +15,18 @@ #include #include @@ -464,10 +456,8 @@ Index: linux-2.4.35.4/include/asm-mips/r4kcache.h do { cache64_unroll32(start,Hit_Invalidate_I); start += 0x800; -Index: linux-2.4.35.4/include/asm-mips/stackframe.h -=================================================================== ---- linux-2.4.35.4.orig/include/asm-mips/stackframe.h -+++ linux-2.4.35.4/include/asm-mips/stackframe.h +--- a/include/asm-mips/stackframe.h ++++ b/include/asm-mips/stackframe.h @@ -209,6 +209,20 @@ #endif @@ -489,10 +479,8 @@ Index: linux-2.4.35.4/include/asm-mips/stackframe.h #define RESTORE_SP \ lw sp, PT_R29(sp); \ -Index: linux-2.4.35.4/mm/memory.c -=================================================================== ---- linux-2.4.35.4.orig/mm/memory.c -+++ linux-2.4.35.4/mm/memory.c +--- a/mm/memory.c ++++ b/mm/memory.c @@ -927,6 +927,7 @@ static inline void break_cow(struct vm_a flush_page_to_ram(new_page); flush_cache_page(vma, address); diff --git a/target/linux/brcm-2.4/patches/004-flash.patch b/target/linux/brcm-2.4/patches/004-flash.patch index 8f75b65fe7..f34efb0146 100644 --- a/target/linux/brcm-2.4/patches/004-flash.patch +++ b/target/linux/brcm-2.4/patches/004-flash.patch @@ -1,7 +1,5 @@ -Index: linux-2.4.35.4/drivers/mtd/devices/Config.in -=================================================================== ---- linux-2.4.35.4.orig/drivers/mtd/devices/Config.in -+++ linux-2.4.35.4/drivers/mtd/devices/Config.in +--- a/drivers/mtd/devices/Config.in ++++ b/drivers/mtd/devices/Config.in @@ -5,6 +5,7 @@ mainmenu_option next_comment @@ -10,10 +8,8 @@ Index: linux-2.4.35.4/drivers/mtd/devices/Config.in dep_tristate ' Ramix PMC551 PCI Mezzanine RAM card support' CONFIG_MTD_PMC551 $CONFIG_MTD $CONFIG_PCI if [ "$CONFIG_MTD_PMC551" = "y" -o "$CONFIG_MTD_PMC551" = "m" ]; then bool ' PMC551 256M DRAM Bugfix' CONFIG_MTD_PMC551_BUGFIX -Index: linux-2.4.35.4/drivers/mtd/devices/Makefile -=================================================================== ---- linux-2.4.35.4.orig/drivers/mtd/devices/Makefile -+++ linux-2.4.35.4/drivers/mtd/devices/Makefile +--- a/drivers/mtd/devices/Makefile ++++ b/drivers/mtd/devices/Makefile @@ -3,6 +3,8 @@ # # $Id: Makefile,v 1.4 2001/06/26 21:10:05 spse Exp $ @@ -31,10 +27,8 @@ Index: linux-2.4.35.4/drivers/mtd/devices/Makefile obj-$(CONFIG_MTD_DOC1000) += doc1000.o obj-$(CONFIG_MTD_DOC2000) += doc2000.o obj-$(CONFIG_MTD_DOC2001) += doc2001.o -Index: linux-2.4.35.4/drivers/mtd/maps/Config.in -=================================================================== ---- linux-2.4.35.4.orig/drivers/mtd/maps/Config.in -+++ linux-2.4.35.4/drivers/mtd/maps/Config.in +--- a/drivers/mtd/maps/Config.in ++++ b/drivers/mtd/maps/Config.in @@ -48,6 +48,7 @@ if [ "$CONFIG_PPC" = "y" ]; then fi @@ -43,10 +37,8 @@ Index: linux-2.4.35.4/drivers/mtd/maps/Config.in dep_tristate ' Pb1000 MTD support' CONFIG_MTD_PB1000 $CONFIG_MIPS_PB1000 dep_tristate ' Pb1500 MTD support' CONFIG_MTD_PB1500 $CONFIG_MIPS_PB1500 dep_tristate ' Pb1100 MTD support' CONFIG_MTD_PB1100 $CONFIG_MIPS_PB1100 -Index: linux-2.4.35.4/drivers/mtd/maps/Makefile -=================================================================== ---- linux-2.4.35.4.orig/drivers/mtd/maps/Makefile -+++ linux-2.4.35.4/drivers/mtd/maps/Makefile +--- a/drivers/mtd/maps/Makefile ++++ b/drivers/mtd/maps/Makefile @@ -3,6 +3,8 @@ # # $Id: Makefile,v 1.37 2003/01/24 14:26:38 dwmw2 Exp $ diff --git a/target/linux/brcm-2.4/patches/005-bluetooth_sco_buffer_align.patch b/target/linux/brcm-2.4/patches/005-bluetooth_sco_buffer_align.patch index 77ce815577..7fd1fb1604 100644 --- a/target/linux/brcm-2.4/patches/005-bluetooth_sco_buffer_align.patch +++ b/target/linux/brcm-2.4/patches/005-bluetooth_sco_buffer_align.patch @@ -1,7 +1,5 @@ -Index: linux-2.4.35.4/drivers/bluetooth/hci_usb.c -=================================================================== ---- linux-2.4.35.4.orig/drivers/bluetooth/hci_usb.c -+++ linux-2.4.35.4/drivers/bluetooth/hci_usb.c +--- a/drivers/bluetooth/hci_usb.c ++++ b/drivers/bluetooth/hci_usb.c @@ -259,6 +259,9 @@ static int hci_usb_isoc_rx_submit(struct void *buf; diff --git a/target/linux/brcm-2.4/patches/006-ide_workaround.patch b/target/linux/brcm-2.4/patches/006-ide_workaround.patch index 8a0b9de685..f77aa64c69 100644 --- a/target/linux/brcm-2.4/patches/006-ide_workaround.patch +++ b/target/linux/brcm-2.4/patches/006-ide_workaround.patch @@ -1,7 +1,5 @@ -Index: linux-2.4.35.4/arch/mips/lib/ide-std.c -=================================================================== ---- linux-2.4.35.4.orig/arch/mips/lib/ide-std.c -+++ linux-2.4.35.4/arch/mips/lib/ide-std.c +--- a/arch/mips/lib/ide-std.c ++++ b/arch/mips/lib/ide-std.c @@ -31,12 +31,14 @@ static int std_ide_default_irq(ide_ioreg static ide_ioreg_t std_ide_default_io_base(int index) { diff --git a/target/linux/brcm-2.4/patches/008-b44_bcm47xx_support.patch b/target/linux/brcm-2.4/patches/008-b44_bcm47xx_support.patch index ae6e7d5559..28d54e9b96 100644 --- a/target/linux/brcm-2.4/patches/008-b44_bcm47xx_support.patch +++ b/target/linux/brcm-2.4/patches/008-b44_bcm47xx_support.patch @@ -1,7 +1,5 @@ -Index: linux-2.4.35.4/drivers/net/b44.c -=================================================================== ---- linux-2.4.35.4.orig/drivers/net/b44.c -+++ linux-2.4.35.4/drivers/net/b44.c +--- a/drivers/net/b44.c ++++ b/drivers/net/b44.c @@ -1,7 +1,9 @@ /* b44.c: Broadcom 4400 device driver. * @@ -550,10 +548,8 @@ Index: linux-2.4.35.4/drivers/net/b44.c return 0; err_out_iounmap: -Index: linux-2.4.35.4/drivers/net/b44.h -=================================================================== ---- linux-2.4.35.4.orig/drivers/net/b44.h -+++ linux-2.4.35.4/drivers/net/b44.h +--- a/drivers/net/b44.h ++++ b/drivers/net/b44.h @@ -229,8 +229,6 @@ #define SBIPSFLAG_IMASK4 0x3f000000 /* Which sbflags --> mips interrupt 4 */ #define SBIPSFLAG_ISHIFT4 24 @@ -572,11 +568,9 @@ Index: linux-2.4.35.4/drivers/net/b44.h /* SW copy of device statistics, kept up to date by periodic timer * which probes HW values. Must have same relative layout as HW -Index: linux-2.4.35.4/include/linux/pci_ids.h -=================================================================== ---- linux-2.4.35.4.orig/include/linux/pci_ids.h -+++ linux-2.4.35.4/include/linux/pci_ids.h -@@ -1756,6 +1756,7 @@ +--- a/include/linux/pci_ids.h ++++ b/include/linux/pci_ids.h +@@ -1765,6 +1765,7 @@ #define PCI_DEVICE_ID_TIGON3_5901_2 0x170e #define PCI_DEVICE_ID_BCM4401 0x4401 #define PCI_DEVICE_ID_BCM4401B0 0x4402 diff --git a/target/linux/brcm-2.4/patches/009-wrt54g3g_pcmcia.patch b/target/linux/brcm-2.4/patches/009-wrt54g3g_pcmcia.patch index be84d2d60a..81b5ee80c5 100644 --- a/target/linux/brcm-2.4/patches/009-wrt54g3g_pcmcia.patch +++ b/target/linux/brcm-2.4/patches/009-wrt54g3g_pcmcia.patch @@ -1,7 +1,5 @@ -Index: linux-2.4.35.4/drivers/pcmcia/yenta.c -=================================================================== ---- linux-2.4.35.4.orig/drivers/pcmcia/yenta.c -+++ linux-2.4.35.4/drivers/pcmcia/yenta.c +--- a/drivers/pcmcia/yenta.c ++++ b/drivers/pcmcia/yenta.c @@ -543,6 +543,9 @@ static unsigned int yenta_probe_irq(pci_ * Probe for usable interrupts using the force * register to generate bogus card status events. diff --git a/target/linux/brcm-2.4/patches/010-bcm47xx-cam_absent.patch b/target/linux/brcm-2.4/patches/010-bcm47xx-cam_absent.patch index 1fe564e0a9..18799cbc76 100644 --- a/target/linux/brcm-2.4/patches/010-bcm47xx-cam_absent.patch +++ b/target/linux/brcm-2.4/patches/010-bcm47xx-cam_absent.patch @@ -1,7 +1,5 @@ -Index: linux-2.4.35.4/drivers/net/b44.h -=================================================================== ---- linux-2.4.35.4.orig/drivers/net/b44.h -+++ linux-2.4.35.4/drivers/net/b44.h +--- a/drivers/net/b44.h ++++ b/drivers/net/b44.h @@ -122,6 +122,7 @@ #define RXCONFIG_FLOW 0x00000020 /* Flow Control Enable */ #define RXCONFIG_FLOW_ACCEPT 0x00000040 /* Accept Unicast Flow Control Frame */ @@ -10,10 +8,8 @@ Index: linux-2.4.35.4/drivers/net/b44.h #define B44_RXMAXLEN 0x0404UL /* EMAC RX Max Packet Length */ #define B44_TXMAXLEN 0x0408UL /* EMAC TX Max Packet Length */ #define B44_MDIO_CTRL 0x0410UL /* EMAC MDIO Control */ -Index: linux-2.4.35.4/drivers/net/b44.c -=================================================================== ---- linux-2.4.35.4.orig/drivers/net/b44.c -+++ linux-2.4.35.4/drivers/net/b44.c +--- a/drivers/net/b44.c ++++ b/drivers/net/b44.c @@ -1299,6 +1299,7 @@ static int b44_set_mac_addr(struct net_d { struct b44 *bp = dev->priv; diff --git a/target/linux/brcm-2.4/patches/011-wl_qdisc_war.patch b/target/linux/brcm-2.4/patches/011-wl_qdisc_war.patch index bf831c66f5..b2e746a6c0 100644 --- a/target/linux/brcm-2.4/patches/011-wl_qdisc_war.patch +++ b/target/linux/brcm-2.4/patches/011-wl_qdisc_war.patch @@ -1,7 +1,5 @@ -Index: linux-2.4.35.4/net/sched/sch_generic.c -=================================================================== ---- linux-2.4.35.4.orig/net/sched/sch_generic.c -+++ linux-2.4.35.4/net/sched/sch_generic.c +--- a/net/sched/sch_generic.c ++++ b/net/sched/sch_generic.c @@ -84,6 +84,11 @@ int qdisc_restart(struct net_device *dev struct sk_buff *skb; diff --git a/target/linux/brcm-2.4/patches/012-aec62xx.patch b/target/linux/brcm-2.4/patches/012-aec62xx.patch index b0cc812d27..7010daf23c 100644 --- a/target/linux/brcm-2.4/patches/012-aec62xx.patch +++ b/target/linux/brcm-2.4/patches/012-aec62xx.patch @@ -1,7 +1,5 @@ -Index: linux-2.4.35.4/drivers/ide/pci/aec62xx.c -=================================================================== ---- linux-2.4.35.4.orig/drivers/ide/pci/aec62xx.c -+++ linux-2.4.35.4/drivers/ide/pci/aec62xx.c +--- a/drivers/ide/pci/aec62xx.c ++++ b/drivers/ide/pci/aec62xx.c @@ -3,6 +3,8 @@ * * Copyright (C) 1999-2002 Andre Hedrick diff --git a/target/linux/brcm-2.4/patches/013-wl_hdd_pdc202xx.patch b/target/linux/brcm-2.4/patches/013-wl_hdd_pdc202xx.patch index 48b3b3b547..ffe022b588 100644 --- a/target/linux/brcm-2.4/patches/013-wl_hdd_pdc202xx.patch +++ b/target/linux/brcm-2.4/patches/013-wl_hdd_pdc202xx.patch @@ -1,7 +1,5 @@ -Index: linux-2.4.35.4/drivers/ide/pci/pdc202xx_old.c -=================================================================== ---- linux-2.4.35.4.orig/drivers/ide/pci/pdc202xx_old.c -+++ linux-2.4.35.4/drivers/ide/pci/pdc202xx_old.c +--- a/drivers/ide/pci/pdc202xx_old.c ++++ b/drivers/ide/pci/pdc202xx_old.c @@ -253,23 +253,23 @@ static int pdc202xx_tune_chipset (ide_dr pci_read_config_byte(dev, (drive_pci)|0x03, &DP); diff --git a/target/linux/brcm-2.4/patches/014-sierra_support.patch b/target/linux/brcm-2.4/patches/014-sierra_support.patch index 93ed7af771..f964d00354 100644 --- a/target/linux/brcm-2.4/patches/014-sierra_support.patch +++ b/target/linux/brcm-2.4/patches/014-sierra_support.patch @@ -1,6 +1,5 @@ -diff -Naur linux-2.4.35.4-old/drivers/usb/serial/sierra.c linux-2.4.35.4/drivers/usb/serial/sierra.c ---- linux-2.4.35.4-old/drivers/usb/serial/sierra.c 1969-12-31 17:00:00.000000000 -0700 -+++ linux-2.4.35.4/drivers/usb/serial/sierra.c 2008-01-25 10:21:25.747868456 -0700 +--- /dev/null ++++ b/drivers/usb/serial/sierra.c @@ -0,0 +1,1446 @@ +/* + * Sierra Wireless CDMA Wireless Serial USB drive @@ -1448,9 +1447,8 @@ diff -Naur linux-2.4.35.4-old/drivers/usb/serial/sierra.c linux-2.4.35.4/drivers +module_init(sierra_init); +module_exit(sierra_exit); +MODULE_LICENSE("GPL"); -diff -Naur linux-2.4.35.4-old/drivers/usb/serial/sierra.h linux-2.4.35.4/drivers/usb/serial/sierra.h ---- linux-2.4.35.4-old/drivers/usb/serial/sierra.h 1969-12-31 17:00:00.000000000 -0700 -+++ linux-2.4.35.4/drivers/usb/serial/sierra.h 2008-01-25 10:15:35.640743578 -0700 +--- /dev/null ++++ b/drivers/usb/serial/sierra.h @@ -0,0 +1,32 @@ +/* + * Sierra Wireless CDMA Wireless Serial USB drive diff --git a/target/linux/brcm-2.4/patches/015-sierra_kconfig.patch b/target/linux/brcm-2.4/patches/015-sierra_kconfig.patch index ed31619297..6b6ca6a34b 100644 --- a/target/linux/brcm-2.4/patches/015-sierra_kconfig.patch +++ b/target/linux/brcm-2.4/patches/015-sierra_kconfig.patch @@ -1,7 +1,6 @@ -diff -Naur linux-2.4.35.4.orig/drivers/usb/serial/Config.in linux-2.4.35.4/drivers/usb/serial/Config.in ---- linux-2.4.35.4.orig/drivers/usb/serial/Config.in 2008-01-25 10:09:11.541747549 -0700 -+++ linux-2.4.35.4/drivers/usb/serial/Config.in 2008-01-25 10:17:01.890745265 -0700 -@@ -39,6 +39,7 @@ +--- a/drivers/usb/serial/Config.in ++++ b/drivers/usb/serial/Config.in +@@ -39,6 +39,7 @@ if [ "$CONFIG_USB_SERIAL" != "n" ]; then dep_tristate ' USB KOBIL chipcard reader (EXPERIMENTAL)' CONFIG_USB_SERIAL_KOBIL_SCT $CONFIG_USB_SERIAL $CONFIG_EXPERIMENTAL dep_tristate ' USB Prolific 2303 Single Port Serial Driver' CONFIG_USB_SERIAL_PL2303 $CONFIG_USB_SERIAL dep_tristate ' USB REINER SCT cyberJack pinpad/e-com chipcard reader (EXPERIMENTAL)' CONFIG_USB_SERIAL_CYBERJACK $CONFIG_USB_SERIAL $CONFIG_EXPERIMENTAL @@ -9,10 +8,9 @@ diff -Naur linux-2.4.35.4.orig/drivers/usb/serial/Config.in linux-2.4.35.4/drive dep_tristate ' USB Xircom / Entregra Single Port Serial Driver (EXPERIMENTAL)' CONFIG_USB_SERIAL_XIRCOM $CONFIG_USB_SERIAL $CONFIG_EXPERIMENTAL dep_tristate ' USB ZyXEL omni.net LCD Plus Driver (EXPERIMENTAL)' CONFIG_USB_SERIAL_OMNINET $CONFIG_USB_SERIAL $CONFIG_EXPERIMENTAL fi -diff -Naur linux-2.4.35.4.orig/drivers/usb/serial/Makefile linux-2.4.35.4/drivers/usb/serial/Makefile ---- linux-2.4.35.4.orig/drivers/usb/serial/Makefile 2008-01-25 10:09:11.542749582 -0700 -+++ linux-2.4.35.4/drivers/usb/serial/Makefile 2008-01-25 10:17:37.412855271 -0700 -@@ -26,6 +26,7 @@ +--- a/drivers/usb/serial/Makefile ++++ b/drivers/usb/serial/Makefile +@@ -26,6 +26,7 @@ obj-$(CONFIG_USB_SERIAL_CYBERJACK) += c obj-$(CONFIG_USB_SERIAL_IR) += ir-usb.o obj-$(CONFIG_USB_SERIAL_KLSI) += kl5kusb105.o obj-$(CONFIG_USB_SERIAL_KOBIL_SCT) += kobil_sct.o diff --git a/target/linux/generic-2.4/patches/000-linux_mips.patch b/target/linux/generic-2.4/patches/000-linux_mips.patch index e3acfa8c3a..eea2d77e4f 100644 --- a/target/linux/generic-2.4/patches/000-linux_mips.patch +++ b/target/linux/generic-2.4/patches/000-linux_mips.patch @@ -12318,7 +12318,7 @@ +module_exit(au1550spi_exit); --- a/drivers/char/Config.in +++ b/drivers/char/Config.in -@@ -314,14 +314,11 @@ fi +@@ -320,14 +320,11 @@ fi if [ "$CONFIG_OBSOLETE" = "y" -a "$CONFIG_ALPHA_BOOK1" = "y" ]; then bool 'Tadpole ANA H8 Support (OBSOLETE)' CONFIG_H8 fi @@ -12335,7 +12335,7 @@ fi if [ "$CONFIG_TOSHIBA_RBTX4927" = "y" -o "$CONFIG_TOSHIBA_JMR3927" = "y" ]; then tristate 'Dallas DS1742 RTC support' CONFIG_DS1742 -@@ -384,6 +381,11 @@ if [ "$CONFIG_DRM" = "y" ]; then +@@ -390,6 +387,11 @@ if [ "$CONFIG_DRM" = "y" ]; then source drivers/char/drm/Config.in fi fi @@ -12347,7 +12347,7 @@ endmenu if [ "$CONFIG_HOTPLUG" = "y" -a "$CONFIG_PCMCIA" != "n" ]; then -@@ -392,6 +394,7 @@ fi +@@ -398,6 +400,7 @@ fi if [ "$CONFIG_SOC_AU1X00" = "y" ]; then tristate ' Alchemy Au1x00 GPIO device support' CONFIG_AU1X00_GPIO tristate ' Au1000/ADS7846 touchscreen support' CONFIG_TS_AU1X00_ADS7846 @@ -14366,7 +14366,7 @@ obj-$(CONFIG_DS1620) += ds1620.o obj-$(CONFIG_DS1742) += ds1742.o obj-$(CONFIG_INTEL_RNG) += i810_rng.o -@@ -269,6 +274,7 @@ obj-$(CONFIG_BRIQ_PANEL) += briq_panel.o +@@ -270,6 +275,7 @@ obj-$(CONFIG_BRIQ_PANEL) += briq_panel.o obj-$(CONFIG_ITE_GPIO) += ite_gpio.o obj-$(CONFIG_AU1X00_GPIO) += au1000_gpio.o @@ -14374,7 +14374,7 @@ obj-$(CONFIG_AU1X00_USB_TTY) += au1000_usbtty.o obj-$(CONFIG_AU1X00_USB_RAW) += au1000_usbraw.o obj-$(CONFIG_COBALT_LCD) += lcd.o -@@ -355,3 +361,9 @@ defkeymap.c: defkeymap.map +@@ -357,3 +363,9 @@ defkeymap.c: defkeymap.map qtronixmap.c: qtronixmap.map set -e ; loadkeys --mktable $< | sed -e 's/^static *//' > $@ @@ -27419,7 +27419,7 @@ #define I2C_HW_SMBUS_ALI15X3 0x01 --- a/include/linux/sched.h +++ b/include/linux/sched.h -@@ -617,6 +617,10 @@ asmlinkage long sys_wait4(pid_t pid,unsi +@@ -619,6 +619,10 @@ asmlinkage long sys_wait4(pid_t pid,unsi extern int in_group_p(gid_t); extern int in_egroup_p(gid_t); @@ -27613,7 +27613,7 @@ return sig; } -@@ -540,6 +558,11 @@ send_sig_info(int sig, struct siginfo *i +@@ -551,6 +569,11 @@ send_sig_info(int sig, struct siginfo *i printk("SIG queue (%s:%d): %d ", t->comm, t->pid, sig); #endif @@ -27625,7 +27625,7 @@ ret = -EINVAL; if (sig < 0 || sig > _NSIG) goto out_nolock; -@@ -778,8 +801,8 @@ void do_notify_parent(struct task_struct +@@ -789,8 +812,8 @@ void do_notify_parent(struct task_struct info.si_uid = tsk->uid; /* FIXME: find out whether or not this is supposed to be c*time. */ diff --git a/target/linux/generic-2.4/patches/001-squashfs.patch b/target/linux/generic-2.4/patches/001-squashfs.patch index 2cc3b85b3f..2e5cefedf7 100644 --- a/target/linux/generic-2.4/patches/001-squashfs.patch +++ b/target/linux/generic-2.4/patches/001-squashfs.patch @@ -2930,7 +2930,7 @@ void *generic_ip; } u; }; -@@ -734,6 +736,7 @@ struct nameidata { +@@ -736,6 +738,7 @@ struct nameidata { #include #include #include @@ -2938,7 +2938,7 @@ extern struct list_head super_blocks; extern spinlock_t sb_lock; -@@ -793,6 +796,7 @@ struct super_block { +@@ -795,6 +798,7 @@ struct super_block { struct usbdev_sb_info usbdevfs_sb; struct jffs2_sb_info jffs2_sb; struct cramfs_sb_info cramfs_sb; @@ -3990,7 +3990,7 @@ +#endif --- a/init/do_mounts.c +++ b/init/do_mounts.c -@@ -15,6 +15,7 @@ +@@ -16,6 +16,7 @@ #include #include #include @@ -3998,7 +3998,7 @@ #include #define BUILD_CRAMDISK -@@ -476,6 +477,7 @@ static int __init crd_load(int in_fd, in +@@ -485,6 +486,7 @@ static int __init crd_load(int in_fd, in * minix * ext2 * romfs @@ -4006,7 +4006,7 @@ * cramfs * gzip */ -@@ -486,6 +488,7 @@ identify_ramdisk_image(int fd, int start +@@ -495,6 +497,7 @@ identify_ramdisk_image(int fd, int start struct minix_super_block *minixsb; struct ext2_super_block *ext2sb; struct romfs_super_block *romfsb; @@ -4014,7 +4014,7 @@ struct cramfs_super *cramfsb; int nblocks = -1; unsigned char *buf; -@@ -497,6 +500,7 @@ identify_ramdisk_image(int fd, int start +@@ -506,6 +509,7 @@ identify_ramdisk_image(int fd, int start minixsb = (struct minix_super_block *) buf; ext2sb = (struct ext2_super_block *) buf; romfsb = (struct romfs_super_block *) buf; @@ -4022,7 +4022,7 @@ cramfsb = (struct cramfs_super *) buf; memset(buf, 0xe5, size); -@@ -535,6 +539,15 @@ identify_ramdisk_image(int fd, int start +@@ -544,6 +548,15 @@ identify_ramdisk_image(int fd, int start goto done; } diff --git a/target/linux/generic-2.4/patches/003-jffs2_compression.patch b/target/linux/generic-2.4/patches/003-jffs2_compression.patch index 368a0aa7b2..c0eebf8405 100644 --- a/target/linux/generic-2.4/patches/003-jffs2_compression.patch +++ b/target/linux/generic-2.4/patches/003-jffs2_compression.patch @@ -1,6 +1,6 @@ --- a/Documentation/Configure.help +++ b/Documentation/Configure.help -@@ -17580,6 +17580,32 @@ CONFIG_JFFS2_FS_DEBUG +@@ -17592,6 +17592,32 @@ CONFIG_JFFS2_FS_DEBUG If reporting bugs, please try to have available a full dump of the messages at debug level 1 while the misbehaviour was occurring. diff --git a/target/linux/generic-2.4/patches/106-mppe_mppc.patch b/target/linux/generic-2.4/patches/106-mppe_mppc.patch index dede6dcfb0..afd2e601a2 100644 --- a/target/linux/generic-2.4/patches/106-mppe_mppc.patch +++ b/target/linux/generic-2.4/patches/106-mppe_mppc.patch @@ -6,7 +6,7 @@ Microsoft Point-to-Point Encryption / Compression support --- a/Documentation/Configure.help +++ b/Documentation/Configure.help -@@ -9974,6 +9974,28 @@ CONFIG_PPP_BSDCOMP +@@ -9986,6 +9986,28 @@ CONFIG_PPP_BSDCOMP module; it is called bsd_comp.o and will show up in the directory modules once you have said "make modules". If unsure, say N. diff --git a/target/linux/generic-2.4/patches/107-cifs.patch b/target/linux/generic-2.4/patches/107-cifs.patch index 3ca3fb57e1..e2ff33d642 100644 --- a/target/linux/generic-2.4/patches/107-cifs.patch +++ b/target/linux/generic-2.4/patches/107-cifs.patch @@ -1,6 +1,6 @@ --- a/Documentation/Configure.help +++ b/Documentation/Configure.help -@@ -17995,6 +17995,34 @@ CONFIG_UNIXWARE_DISKLABEL +@@ -18007,6 +18007,34 @@ CONFIG_UNIXWARE_DISKLABEL If you don't know what all this is about, say N. diff --git a/target/linux/generic-2.4/patches/108-optional_aout_support.patch b/target/linux/generic-2.4/patches/108-optional_aout_support.patch index 2c737f9aba..ff8c8cf30e 100644 --- a/target/linux/generic-2.4/patches/108-optional_aout_support.patch +++ b/target/linux/generic-2.4/patches/108-optional_aout_support.patch @@ -1,6 +1,6 @@ --- a/Documentation/Configure.help +++ b/Documentation/Configure.help -@@ -4690,6 +4690,12 @@ CONFIG_BINFMT_ELF +@@ -4701,6 +4701,12 @@ CONFIG_BINFMT_ELF ld.so (check the file for location and latest version). @@ -13,7 +13,7 @@ Kernel support for a.out binaries CONFIG_BINFMT_AOUT A.out (Assembler.OUTput) is a set of formats for libraries and -@@ -4703,13 +4709,11 @@ CONFIG_BINFMT_AOUT +@@ -4714,13 +4720,11 @@ CONFIG_BINFMT_AOUT warrant removing support. However its removal is a good idea if you wish to ensure that absolutely none of your programs will use this older executable format. If you don't know what to answer at this @@ -100,7 +100,7 @@ --- a/arch/i386/config.in +++ b/arch/i386/config.in -@@ -329,6 +329,9 @@ if [ "$CONFIG_PROC_FS" = "y" ]; then +@@ -345,6 +345,9 @@ if [ "$CONFIG_PROC_FS" = "y" ]; then fi tristate 'Kernel support for a.out binaries' CONFIG_BINFMT_AOUT bool 'Kernel support for ELF binaries' CONFIG_BINFMT_ELF diff --git a/target/linux/generic-2.4/patches/110-netdev_random_core.patch b/target/linux/generic-2.4/patches/110-netdev_random_core.patch index d4207ad882..06f3e4ee17 100644 --- a/target/linux/generic-2.4/patches/110-netdev_random_core.patch +++ b/target/linux/generic-2.4/patches/110-netdev_random_core.patch @@ -1,6 +1,6 @@ --- a/Documentation/Configure.help +++ b/Documentation/Configure.help -@@ -10675,6 +10675,20 @@ CONFIG_TUN +@@ -10687,6 +10687,20 @@ CONFIG_TUN If you don't know what to use this for, you don't need it. diff --git a/target/linux/generic-2.4/patches/200-i4l.patch b/target/linux/generic-2.4/patches/200-i4l.patch index c7352551f7..8f7caa8069 100644 --- a/target/linux/generic-2.4/patches/200-i4l.patch +++ b/target/linux/generic-2.4/patches/200-i4l.patch @@ -14460,7 +14460,7 @@ #ifdef CONFIG_NETDEVICES case IIOCNETAIF: /* Add a network-interface */ -@@ -1654,22 +1808,12 @@ isdn_open(struct inode *ino, struct file +@@ -1657,22 +1811,12 @@ isdn_open(struct inode *ino, struct file int chidx; int retval = -ENODEV; @@ -14487,7 +14487,7 @@ } if (!dev->channels) goto out; -@@ -1692,6 +1836,9 @@ isdn_open(struct inode *ino, struct file +@@ -1695,6 +1839,9 @@ isdn_open(struct inode *ino, struct file if (drvidx < 0) goto out; isdn_lock_drivers(); @@ -14497,7 +14497,7 @@ retval = 0; goto out; } -@@ -1704,6 +1851,10 @@ isdn_open(struct inode *ino, struct file +@@ -1707,6 +1854,10 @@ isdn_open(struct inode *ino, struct file } #endif out: @@ -14508,7 +14508,7 @@ return retval; } -@@ -1712,25 +1863,11 @@ isdn_close(struct inode *ino, struct fil +@@ -1715,25 +1866,11 @@ isdn_close(struct inode *ino, struct fil { uint minor = MINOR(ino->i_rdev); @@ -14537,7 +14537,7 @@ } isdn_unlock_drivers(); if (minor <= ISDN_MINOR_BMAX) -@@ -1738,6 +1875,12 @@ isdn_close(struct inode *ino, struct fil +@@ -1741,6 +1878,12 @@ isdn_close(struct inode *ino, struct fil if (minor <= ISDN_MINOR_CTRLMAX) { if (dev->profd == current) dev->profd = NULL; @@ -14550,7 +14550,7 @@ goto out; } #ifdef CONFIG_ISDN_PPP -@@ -1746,13 +1889,19 @@ isdn_close(struct inode *ino, struct fil +@@ -1749,13 +1892,19 @@ isdn_close(struct inode *ino, struct fil #endif out: @@ -14570,7 +14570,7 @@ llseek: no_llseek, read: isdn_read, write: isdn_write, -@@ -1805,6 +1954,15 @@ isdn_get_free_channel(int usage, int l2_ +@@ -1808,6 +1957,15 @@ isdn_get_free_channel(int usage, int l2_ if (USG_NONE(dev->usage[i]) && (dev->drvmap[i] != -1)) { int d = dev->drvmap[i]; @@ -14586,7 +14586,7 @@ if ((dev->usage[i] & ISDN_USAGE_EXCLUSIVE) && ((pre_dev != d) || (pre_chan != dev->chanmap[i]))) continue; -@@ -1823,7 +1981,11 @@ isdn_get_free_channel(int usage, int l2_ +@@ -1826,7 +1984,11 @@ isdn_get_free_channel(int usage, int l2_ restore_flags(flags); return i; } else { @@ -14598,7 +14598,7 @@ dev->usage[i] &= ISDN_USAGE_EXCLUSIVE; dev->usage[i] |= usage; isdn_info_update(); -@@ -2010,7 +2172,7 @@ isdn_add_channels(driver *d, int drvidx, +@@ -2013,7 +2175,7 @@ isdn_add_channels(driver *d, int drvidx, if ((adding) && (d->rcverr)) kfree(d->rcverr); @@ -14607,7 +14607,7 @@ printk(KERN_WARNING "register_isdn: Could not alloc rcverr\n"); return -1; } -@@ -2018,7 +2180,7 @@ isdn_add_channels(driver *d, int drvidx, +@@ -2021,7 +2183,7 @@ isdn_add_channels(driver *d, int drvidx, if ((adding) && (d->rcvcount)) kfree(d->rcvcount); @@ -14616,7 +14616,7 @@ printk(KERN_WARNING "register_isdn: Could not alloc rcvcount\n"); if (!adding) kfree(d->rcverr); return -1; -@@ -2030,7 +2192,8 @@ isdn_add_channels(driver *d, int drvidx, +@@ -2033,7 +2195,8 @@ isdn_add_channels(driver *d, int drvidx, skb_queue_purge(&d->rpqueue[j]); kfree(d->rpqueue); } @@ -14626,7 +14626,7 @@ printk(KERN_WARNING "register_isdn: Could not alloc rpqueue\n"); if (!adding) { kfree(d->rcvcount); -@@ -2044,7 +2207,8 @@ isdn_add_channels(driver *d, int drvidx, +@@ -2047,7 +2210,8 @@ isdn_add_channels(driver *d, int drvidx, if ((adding) && (d->rcv_waitq)) kfree(d->rcv_waitq); @@ -14636,7 +14636,7 @@ if (!d->rcv_waitq) { printk(KERN_WARNING "register_isdn: Could not alloc rcv_waitq\n"); if (!adding) { -@@ -2068,7 +2232,9 @@ isdn_add_channels(driver *d, int drvidx, +@@ -2071,7 +2235,9 @@ isdn_add_channels(driver *d, int drvidx, if (dev->chanmap[k] < 0) { dev->chanmap[k] = j; dev->drvmap[k] = drvidx; @@ -14646,7 +14646,7 @@ break; } restore_flags(flags); -@@ -2132,6 +2298,7 @@ int DIVERT_REG_NAME(isdn_divert_if *i_di +@@ -2135,6 +2301,7 @@ int DIVERT_REG_NAME(isdn_divert_if *i_di i_div->ll_cmd = isdn_command; /* set command function */ i_div->drv_to_name = map_drvname; i_div->name_to_drv = map_namedrv; @@ -14654,7 +14654,7 @@ MOD_INC_USE_COUNT; divert_if = i_div; /* remember interface */ return(DIVERT_NO_ERR); -@@ -2169,7 +2336,7 @@ register_isdn(isdn_if * i) +@@ -2172,7 +2339,7 @@ register_isdn(isdn_if * i) printk(KERN_WARNING "register_isdn: No write routine given.\n"); return 0; } @@ -14663,7 +14663,7 @@ printk(KERN_WARNING "register_isdn: Could not alloc driver-struct\n"); return 0; } -@@ -2229,6 +2396,7 @@ isdn_getrev(const char *revision) +@@ -2232,6 +2399,7 @@ isdn_getrev(const char *revision) return rev; } @@ -14671,7 +14671,7 @@ #ifdef CONFIG_DEVFS_FS static devfs_handle_t devfs_handle; -@@ -2318,6 +2486,7 @@ static void isdn_cleanup_devfs(void) +@@ -2321,6 +2489,7 @@ static void isdn_cleanup_devfs(void) } #endif /* CONFIG_DEVFS_FS */ @@ -14679,7 +14679,7 @@ /* * Allocate and initialize all data, register modem-devices -@@ -2335,7 +2504,6 @@ static int __init isdn_init(void) +@@ -2338,7 +2507,6 @@ static int __init isdn_init(void) init_timer(&dev->timer); dev->timer.function = isdn_timer_funct; init_MUTEX(&dev->sem); @@ -14687,7 +14687,7 @@ for (i = 0; i < ISDN_MAX_CHANNELS; i++) { dev->drvmap[i] = -1; dev->chanmap[i] = -1; -@@ -2349,7 +2517,9 @@ static int __init isdn_init(void) +@@ -2352,7 +2520,9 @@ static int __init isdn_init(void) vfree(dev); return -EIO; } @@ -14697,7 +14697,7 @@ if ((i = isdn_tty_modem_init()) < 0) { printk(KERN_WARNING "isdn: Could not register tty devices\n"); if (i == -3) -@@ -2357,7 +2527,9 @@ static int __init isdn_init(void) +@@ -2360,7 +2530,9 @@ static int __init isdn_init(void) if (i <= -2) tty_unregister_driver(&dev->mdm.tty_modem); vfree(dev); @@ -14707,7 +14707,7 @@ devfs_unregister_chrdev(ISDN_MAJOR, "isdn"); return -EIO; } -@@ -2368,7 +2540,9 @@ static int __init isdn_init(void) +@@ -2371,7 +2543,9 @@ static int __init isdn_init(void) tty_unregister_driver(&dev->mdm.cua_modem); for (i = 0; i < ISDN_MAX_CHANNELS; i++) kfree(dev->mdm.info[i].xmit_buf - 4); @@ -14717,7 +14717,7 @@ devfs_unregister_chrdev(ISDN_MAJOR, "isdn"); vfree(dev); return -EIO; -@@ -2394,6 +2568,9 @@ static int __init isdn_init(void) +@@ -2397,6 +2571,9 @@ static int __init isdn_init(void) printk("\n"); #endif isdn_info_update(); @@ -14727,7 +14727,7 @@ return 0; } -@@ -2402,7 +2579,7 @@ static int __init isdn_init(void) +@@ -2405,7 +2582,7 @@ static int __init isdn_init(void) */ static void __exit isdn_exit(void) { @@ -14736,7 +14736,7 @@ int i; #ifdef CONFIG_ISDN_PPP -@@ -2436,13 +2613,18 @@ static void __exit isdn_exit(void) +@@ -2439,13 +2616,18 @@ static void __exit isdn_exit(void) printk(KERN_WARNING "isdn: controldevice busy, remove cancelled\n"); restore_flags(flags); } else { @@ -17070,20 +17070,19 @@ netif_rx(skb); return; } -@@ -2160,8 +2915,10 @@ isdn_net_find_icall(int di, int ch, int +@@ -2160,7 +2915,10 @@ isdn_net_find_icall(int di, int ch, int isdn_net_phone *n; ulong flags; - char nr[32]; + char nr[ISDN_MSNLEN]; - char *my_eaz; -- +#ifdef CONFIG_ISDN_WITH_ABC + if(dev->net_verbose > 2) + printk(KERN_DEBUG "n_fi: di=%d ch=%d idx=%d usg=0x%04X\n", di, ch, idx,dev->usage[idx]); +#endif + /* Search name in netdev-chain */ save_flags(flags); - cli(); -@@ -2180,17 +2937,15 @@ isdn_net_find_icall(int di, int ch, int +@@ -2182,17 +2940,15 @@ isdn_net_find_icall(int di, int ch, int eaz = setup->eazmsn; if (dev->net_verbose > 1) printk(KERN_INFO "isdn_net: call from %s,%d,%d -> %s\n", nr, si1, si2, eaz); @@ -17110,7 +17109,7 @@ ematch = wret = swapped = 0; #ifdef ISDN_DEBUG_NET_ICALL printk(KERN_DEBUG "n_fi: di=%d ch=%d idx=%d usg=%d\n", di, ch, idx, -@@ -2210,25 +2965,8 @@ p = dev->netdev; +@@ -2212,25 +2968,8 @@ p = dev->netdev; break; } swapped = 0; @@ -17138,7 +17137,7 @@ /* Remember if more numbers eventually can match */ if (matchret > wret) wret = matchret; -@@ -2236,17 +2974,122 @@ p = dev->netdev; +@@ -2238,17 +2977,122 @@ p = dev->netdev; printk(KERN_DEBUG "n_fi: if='%s', l.msn=%s, l.flags=%d, l.dstate=%d\n", lp->name, lp->msn, lp->flags, lp->dialstate); #endif @@ -17261,7 +17260,7 @@ if (dev->usage[idx] & ISDN_USAGE_EXCLUSIVE) { if ((lp->pre_channel != ch) || (lp->pre_device != di)) { -@@ -2375,6 +3218,12 @@ p = dev->netdev; +@@ -2377,6 +3221,12 @@ p = dev->netdev; continue; } } @@ -17274,7 +17273,7 @@ if (lp->flags & ISDN_NET_CALLBACK) { int chi; /* -@@ -2427,6 +3276,47 @@ p = dev->netdev; +@@ -2429,6 +3279,47 @@ p = dev->netdev; restore_flags(flags); return 0; } else { @@ -17322,7 +17321,7 @@ printk(KERN_DEBUG "%s: call from %s -> %s accepted\n", lp->name, nr, eaz); /* if this interface is dialing, it does it probably on a different -@@ -2516,7 +3406,11 @@ isdn_net_force_dial_lp(isdn_net_local * +@@ -2518,7 +3409,11 @@ isdn_net_force_dial_lp(isdn_net_local * lp->l3_proto, lp->pre_device, lp->pre_channel, @@ -17334,7 +17333,7 @@ ) < 0) { printk(KERN_WARNING "isdn_net_force_dial: No channel for %s\n", lp->name); restore_flags(flags); -@@ -2599,7 +3493,11 @@ isdn_net_new(char *name, struct net_devi +@@ -2601,7 +3496,11 @@ isdn_net_new(char *name, struct net_devi strcpy(netdev->local->name, " "); else strcpy(netdev->local->name, name); @@ -17346,7 +17345,7 @@ netdev->dev.priv = netdev->local; netdev->dev.init = isdn_net_init; netdev->local->p_encap = ISDN_NET_ENCAP_RAWIP; -@@ -2617,11 +3515,13 @@ isdn_net_new(char *name, struct net_devi +@@ -2619,11 +3518,13 @@ isdn_net_new(char *name, struct net_devi ((isdn_net_local *) q->priv)->slave = &(netdev->dev); } else { /* Device shall be a master */ @@ -17360,7 +17359,7 @@ if (register_netdev(&netdev->dev) != 0) { printk(KERN_WARNING "isdn_net: Could not register net-device\n"); kfree(netdev->local); -@@ -2658,6 +3558,9 @@ isdn_net_new(char *name, struct net_devi +@@ -2660,6 +3561,9 @@ isdn_net_new(char *name, struct net_devi netdev->local->hupflags = ISDN_INHUP; /* Do hangup even on incoming calls */ netdev->local->onhtime = 10; /* Default hangup-time for saving costs of those who forget configuring this */ @@ -17370,7 +17369,7 @@ netdev->local->dialmax = 1; netdev->local->flags = ISDN_NET_CBHUP | ISDN_NET_DM_MANUAL; /* Hangup before Callback, manual dial */ netdev->local->cbdelay = 25; /* Wait 5 secs before Callback */ -@@ -2831,7 +3734,6 @@ isdn_net_setcfg(isdn_net_ioctl_cfg * cfg +@@ -2833,7 +3737,6 @@ isdn_net_setcfg(isdn_net_ioctl_cfg * cfg /* If binding is exclusive, try to grab the channel */ save_flags(flags); @@ -17378,7 +17377,7 @@ if ((i = isdn_get_free_channel(ISDN_USAGE_NET, lp->l2_proto, lp->l3_proto, drvidx, chidx, lp->msn)) < 0) { -@@ -2859,6 +3761,9 @@ isdn_net_setcfg(isdn_net_ioctl_cfg * cfg +@@ -2862,6 +3765,9 @@ isdn_net_setcfg(isdn_net_ioctl_cfg * cfg lp->pre_device = drvidx; lp->pre_channel = chidx; lp->onhtime = cfg->onhtime; @@ -17388,7 +17387,7 @@ lp->charge = cfg->charge; lp->l2_proto = cfg->l2_proto; lp->l3_proto = cfg->l3_proto; -@@ -2932,6 +3837,9 @@ isdn_net_setcfg(isdn_net_ioctl_cfg * cfg +@@ -2935,6 +3841,9 @@ isdn_net_setcfg(isdn_net_ioctl_cfg * cfg } } lp->p_encap = cfg->p_encap; @@ -17398,8 +17397,8 @@ return 0; } return -ENODEV; -@@ -3007,6 +3915,9 @@ isdn_net_addphone(isdn_net_ioctl_phone * - strcpy(n->num, phone->phone); +@@ -3011,6 +3920,9 @@ isdn_net_addphone(isdn_net_ioctl_phone * + n->num[sizeof(n->num) - 1] = 0; n->next = p->local->phone[phone->outgoing & 1]; p->local->phone[phone->outgoing & 1] = n; +#ifdef CONFIG_ISDN_WITH_ABC @@ -17408,7 +17407,7 @@ return 0; } return -ENODEV; -@@ -3100,6 +4011,9 @@ isdn_net_delphone(isdn_net_ioctl_phone * +@@ -3104,6 +4016,9 @@ isdn_net_delphone(isdn_net_ioctl_phone * else p->local->phone[inout] = n->next; kfree(n); @@ -17418,7 +17417,7 @@ restore_flags(flags); return 0; } -@@ -3135,6 +4049,9 @@ isdn_net_rmallphone(isdn_net_dev * p) +@@ -3139,6 +4054,9 @@ isdn_net_rmallphone(isdn_net_dev * p) p->local->phone[i] = NULL; } p->local->dial = NULL; @@ -17428,7 +17427,7 @@ restore_flags(flags); return 0; } -@@ -3218,6 +4135,10 @@ isdn_net_realrm(isdn_net_dev * p, isdn_n +@@ -3222,6 +4140,10 @@ isdn_net_realrm(isdn_net_dev * p, isdn_n /* If no more net-devices remain, disable auto-hangup timer */ if (dev->netdev == NULL) isdn_timer_ctrl(ISDN_TIMER_NETHANGUP, 0); diff --git a/target/linux/generic-2.4/patches/202-pl2303_backport.patch b/target/linux/generic-2.4/patches/202-pl2303_backport.patch deleted file mode 100644 index 84cc006bd9..0000000000 --- a/target/linux/generic-2.4/patches/202-pl2303_backport.patch +++ /dev/null @@ -1,38 +0,0 @@ ---- a/drivers/usb/serial/pl2303.c -+++ b/drivers/usb/serial/pl2303.c -@@ -78,6 +78,11 @@ static struct usb_device_id id_table [] - { USB_DEVICE(RADIOSHACK_VENDOR_ID, RADIOSHACK_PRODUCT_ID) }, - { USB_DEVICE(DCU10_VENDOR_ID, DCU10_PRODUCT_ID) }, - { USB_DEVICE(SITECOM_VENDOR_ID, SITECOM_PRODUCT_ID) }, -+ { USB_DEVICE(ALCATEL_VENDOR_ID, ALCATEL_PRODUCT_ID) }, -+ { USB_DEVICE(SAMSUNG_VENDOR_ID, SAMSUNG_PRODUCT_ID) }, -+ { USB_DEVICE(SIEMENS_VENDOR_ID, SIEMENS_PRODUCT_ID_X65) }, -+ { USB_DEVICE(SYNTECH_VENDOR_ID, SYNTECH_PRODUCT_ID) }, -+ { USB_DEVICE(NOKIA_CA42_VENDOR_ID, NOKIA_CA42_PRODUCT_ID) }, - { } /* Terminating entry */ - }; - ---- a/drivers/usb/serial/pl2303.h -+++ b/drivers/usb/serial/pl2303.h -@@ -41,3 +41,21 @@ - - #define SITECOM_VENDOR_ID 0x6189 - #define SITECOM_PRODUCT_ID 0x2068 -+ -+/* Alcatel OT535/735 USB cable */ -+#define ALCATEL_VENDOR_ID 0x11f7 -+#define ALCATEL_PRODUCT_ID 0x02df -+ -+/* Samsung I330 phone cradle */ -+#define SAMSUNG_VENDOR_ID 0x04e8 -+#define SAMSUNG_PRODUCT_ID 0x8001 -+ -+#define SIEMENS_VENDOR_ID 0x11f5 -+#define SIEMENS_PRODUCT_ID_X65 0x0003 -+ -+#define SYNTECH_VENDOR_ID 0x0745 -+#define SYNTECH_PRODUCT_ID 0x0001 -+ -+/* Nokia CA-42 Cable */ -+#define NOKIA_CA42_VENDOR_ID 0x078b -+#define NOKIA_CA42_PRODUCT_ID 0x1234 diff --git a/target/linux/generic-2.4/patches/602-netfilter_layer7_2.21.patch b/target/linux/generic-2.4/patches/602-netfilter_layer7_2.21.patch index 11a3e1e86e..d84a2c6122 100644 --- a/target/linux/generic-2.4/patches/602-netfilter_layer7_2.21.patch +++ b/target/linux/generic-2.4/patches/602-netfilter_layer7_2.21.patch @@ -1,6 +1,6 @@ --- a/Documentation/Configure.help +++ b/Documentation/Configure.help -@@ -29207,6 +29207,18 @@ CONFIG_SOUND_WM97XX +@@ -29252,6 +29252,18 @@ CONFIG_SOUND_WM97XX If unsure, say N. diff --git a/target/linux/generic-2.4/patches/605-netfilter_TTL.patch b/target/linux/generic-2.4/patches/605-netfilter_TTL.patch index 0171505269..fe2b7ff724 100644 --- a/target/linux/generic-2.4/patches/605-netfilter_TTL.patch +++ b/target/linux/generic-2.4/patches/605-netfilter_TTL.patch @@ -1,8 +1,8 @@ --- a/Documentation/Configure.help +++ b/Documentation/Configure.help -@@ -3209,6 +3209,15 @@ CONFIG_IP_NF_TARGET_LOG +@@ -3220,6 +3220,15 @@ CONFIG_IP_NF_TARGET_CLASSIFY If you want to compile it as a module, say M here and read - . If unsure, say `N'. + Documentation/modules.txt. If unsure, say `N'. +TTL target support +CONFIG_IP_NF_TARGET_TTL @@ -42,8 +42,8 @@ +#endif --- a/net/ipv4/netfilter/Config.in +++ b/net/ipv4/netfilter/Config.in -@@ -125,6 +125,7 @@ if [ "$CONFIG_IP_NF_IPTABLES" != "n" ]; - dep_tristate ' MARK target support' CONFIG_IP_NF_TARGET_MARK $CONFIG_IP_NF_MANGLE +@@ -126,6 +126,7 @@ if [ "$CONFIG_IP_NF_IPTABLES" != "n" ]; + dep_tristate ' CLASSIFY target support (EXPERIMENTAL)' CONFIG_IP_NF_TARGET_CLASSIFY $CONFIG_IP_NF_MANGLE fi dep_tristate ' LOG target support' CONFIG_IP_NF_TARGET_LOG $CONFIG_IP_NF_IPTABLES + dep_tristate ' TTL target support' CONFIG_IP_NF_TARGET_TTL $CONFIG_IP_NF_IPTABLES @@ -165,7 +165,7 @@ +module_exit(fini); --- a/net/ipv4/netfilter/Makefile +++ b/net/ipv4/netfilter/Makefile -@@ -109,6 +109,7 @@ obj-$(CONFIG_IP_NF_TARGET_MASQUERADE) += +@@ -110,6 +110,7 @@ obj-$(CONFIG_IP_NF_TARGET_MASQUERADE) += obj-$(CONFIG_IP_NF_TARGET_REDIRECT) += ipt_REDIRECT.o obj-$(CONFIG_IP_NF_NAT_SNMP_BASIC) += ip_nat_snmp_basic.o obj-$(CONFIG_IP_NF_TARGET_LOG) += ipt_LOG.o diff --git a/target/linux/generic-2.4/patches/606-netfilter_NETMAP.patch b/target/linux/generic-2.4/patches/606-netfilter_NETMAP.patch index f7be0727ef..0dc2fba394 100644 --- a/target/linux/generic-2.4/patches/606-netfilter_NETMAP.patch +++ b/target/linux/generic-2.4/patches/606-netfilter_NETMAP.patch @@ -145,7 +145,7 @@ +module_exit(fini); --- a/net/ipv4/netfilter/Makefile +++ b/net/ipv4/netfilter/Makefile -@@ -107,6 +107,7 @@ obj-$(CONFIG_IP_NF_TARGET_DSCP) += ipt_D +@@ -108,6 +108,7 @@ obj-$(CONFIG_IP_NF_TARGET_DSCP) += ipt_D obj-$(CONFIG_IP_NF_TARGET_MARK) += ipt_MARK.o obj-$(CONFIG_IP_NF_TARGET_MASQUERADE) += ipt_MASQUERADE.o obj-$(CONFIG_IP_NF_TARGET_REDIRECT) += ipt_REDIRECT.o diff --git a/target/linux/generic-2.4/patches/607-netfilter_connmark.patch b/target/linux/generic-2.4/patches/607-netfilter_connmark.patch index bafdfffc84..665e46909b 100644 --- a/target/linux/generic-2.4/patches/607-netfilter_connmark.patch +++ b/target/linux/generic-2.4/patches/607-netfilter_connmark.patch @@ -81,9 +81,9 @@ fi if [ "$CONFIG_EXPERIMENTAL" = "y" ]; then dep_tristate ' Unclean match support (EXPERIMENTAL)' CONFIG_IP_NF_MATCH_UNCLEAN $CONFIG_IP_NF_IPTABLES -@@ -125,6 +129,9 @@ if [ "$CONFIG_IP_NF_IPTABLES" != "n" ]; - +@@ -126,6 +130,9 @@ if [ "$CONFIG_IP_NF_IPTABLES" != "n" ]; dep_tristate ' MARK target support' CONFIG_IP_NF_TARGET_MARK $CONFIG_IP_NF_MANGLE + dep_tristate ' CLASSIFY target support (EXPERIMENTAL)' CONFIG_IP_NF_TARGET_CLASSIFY $CONFIG_IP_NF_MANGLE fi + if [ "$CONFIG_IP_NF_CONNTRACK_MARK" != "n" ]; then + dep_tristate ' CONNMARK target support' CONFIG_IP_NF_TARGET_CONNMARK $CONFIG_IP_NF_IPTABLES @@ -101,7 +101,7 @@ obj-$(CONFIG_IP_NF_MATCH_CONNTRACK) += ipt_conntrack.o obj-$(CONFIG_IP_NF_MATCH_UNCLEAN) += ipt_unclean.o obj-$(CONFIG_IP_NF_MATCH_TCPMSS) += ipt_tcpmss.o -@@ -110,6 +111,7 @@ obj-$(CONFIG_IP_NF_TARGET_REDIRECT) += i +@@ -111,6 +112,7 @@ obj-$(CONFIG_IP_NF_TARGET_REDIRECT) += i obj-$(CONFIG_IP_NF_TARGET_NETMAP) += ipt_NETMAP.o obj-$(CONFIG_IP_NF_NAT_SNMP_BASIC) += ip_nat_snmp_basic.o obj-$(CONFIG_IP_NF_TARGET_LOG) += ipt_LOG.o diff --git a/target/linux/generic-2.4/patches/608-netfilter_ipset.patch b/target/linux/generic-2.4/patches/608-netfilter_ipset.patch index df2df33ae7..0a4466daa3 100644 --- a/target/linux/generic-2.4/patches/608-netfilter_ipset.patch +++ b/target/linux/generic-2.4/patches/608-netfilter_ipset.patch @@ -1,8 +1,8 @@ --- a/Documentation/Configure.help +++ b/Documentation/Configure.help -@@ -3220,6 +3220,75 @@ CONFIG_IP_NF_TARGET_LOG +@@ -3231,6 +3231,75 @@ CONFIG_IP_NF_TARGET_CLASSIFY If you want to compile it as a module, say M here and read - . If unsure, say `N'. + Documentation/modules.txt. If unsure, say `N'. +IP set support +CONFIG_IP_NF_SET diff --git a/target/linux/generic-2.4/patches/610-netfilter_connbytes.patch b/target/linux/generic-2.4/patches/610-netfilter_connbytes.patch index 99f81c1665..b5ca3b6de7 100644 --- a/target/linux/generic-2.4/patches/610-netfilter_connbytes.patch +++ b/target/linux/generic-2.4/patches/610-netfilter_connbytes.patch @@ -100,7 +100,7 @@ if (test_bit(IPS_ASSURED_BIT, &conntrack->status)) len += sprintf(buffer + len, "[ASSURED] "); len += sprintf(buffer + len, "use=%u ", -@@ -478,7 +494,7 @@ EXPORT_SYMBOL(ip_conntrack_get); +@@ -481,7 +497,7 @@ EXPORT_SYMBOL(ip_conntrack_get); EXPORT_SYMBOL(ip_conntrack_helper_register); EXPORT_SYMBOL(ip_conntrack_helper_unregister); EXPORT_SYMBOL(ip_ct_iterate_cleanup); diff --git a/target/linux/generic-2.4/patches/611-netfilter_condition.patch b/target/linux/generic-2.4/patches/611-netfilter_condition.patch index de76f876d4..6fe2b3c115 100644 --- a/target/linux/generic-2.4/patches/611-netfilter_condition.patch +++ b/target/linux/generic-2.4/patches/611-netfilter_condition.patch @@ -15,7 +15,7 @@ conntrack match support CONFIG_IP_NF_MATCH_CONNTRACK This is a general conntrack match module, a superset of the state match. -@@ -3354,6 +3362,14 @@ CONFIG_IP6_NF_MATCH_MARK +@@ -3365,6 +3373,14 @@ CONFIG_IP6_NF_MATCH_MARK If you want to compile it as a module, say M here and read . If unsure, say `N'. diff --git a/target/linux/generic-2.4/patches/616-netfilter_imq.patch b/target/linux/generic-2.4/patches/616-netfilter_imq.patch index b8c0523df1..45f4d9d24c 100644 --- a/target/linux/generic-2.4/patches/616-netfilter_imq.patch +++ b/target/linux/generic-2.4/patches/616-netfilter_imq.patch @@ -23,7 +23,7 @@ MARK target support CONFIG_IP_NF_TARGET_MARK This option adds a `MARK' target, which allows you to create rules -@@ -9919,6 +9935,20 @@ CONFIG_BONDING +@@ -9931,6 +9947,20 @@ CONFIG_BONDING say M here and read . The module will be called bonding.o. @@ -510,12 +510,12 @@ dep_tristate ' MARK target support' CONFIG_IP_NF_TARGET_MARK $CONFIG_IP_NF_MANGLE + dep_tristate ' IMQ target support' CONFIG_IP_NF_TARGET_IMQ $CONFIG_IP_NF_MANGLE + dep_tristate ' CLASSIFY target support (EXPERIMENTAL)' CONFIG_IP_NF_TARGET_CLASSIFY $CONFIG_IP_NF_MANGLE fi if [ "$CONFIG_IP_NF_CONNTRACK_MARK" != "n" ]; then - dep_tristate ' CONNMARK target support' CONFIG_IP_NF_TARGET_CONNMARK $CONFIG_IP_NF_IPTABLES --- a/net/ipv4/netfilter/Makefile +++ b/net/ipv4/netfilter/Makefile -@@ -138,6 +138,7 @@ obj-$(CONFIG_IP_NF_TARGET_TOS) += ipt_TO +@@ -139,6 +139,7 @@ obj-$(CONFIG_IP_NF_TARGET_TOS) += ipt_TO obj-$(CONFIG_IP_NF_TARGET_ECN) += ipt_ECN.o obj-$(CONFIG_IP_NF_TARGET_DSCP) += ipt_DSCP.o obj-$(CONFIG_IP_NF_TARGET_MARK) += ipt_MARK.o diff --git a/target/linux/generic-2.4/patches/619-netfilter_classify.patch b/target/linux/generic-2.4/patches/619-netfilter_classify.patch deleted file mode 100644 index 7003537d2e..0000000000 --- a/target/linux/generic-2.4/patches/619-netfilter_classify.patch +++ /dev/null @@ -1,116 +0,0 @@ ---- /dev/null -+++ b/include/linux/netfilter_ipv4/ipt_CLASSIFY.h -@@ -0,0 +1,8 @@ -+#ifndef _IPT_CLASSIFY_H -+#define _IPT_CLASSIFY_H -+ -+struct ipt_classify_target_info { -+ u_int32_t priority; -+}; -+ -+#endif /*_IPT_CLASSIFY_H */ ---- a/net/ipv4/netfilter/Config.in -+++ b/net/ipv4/netfilter/Config.in -@@ -171,6 +171,7 @@ if [ "$CONFIG_IP_NF_IPTABLES" != "n" ]; - dep_tristate ' DSCP target support' CONFIG_IP_NF_TARGET_DSCP $CONFIG_IP_NF_MANGLE - - dep_tristate ' MARK target support' CONFIG_IP_NF_TARGET_MARK $CONFIG_IP_NF_MANGLE -+ dep_tristate ' CLASSIFY target support (EXPERIMENTAL)' CONFIG_IP_NF_TARGET_CLASSIFY $CONFIG_IP_NF_MANGLE - dep_tristate ' IMQ target support' CONFIG_IP_NF_TARGET_IMQ $CONFIG_IP_NF_MANGLE - fi - if [ "$CONFIG_IP_NF_CONNTRACK_MARK" != "n" ]; then ---- /dev/null -+++ b/net/ipv4/netfilter/ipt_CLASSIFY.c -@@ -0,0 +1,82 @@ -+/* -+ * This is a module which is used for setting the skb->priority field -+ * of an skb for qdisc classification. -+ */ -+ -+#include -+#include -+#include -+#include -+ -+#include -+#include -+ -+MODULE_AUTHOR("Patrick McHardy "); -+MODULE_LICENSE("GPL"); -+MODULE_DESCRIPTION("iptables qdisc classification target module"); -+ -+static unsigned int -+target(struct sk_buff **pskb, -+ unsigned int hooknum, -+ const struct net_device *in, -+ const struct net_device *out, -+ const void *targinfo, -+ void *userinfo) -+{ -+ const struct ipt_classify_target_info *clinfo = targinfo; -+ -+ if((*pskb)->priority != clinfo->priority) { -+ (*pskb)->priority = clinfo->priority; -+ (*pskb)->nfcache |= NFC_ALTERED; -+ } -+ -+ return IPT_CONTINUE; -+} -+ -+static int -+checkentry(const char *tablename, -+ const struct ipt_entry *e, -+ void *targinfo, -+ unsigned int targinfosize, -+ unsigned int hook_mask) -+{ -+ if (targinfosize != IPT_ALIGN(sizeof(struct ipt_classify_target_info))){ -+ printk(KERN_ERR "CLASSIFY: invalid size (%u != %u).\n", -+ targinfosize, -+ IPT_ALIGN(sizeof(struct ipt_classify_target_info))); -+ return 0; -+ } -+ -+ if (hook_mask & ~(1 << NF_IP_POST_ROUTING)) { -+ printk(KERN_ERR "CLASSIFY: only valid in POST_ROUTING.\n"); -+ return 0; -+ } -+ -+ if (strcmp(tablename, "mangle") != 0) { -+ printk(KERN_WARNING "CLASSIFY: can only be called from " -+ "\"mangle\" table, not \"%s\".\n", -+ tablename); -+ return 0; -+ } -+ -+ return 1; -+} -+ -+static struct ipt_target ipt_classify_reg -+= { { NULL, NULL }, "CLASSIFY", target, checkentry, NULL, THIS_MODULE }; -+ -+static int __init init(void) -+{ -+ if (ipt_register_target(&ipt_classify_reg)) -+ return -EINVAL; -+ -+ return 0; -+} -+ -+static void __exit fini(void) -+{ -+ ipt_unregister_target(&ipt_classify_reg); -+} -+ -+module_init(init); -+module_exit(fini); ---- a/net/ipv4/netfilter/Makefile -+++ b/net/ipv4/netfilter/Makefile -@@ -133,6 +133,7 @@ obj-$(CONFIG_IP_NF_MATCH_LAYER7) += ipt_ - - # targets - obj-$(CONFIG_IP_NF_TARGET_REJECT) += ipt_REJECT.o -+obj-$(CONFIG_IP_NF_TARGET_CLASSIFY) += ipt_CLASSIFY.o - obj-$(CONFIG_IP_NF_TARGET_MIRROR) += ipt_MIRROR.o - obj-$(CONFIG_IP_NF_TARGET_TOS) += ipt_TOS.o - obj-$(CONFIG_IP_NF_TARGET_ECN) += ipt_ECN.o diff --git a/target/linux/generic-2.4/patches/621-netfilter_random.patch b/target/linux/generic-2.4/patches/621-netfilter_random.patch index 2ede6432b9..2dcd728721 100644 --- a/target/linux/generic-2.4/patches/621-netfilter_random.patch +++ b/target/linux/generic-2.4/patches/621-netfilter_random.patch @@ -24,7 +24,7 @@ TCPMSS match support CONFIG_IP_NF_MATCH_TCPMSS This option adds a `tcpmss' match, which allows you to examine the -@@ -3376,6 +3386,14 @@ CONFIG_IP6_NF_MATCH_MAC +@@ -3387,6 +3397,14 @@ CONFIG_IP6_NF_MATCH_MAC If you want to compile it as a module, say M here and read . If unsure, say `N'. diff --git a/target/linux/generic-2.4/patches/622-tc_esfq.patch b/target/linux/generic-2.4/patches/622-tc_esfq.patch index 7889d7fd93..7a6fb63380 100644 --- a/target/linux/generic-2.4/patches/622-tc_esfq.patch +++ b/target/linux/generic-2.4/patches/622-tc_esfq.patch @@ -1,6 +1,6 @@ --- a/Documentation/Configure.help +++ b/Documentation/Configure.help -@@ -11153,6 +11153,24 @@ CONFIG_NET_SCH_HFSC +@@ -11165,6 +11165,24 @@ CONFIG_NET_SCH_HFSC whenever you want). If you want to compile it as a module, say M here and read . diff --git a/target/linux/generic-2.4/patches/803-mii_ioctl.patch b/target/linux/generic-2.4/patches/803-mii_ioctl.patch deleted file mode 100644 index 86b0309d4a..0000000000 --- a/target/linux/generic-2.4/patches/803-mii_ioctl.patch +++ /dev/null @@ -1,63 +0,0 @@ ---- a/include/linux/mii.h -+++ b/include/linux/mii.h -@@ -9,7 +9,6 @@ - #define __LINUX_MII_H__ - - #include --#include - - /* Generic MII registers. */ - -@@ -104,6 +103,19 @@ - #define NWAYTEST_LOOPBACK 0x0100 /* Enable loopback for N-way */ - #define NWAYTEST_RESV2 0xfe00 /* Unused... */ - -+/* This structure is used in all SIOCxMIIxxx ioctl calls */ -+struct mii_ioctl_data { -+ __u16 phy_id; -+ __u16 reg_num; -+ __u16 val_in; -+ __u16 val_out; -+}; -+ -+#ifdef __KERNEL__ -+ -+#include -+ -+struct ethtool_cmd; - - struct mii_if_info { - int phy_id; -@@ -119,9 +131,6 @@ struct mii_if_info { - void (*mdio_write) (struct net_device *dev, int phy_id, int location, int val); - }; - --struct ethtool_cmd; --struct mii_ioctl_data; -- - extern int mii_link_ok (struct mii_if_info *mii); - extern int mii_nway_restart (struct mii_if_info *mii); - extern int mii_ethtool_gset(struct mii_if_info *mii, struct ethtool_cmd *ecmd); -@@ -136,15 +145,6 @@ extern int generic_mii_ioctl(struct mii_ - - - --/* This structure is used in all SIOCxMIIxxx ioctl calls */ --struct mii_ioctl_data { -- u16 phy_id; -- u16 reg_num; -- u16 val_in; -- u16 val_out; --}; -- -- - static inline struct mii_ioctl_data *if_mii(struct ifreq *rq) - { - return (struct mii_ioctl_data *) &rq->ifr_ifru; -@@ -202,5 +202,5 @@ static inline unsigned int mii_duplex (u - return 0; - } - -- -+#endif /* __KERNEL__ */ - #endif /* __LINUX_MII_H__ */ diff --git a/target/linux/generic-2.4/patches/900-CVE-2008-2136.patch b/target/linux/generic-2.4/patches/900-CVE-2008-2136.patch deleted file mode 100644 index 8e8be488df..0000000000 --- a/target/linux/generic-2.4/patches/900-CVE-2008-2136.patch +++ /dev/null @@ -1,26 +0,0 @@ -Backport of: - -From: David S. Miller -Date: Fri, 9 May 2008 06:40:26 +0000 (-0700) -Subject: sit: Add missing kfree_skb() on pskb_may_pull() failure. -X-Git-Tag: v2.6.26-rc2~19^2 -X-Git-Url: http://git.kernel.org/?p=linux%2Fkernel%2Fgit%2Ftorvalds%2Flinux-2.6.git;a=commitdiff_plain;h=36ca34cc3b8335eb1fe8bd9a1d0a2592980c3f02 - -sit: Add missing kfree_skb() on pskb_may_pull() failure. - -Noticed by Paul Marks . - -Signed-off-by: David S. Miller ---- a/net/ipv6/sit.c -+++ b/net/ipv6/sit.c -@@ -410,9 +410,9 @@ int ipip6_rcv(struct sk_buff *skb) - } - - icmp_send(skb, ICMP_DEST_UNREACH, ICMP_PROT_UNREACH, 0); -- kfree_skb(skb); - read_unlock(&ipip6_lock); - out: -+ kfree_skb(skb); - return 0; - } - -- 2.30.2