- 25 Feb, 2005 1 commit
-
-
David Gibson authored
This fixes a potentially bad (although very rarely triggered) bug in the ppc64 hugepage code. hpte_update() did not correctly calculate the address for hugepages, so pte_clear() (which we use for hugepage ptes as well as normal ones) would not correctly flush the hash page table entry. Under the right circumstances this could potentially lead to duplicate hash entries, which is very bad. davem's upcoming patch to pass the virtual address directly to set_pte() and its ilk will obsolete this, but this is bad enough it should probably be fixed in the meantime. Signed-off-by: David Gibson <dwg@au1.ibm.com> Acked-by: William Irwin <wli@holomorphy.com> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
- 23 Feb, 2005 11 commits
-
-
Linus Torvalds authored
-
Jeff Garzik authored
into pobox.com:/garz/repo/net-drivers-2.6
-
François Romieu authored
Factor out some code Signed-off-by: Francois Romieu <romieu@fr.zoreil.com> Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
-
François Romieu authored
IRQ races during change of mtu - NAPI poll must be enabled prior to IRQ activation or the IRQ handler will not know what to do with an incoming packet; - rtl8169_down() needs to try twice to sync with the IRQ handler when it is not issued under !netif_running() protection. Both changes make it safe to request a change of mtu on a live device. Signed-off-by: Francois Romieu <romieu@fr.zoreil.com> Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
-
Olof Johansson authored
Some futex functions do get_user calls while holding mmap_sem for reading. If get_user() faults, and another thread happens to be in mmap (or somewhere else holding waiting on down_write for the same semaphore), then do_page_fault will deadlock. Most architectures seem to be exposed to this. To avoid it, make sure the page is available. If not, release the semaphore, fault it in and retry. I also found another exposure by inspection, moving some of the code around avoids the possible deadlock there. Signed-off-by: Olof Johansson <olof@austin.ibm.com> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
bk://gkernel.bkbits.net/libata-2.6Linus Torvalds authored
into ppc970.osdl.org:/home/torvalds/v2.6/linux
-
Jeff Garzik authored
Advanced SATA drivers should not (and cannot) use the basic PCI IDE hooks for checking the Status and Error registers, as these registers are either in non-standard locations, or simply don't exist. In the error handling path, libata was unconditionally calling some PCI IDE hardware bitbanging functions, which would cause an oops in the AHCI driver and any other advanced libata driver.
-
Linus Torvalds authored
Not that anybody cares about the sign, but the signed type does the wrong thing for right shifts. Which we had.
-
Alasdair G. Kergon authored
Fix a dm-raid1 deadlock: nested spinlocks with _irq. Signed-Off-By: Alasdair G Kergon <agk@redhat.com> From: Tim Burgess <tim.burgess@anu.edu.au> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Dmitry Torokhov authored
It feels like 2.6.11 is right around the corner. I would like to disable ALPS suport for some devices we don't know how to handle properly yet to cut down on number of complaints that we broke mouse support. Input: ALPS - do not activate native mode for devices whose data we can not handle yet. Signed-off-by: Dmitry Torokhov <dtor@mail.ru> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Paul Mackerras authored
A patch that I sent in earlier to allow the use of the data address breakpoint on machines with a hypervisor happened to break things for those configs, such as for the Maple board, where we don't compile in the routines for calling the hypervisor. This patch fixes it. Signed-off-by: Paul Mackerras <paulus@samba.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
- 22 Feb, 2005 12 commits
-
-
Benjamin Herrenschmidt authored
Reworking the ppc32 mm helps me find interesting bugs in the existing bug, well, brown paper bag for me, I made this one a while ago. The routine flush_hash_one_pte() used by ptep_test_and_clear_young() wasn't properly recaclulating the vaddr from the pte pointer & page->index. The result is that we probably never flushed things from the hash, so that's at least the _second_ bug affecting ptep_test_and_clear_young(), swap on ppc32 must have been really broken :( This fixes it. Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Jeff Garzik authored
into pobox.com:/garz/repo/libata-2.6
-
François Romieu authored
Uniformize comments Signed-off-by: Jon Mason <jdmason@us.ibm.com> Signed-off-by: Francois Romieu <romieu@fr.zoreil.com> Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
-
François Romieu authored
Removal of unused #define Signed-off-by: Jon Mason <jdmason@us.ibm.com> Signed-off-by: Francois Romieu <romieu@fr.zoreil.com> Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
-
François Romieu authored
Nail an overrun in skb alignment and remove the relevant magic variable. Signed-off-by: Jon Mason <jdmason@us.ibm.com> Signed-off-by: Francois Romieu <romieu@fr.zoreil.com> Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
-
François Romieu authored
Fix rx skb allocation error logging Signed arithmetic is not required as rtl8169_rx_fill() return belongs to the [0; NUM_RX_DESC] interval. Signed-off-by: Jon Mason <jdmason@us.ibm.com> Signed-off-by: Francois Romieu <romieu@fr.zoreil.com> Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
-
Jeff Garzik authored
into pobox.com:/garz/repo/netdev-2.6/r8169
-
Trond Myklebust authored
Duh... GETLK returns F_UNLCK if and only if the lock could be placed. Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Benjamin Herrenschmidt authored
Christoph Lameter's patch that change page allocators to use GFP_ZERO broke ppc32 in a subtle way. Our allocator is designed to work before mem_init_done, in which cases it uses a ppc specific early_get_page() which doesn't return zeroed pages. However, he removed the call to clear_page() unconditionally, thus causing the kernel initial page tables to have random data in them. They are initialized with set_pte, which means it's _mostly_ harmless, except that set_pte on ppc32 preserves the _PAGE_HASHPTE bit, thus we end up with random bits there, which can cause issues with further manipulation of the kernel page tables and will slow down all hash faults to them causing unnecessary searches. Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Tom Rini authored
Move <linux/limits.h> back up in <linux/fs.h>, to get the right ordering for the NR_OPEN dual define (ugh). Signed-off-by: Tom Rini <trini@kernel.crashing.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Tom Rini authored
The following moves all includes <linux/fs.h> (except <linux/ioctl.h> and <linux/config.h> down to below the existing __KERNEL__ test. None of these includes are needed by the user-visible portions of the header, and in some cases can cause userland apps to break. For example, LTP and sash with an empty <linux/autoconf.h> will fail thusly: cc -Wall -I../../include -g -Wall -I../../../../include -Wall setrlimit02.c -L../../../../lib -lltp -o setrlimit02 In file included from /usr/include/asm/atomic.h:6, from /usr/include/linux/fs.h:20, from setrlimit02.c:46: /usr/include/asm/processor.h:68: error: `CONFIG_X86_L1_CACHE_SHIFT' undeclared here (not in a function) /usr/include/asm/processor.h:68: error: requested alignment is not a constant Build/run tested with a glibc rebuild as well. Signed-off-by: Tom Rini <trini@kernel.crashing.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Arnaldo Carvalho de Melo authored
Various routines were putting a full struct tcp_sock on the local stack. What they really wanted was a subset of this information when doing TCP options processing when we only have a mini-socket (for example in SYN-RECVD and TIME_WAIT states). Therefore pull out the needed information into a sub-struct and use that in the TCP options processing routines. Signed-off-by: Arnaldo Carvalho de Melo <acme@conectiva.com.br> Signed-off-by: David S. Miller <davem@davemloft.net>
-
- 21 Feb, 2005 11 commits
-
-
Mika Kukkonen authored
Trying to build latest BK-kernel with !CONFIG_PCI and with CONFIG_ISAPNP=y and CONFIG_PNPBIOS=y I got the following build error: LD vmlinux drivers/built-in.o(.text+0x5486): In function 'pnpbios_parse_allocated_irqresource': : undefined reference to 'pcibios_penalize_isa_irq' Clearly pcibios_penalize_isa_irq() is meant to be called only with CONFIG_PCI=y. Signed-off-by: Mika Kukkonen <mikukkon@gmail.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Anton Blanchard authored
The paca holds a shadow of the context struct, used for the real mode SLB handler. When we open up a new segment we have to sync up the paca copy otherwise we will instantiate small page SLB entries until the next context switch (at which point we resync the paca copy). Signed-off-by: Anton Blanchard <anton@samba.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Andrew Morton authored
Greg's tree changes the order of fields in struct reasource, causing x86_64 to explode nastily. Fix. Cc: Greg KH <greg@kroah.com> Cc: Andi Kleen <ak@muc.de> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Randy Dunlap authored
Fix io_remap_page_range() call to pass a missing arg. Signed-off-by: Randy Dunlap <rddunlap@osdl.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Andrew Morton authored
We need asm/irq.h for __irq_itoa() on sparc[64]. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Andrew Morton authored
Some patch in -mm causes the sparc64 build to explode because `struct rusage' isn't defined or declared in compat.h. So forward-declare it. Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Andrew Morton authored
Use named initialisers. Cc: Greg KH <greg@kroah.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Andrew Morton authored
Used named initialisers in this declaration before Greg's tree's struct resource layout changes come in and break it. (Probably "dma page reg" shouldn't have spaces in the name - be friendly to /proc/ioports parsers?) Cc: Richard Henderson <rth@twiddle.net> Cc: Greg KH <greg@kroah.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Stephen Hemminger authored
The BIC TCP cwnd problem as identified by Yee-Ting Li and Doug Leith is that the computation is recalc_ssthresh is incorrect and BICTCP_1_OVER_BETA/2 should be BICTCP_1_OVER_BETA*2. My fix is to implement the code from BIC TCP 1.1 which uses a sysctl to set the beta. There are a few variable name changes from the 1.1 code, and made the scaling factor a #define instead of hardcoded. I validated this using netem and kprobes, for more details see http://developer.osdl.org/shemminger/bic-beta-patch.pdfSigned-off-by: Stephen Hemminger <shemminger@osdl.org> Signed-off-by: David S. Miller <davem@davemloft.net>
-
Jeff Garzik authored
Fixes double-kfree that caused slab corruption. Signed-off-by: Jeff Garzik <jgarzik@pobox.com> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
Benjamin Herrenschmidt authored
ppc32's implementation of ptep_test_and_clear_young() has a logic error which makes it fail to flush the hash table. Thus PAGE_ACCESSED is almost never set again after beeing cleared (unless something else cause that hash entry to be flushed). Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-
- 20 Feb, 2005 5 commits
-
-
Gary N. Spiess authored
This is a minor modification to the previous patch submission that does not assume the default contents of the DSPCFG register are zero. When used with Revision D of the DP83815, the "Recommended Registers Configuration" from page 78 of the DP83815 data sheet is not entirely compatible with the driver's "short cable patch". When the DSPCFG register is written with the value suggested in the document, then do_cable_magic() can't read the DSP coefficient and determines that all cables attached to the DP83815D are 'short', regardless of actual length. Short cables (< 30m) cause do_cable_magic to enable additional attenuation to reduce CRC and idle errors. If the extra attenuation is unintentionally enabled for long cables (> 50m?), they will not operate properly. The National Semiconductor driver, 'dp83815.c' from http://www.national.com/appinfo/networks/files/linux_2_4.tar.gz was used as a basis for this modification. Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
-
Ravinandan Arakali authored
Attached is the patch to address the incorrect programming of individual multicast address into the NIC. Signed-off-by: Ravinandan Arakali <ravinandan.arakali@neterion.com> Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
-
Andrew Morton authored
Someone added a new dev_set_mac_address() to netdevice.h Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
-
Linus Torvalds authored
This makes for better messages on what is going on. It also allows us (if we want to), to pick the PCI starting address somewhere else in the gap. That may be a good idea (ie do a pci_mem_start = (gapstart + (gapsize >> 3) + 0xfffff) & ~0xfffff; or similar.
-
Linus Torvalds authored
We really don't care about anything beyond the 4GB mark, so make the tests for that explicit (and add a comment), and use regular "unsigned long" for the gap information.
-