summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* [PATCH] Kconfig fix (VGA console on arm/versatile)Al Viro2005-08-241-1/+1
| | | | | | | VGA console doesn't exist (or build) on arm/versatile; dependency fixed. Signed-off-by: Al Viro <viro@parcelfarce.linux.theplanet.co.uk> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [PATCH] Kconfig fix (amba on arm/versatile)Al Viro2005-08-241-1/+1
| | | | | | | AMBA_PL010 is broken on arm/versatile; marked as such Signed-off-by: Al Viro <viro@parcelfarce.linux.theplanet.co.uk> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [PATCH] Kconfig fix (acornscsi)Al Viro2005-08-241-1/+1
| | | | | | | acornscsi had been broken for a long time; marked as such Signed-off-by: Al Viro <viro@parcelfarce.linux.theplanet.co.uk> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [PATCH] Kconfig fix (M32R_PLDSIO dependecies)Al Viro2005-08-241-1/+1
| | | | | | | | M32R_PLDSIO depends on subarchitecture providing PLD_ESIO0CR and friends. Signed-off-by: Al Viro <viro@parcelfarce.linux.theplanet.co.uk> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [PATCH] Kconfig fix (parport_pc on m32r)Al Viro2005-08-241-1/+1
| | | | | | | parport_pc shouldn't be picked on m32r (no asm/parport.h, for starters) Signed-off-by: Al Viro <viro@parcelfarce.linux.theplanet.co.uk> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [PATCH] Kconfig fix (airo_cs on m32r)Al Viro2005-08-241-1/+1
| | | | | | | | | airo_cs is broken on m32r; marked as such. [Proper fix would involve separating PCI-dependent parts and making sure they don't get in the way _and_ arranging for asm/scatterlist.h getting picked on m32r] Signed-off-by: Al Viro <viro@parcelfarce.linux.theplanet.co.uk> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [PATCH] Kconfig fix (tms380tr and ISA_DMA_API)Al Viro2005-08-241-1/+1
| | | | | | | | ISA parts of tms380tr are using ISA DMA helpers and should depend on ISA_DMA_API. Signed-off-by: Al Viro <viro@parcelfarce.linux.theplanet.co.uk> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [PATCH] Kconfig fix (arv)Al Viro2005-08-241-1/+1
| | | | | | | | arv uses constants provided only by include/asm-m32r/m32700ut/m32700ut_lan.h It won't build for any subarchitecture other than M32700UT; marked as such. Signed-off-by: Al Viro <viro@parcelfarce.linux.theplanet.co.uk> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [PATCH] Kconfig fix (infiniband and PCI)Al Viro2005-08-241-0/+1
| | | | | | | | infiniband uses PCI helpers all over the place (including the core parts) and won't build without PCI. Signed-off-by: Al Viro <viro@parcelfarce.linux.theplanet.co.uk> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [PATCH] Kconfig fix (DEBUG_PAGEALLOC on m32r)Al Viro2005-08-241-1/+1
| | | | | | | | | DEBUG_PAGEALLOC is broken on m32r - the option had been blindly copied from i386; kernel_map_pages() had not and that's what is needed for DEBUG_PAGEALLOC to work (or link, while we are at it). Signed-off-by: Al Viro <viro@parcelfarce.linux.theplanet.co.uk> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [PATCH] Kconfig fix (PCI on m32r)Al Viro2005-08-241-0/+1
| | | | | | | PCI support is broken on m32r (pci_map_... missing, etc.); marked as such Signed-off-by: Al Viro <viro@parcelfarce.linux.theplanet.co.uk> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [PATCH] Kconfig fix (PMAC_BACKLIGHT on ppc64)Al Viro2005-08-241-1/+1
| | | | | | | PMAC_BACKLIGHT is broken on ppc64; marked as such Signed-off-by: Al Viro <viro@parcelfarce.linux.theplanet.co.uk> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [PATCH] Kconfig fix (HISAX_FRITZPCI on ppc64)Al Viro2005-08-241-0/+1
| | | | | | | HISAX_FRITZPCI is broken on ppc64; marked as such Signed-off-by: Al Viro <viro@parcelfarce.linux.theplanet.co.uk> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [PATCH] Kconfig fix (m32r genrtc)Al Viro2005-08-241-1/+1
| | | | | | | | genrtc is not for m32r; marked as such. Probably ought to put that into arch/* - list of "don't build it on <platform>" is getting too long. Signed-off-by: Al Viro <viro@parcelfarce.linux.theplanet.co.uk> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [PATCH] Kconfig fix (m32r NUMA)Al Viro2005-08-241-1/+1
| | | | | | | NUMA is broken on m32r; marked as such Signed-off-by: Al Viro <viro@parcelfarce.linux.theplanet.co.uk> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [PATCH] Kconfig fix (ISA_DMA_API and sound/*)Al Viro2005-08-247-8/+10
| | | | | | | | fixed kconfig dependencies on ISA_DMA_API for parts of sound/* that rely on it. Signed-off-by: Al Viro <viro@parcelfarce.linux.theplanet.co.uk> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [PATCH] Kconfig fix (epca on 64bit)Al Viro2005-08-241-1/+1
| | | | | | | epca is broken on 64bit; marked as such Signed-off-by: Al Viro <viro@parcelfarce.linux.theplanet.co.uk> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [PATCH] Kconfig fix (arm SMP)Al Viro2005-08-241-1/+1
| | | | | | | SMP is broken on arm; marked as such Signed-off-by: Al Viro <viro@parcelfarce.linux.theplanet.co.uk> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [PATCH] Kconfig fix (alpha NUMA)Al Viro2005-08-241-1/+1
| | | | | | | NUMA is broken on alpha; marked as such Signed-off-by: Al Viro <viro@parcelfarce.linux.theplanet.co.uk> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [PATCH] zd1201 kmalloc size fixAlexey Dobriyan2005-08-231-2/+1Star
| | | | | | | | | | | | Noticed by Coverity checker. (akpm: I stole this from Greg's tree and used the (IMO) tidier sizeof(*p) construct). Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [PATCH] md: make sure resync gets started when array starts.NeilBrown2005-08-231-4/+3Star
| | | | | | | | | | | | | We weren't actually waking up the md thread after setting MD_RECOVERY_NEEDED when assembling an array, so it is possible to lose a race and not actually start resync. So add a call to md_wakeup_thread, and while we are at it, remove all the "if (mddev->thread)" guards as md_wake_thread does its own checking. Signed-off-by: Neil Brown <neilb@cse.unsw.edu.au> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [PATCH] preempt race in getppidDavid Meybohm2005-08-231-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | With CONFIG_PREEMPT && !CONFIG_SMP, it's possible for sys_getppid to return a bogus value if the parent's task_struct gets reallocated after current->group_leader->real_parent is read: asmlinkage long sys_getppid(void) { int pid; struct task_struct *me = current; struct task_struct *parent; parent = me->group_leader->real_parent; RACE HERE => for (;;) { pid = parent->tgid; #ifdef CONFIG_SMP { struct task_struct *old = parent; /* * Make sure we read the pid before re-reading the * parent pointer: */ smp_rmb(); parent = me->group_leader->real_parent; if (old != parent) continue; } #endif break; } return pid; } If the process gets preempted at the indicated point, the parent process can go ahead and call exit() and then get wait()'d on to reap its task_struct. When the preempted process gets resumed, it will not do any further checks of the parent pointer on !CONFIG_SMP: it will read the bad pid and return. So, the same algorithm used when SMP is enabled should be used when preempt is enabled, which will recheck ->real_parent in this case. Signed-off-by: David Meybohm <dmeybohmlkml@bellsouth.net> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* Merge master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6Linus Torvalds2005-08-2318-112/+150
|\
| * [ROSE]: Fix missing unlocks in rose_route_frame()David S. Miller2005-08-231-2/+4
| | | | | | | | | | | | Noticed by Coverity checker. Signed-off-by: David S. Miller <davem@davemloft.net>
| * [TCP]: Document non-trivial locking path in tcp_v{4,6}_get_port().David S. Miller2005-08-232-4/+14
| | | | | | | | | | | | | | | | This trips up a lot of folks reading this code. Put an unlikely() around the port-exhaustion test for good measure. Signed-off-by: David S. Miller <davem@davemloft.net>
| * [TCP]: Unconditionally clear TCP_NAGLE_PUSH in skb_entail().David S. Miller2005-08-231-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Intention of this bit is to force pushing of the existing send queue when TCP_CORK or TCP_NODELAY state changes via setsockopt(). But it's easy to create a situation where the bit never clears. For example, if the send queue starts empty: 1) set TCP_NODELAY 2) clear TCP_NODELAY 3) set TCP_CORK 4) do small write() The current code will leave TCP_NAGLE_PUSH set after that sequence. Unconditionally clearing the bit when new data is added via skb_entail() solves the problem. Signed-off-by: David S. Miller <davem@davemloft.net>
| * [PKT_SCHED]: Fix missing qdisc_destroy() in qdisc_create_dflt()Thomas Graf2005-08-231-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | qdisc_create_dflt() is missing to destroy the newly allocated default qdisc if the initialization fails resulting in leaks of all kinds. The only caller in mainline which may trigger this bug is sch_tbf.c in tbf_create_dflt_qdisc(). Note: qdisc_create_dflt() doesn't fulfill the official locking requirements of qdisc_destroy() but since the qdisc could never be seen by the outside world this doesn't matter and it can stay as-is until the locking of pkt_sched is cleaned up. Signed-off-by: Thomas Graf <tgraf@suug.ch> Signed-off-by: David S. Miller <davem@davemloft.net>
| * [SCTP]: Add SENTINEL to SCTP MIB statsVlad Yasevich2005-08-231-0/+1
| | | | | | | | | | | | | | | | | | Add SNMP_MIB_SENTINEL to the definition of the sctp_snmp_list so that the output routine in proc correctly terminates. This was causing some problems running on ia64 systems. Signed-off-by: Vlad Yasevich <vladislav.yasevich@hp.com> Signed-off-by: David S. Miller <davem@davemloft.net>
| * [AX25]: UID fixesRalf Baechle2005-08-236-77/+100
| | | | | | | | | | | | | | | | | | | | | | | | o Brown paperbag bug - ax25_findbyuid() was always returning a NULL pointer as the result. Breaks ROSE completly and AX.25 if UID policy set to deny. o While the list structure of AX.25's UID to callsign mapping table was properly protected by a spinlock, it's elements were not refcounted resulting in a race between removal and usage of an element. Signed-off-by: Ralf Baechle DL5RB <ralf@linux-mips.org> Signed-off-by: David S. Miller <davem@davemloft.net>
| * [NET]: Fix socket bitop damageRalf Baechle2005-08-234-18/+8Star
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The socket flag cleanups that went into 2.6.12-rc1 are basically oring the flags of an old socket into the socket just being created. Unfortunately that one was just initialized by sock_init_data(), so already has SOCK_ZAPPED set. As the result zapped sockets are created and all incoming connection will fail due to this bug which again was carefully replicated to at least AX.25, NET/ROM or ROSE. In order to keep the abstraction alive I've introduced sock_copy_flags() to copy the socket flags from one sockets to another and used that instead of the bitwise copy thing. Anyway, the idea here has probably been to copy all flags, so sock_copy_flags() should be the right thing. With this the ham radio protocols are usable again, so I hope this will make it into 2.6.13. Signed-off-by: Ralf Baechle DL5RB <ralf@linux-mips.org> Signed-off-by: David S. Miller <davem@davemloft.net>
| * [NETFILTER]: Fix HW checksum handling in ip_queue/ip6_queuePatrick McHardy2005-08-232-0/+14
| | | | | | | | | | | | | | | | The checksum needs to be filled in on output, after mangling a packet ip_summed needs to be reset. Signed-off-by: Patrick McHardy <kaber@trash.net> Signed-off-by: David S. Miller <davem@davemloft.net>
| * [IPV4]: Fix negative timer loop with lots of ipv4 peers.Dave Johnson2005-08-231-4/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | From: Dave Johnson <djohnson+linux-kernel@sw.starentnetworks.com> Found this bug while doing some scaling testing that created 500K inet peers. peer_check_expire() in net/ipv4/inetpeer.c isn't using inet_peer_gc_mintime correctly and will end up creating an expire timer with less than the minimum duration, and even zero/negative if enough active peers are present. If >65K peers, the timer will be less than inet_peer_gc_mintime, and with >70K peers, the timer duration will reach zero and go negative. The timer handler will continue to schedule another zero/negative timer in a loop until peers can be aged. This can continue for at least a few minutes or even longer if the peers remain active due to arriving packets while the loop is occurring. Bug is present in both 2.4 and 2.6. Same patch will apply to both just fine. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: David S. Miller <davem@davemloft.net>
| * [RPC]: Kill bogus kmap in krb5Herbert Xu2005-08-231-2/+0Star
| | | | | | | | | | | | | | | | | | | | While I was going through the crypto users recently, I noticed this bogus kmap in sunrpc. It's totally unnecessary since the crypto layer will do its own kmap before touching the data. Besides, the kmap is throwing the return value away. Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au> Signed-off-by: David S. Miller <davem@davemloft.net>
| * [TCP]: Do TSO deferral even if tail SKB can go out now.Dmitry Yusupov2005-08-231-4/+0Star
| | | | | | | | | | | | | | | | | | | | | | | | If the tail SKB fits into the window, it is still benefitical to defer until the goal percentage of the window is available. This give the application time to feed more data into the send queue and thus results in larger TSO frames going out. Patch from Dmitry Yusupov <dima@neterion.com>. Signed-off-by: David S. Miller <davem@davemloft.net>
* | [IA64] Fix simulator boot (for real this time).Peter Chubb2005-08-231-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | Thanks to Stephane, we've now worked out the real cause of the `Linux will not boot on simulator' problem. Turns out it's a stack overflow because the stack pointer wasn't being initialised properly in boot_head.S (it was being initialised to the lowest instead of the highest address of the stack, so the first push started to overwrite data in the BSS). Signed-off-by: Peter Chubb <peterc@gelato.unsw.edu.au> Signed-off-by: Tony Luck <tony.luck@intel.com>
* | [IA64] backout incorrect fix for simulator boot issueTony Luck2005-08-231-5/+1Star
| | | | | | | | | | | | | | Earlier fix in 4aec0fb12267718c750475f3404337ad13caa8f5 just masked the real problem. Signed-off-by: Tony Luck <tony.luck@intel.com>
* | Pull prarit-bus-sysdata into release branchTony Luck2005-08-231-8/+10
|\ \
| * | [IA64]: SN fix bus->sysdata pointer and memory cleanupsPrarit Bhargava2005-08-171-8/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The main issue is that bus_fixup calls may potentially call functions that require a valid bus->sysdata pointer. Since this is the case, we must set the bus->sysdata pointer before calling the bus_fixup functions. The remaining changes are simple fixes to make sure memory is cleaned up in the function. Signed-off-by: Prarit Bhargava <prarit@sgi.com> Signed-off-by: Tony Luck <tony.luck@intel.com>
* | | Auto-update from upstreamTony Luck2005-08-2276-530/+714
|\ \ \ | | |/ | |/|
| * | Don't allow normal users to set idle IO priorityLinus Torvalds2005-08-211-0/+2
| | | | | | | | | | | | | | | | | | It has all the normal priority inversion problems. Signed-off-by: Linus Torvalds <torvalds@osdl.org>
| * | [NETFILTER]: Fix HW checksum handling in TCPMSS targetPatrick McHardy2005-08-211-3/+4
| | | | | | | | | | | | | | | | | | | | | Most importantly, remove bogus BUG() in receive path. Signed-off-by: Patrick McHardy <kaber@trash.net> Signed-off-by: David S. Miller <davem@davemloft.net>
| * | [NETFILTER]: Fix HW checksum handling in ECN targetPatrick McHardy2005-08-211-4/+5
| | | | | | | | | | | | | | | Signed-off-by: Patrick McHardy <kaber@trash.net> Signed-off-by: David S. Miller <davem@davemloft.net>
| * | [NETFILTER]: Fix ECN target TCP markingPatrick McHardy2005-08-211-4/+4
| | | | | | | | | | | | | | | | | | | | | An incorrect check made it bail out before doing anything. Signed-off-by: Patrick McHardy <kaber@trash.net> Signed-off-by: David S. Miller <davem@davemloft.net>
| * | [PATCH] freevxfs: fix breakage introduced by symlink fixesAlexey Dobriyan2005-08-201-1/+1
| | | | | | | | | | | | | | | Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
| * | befs: fix up missed follow_link declaration changeLinus Torvalds2005-08-201-1/+1
| | | | | | | | | | | | | | | We'd updated the prototype and the return value, but not the function declaration itself.
| * | [PATCH] x86_64: Fix race in TSC synchronizationAndi Kleen2005-08-201-7/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Plug a race in TSC synchronization We need to do tsc_sync_wait() before the CPU is set online to prevent multiple CPUs from doing it in parallel - which won't work because TSC sync has global unprotected state. Signed-off-by: Andi Kleen <ak@suse.de> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
| * | [PATCH] x86_64: Don't print exceptions for ltraceAndi Kleen2005-08-201-3/+1Star
| | | | | | | | | | | | | | | | | | | | | Don't printk exceptions for ltrace Signed-off-by: Andi Kleen <ak@suse.de> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
| * | Merge master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6Linus Torvalds2005-08-201-2/+4
| |\ \
| | * | [TG3]: Update driver version and reldate.David S. Miller2005-08-191-2/+2
| | | | | | | | | | | | | | | | Signed-off-by: David S. Miller <davem@davemloft.net>
| | * | [TG3]: Fix SerDes detectionMichael Chan2005-08-191-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A problem was reported by Grant Grundler on an HP rx8620 using IOX Core LAN partno(A7109-6) 5701 copper NIC. The tg3 driver mistakenly detects this NIC as having a SerDes PHY and link does not come up as a result. The problem was caused by an incorrectly programmed eeprom that set the NIC_SRAM_DATA_CFG_PHY_TYPE_FIBER bit in the NIC_SRAM_DATA_CFG location. This patch will override the NIC_SRAM_DATA_CFG_PHY_TYPE_FIBER bit if a valid PHY ID is read from the MII registers on older 570x chips where the MII interface is not used on SerDes chips. On newer chips such as the 5780 that use MII for both copper and SerDes, SerDes detection must rely on the eeprom. This patch will make the SerDes detection identical to versions 3.25 and older. Signed-off-by: Michael Chan <mchan@broadcom.com> Acked-by: Grant Grundler <iod00d@hp.com> Signed-off-by: David S. Miller <davem@davemloft.net>