summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* [XFRM]: Allow packet drops during larval state resolution.David S. Miller2007-05-2411-14/+209
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The current IPSEC rule resolution behavior we have does not work for a lot of people, even though technically it's an improvement from the -EAGAIN buisness we had before. Right now we'll block until the key manager resolves the route. That works for simple cases, but many folks would rather packets get silently dropped until the key manager resolves the IPSEC rules. We can't tell these folks to "set the socket non-blocking" because they don't have control over the non-block setting of things like the sockets used to resolve DNS deep inside of the resolver libraries in libc. With that in mind I coded up the patch below with some help from Herbert Xu which provides packet-drop behavior during larval state resolution, controllable via sysctl and off by default. This lays the framework to either: 1) Make this default at some point or... 2) Move this logic into xfrm{4,6}_policy.c and implement the ARP-like resolution queue we've all been dreaming of. The idea would be to queue packets to the policy, then once the larval state is resolved by the key manager we re-resolve the route and push the packets out. The packets would timeout if the rule didn't get resolved in a certain amount of time. Signed-off-by: David S. Miller <davem@davemloft.net>
* [CASSINI]: Check pci_set_mwi() return value.David S. Miller2007-05-241-1/+4
| | | | Signed-off-by: David S. Miller <davem@davemloft.net>
* [NET]: "wrong timeout value" in sk_wait_data() v2Vasily Averin2007-05-241-1/+13
| | | | | | | | | | | | | | | | | | | sys_setsockopt() do not check properly timeout values for SO_RCVTIMEO/SO_SNDTIMEO, for example it's possible to set negative timeout values. POSIX do not defines behaviour for sys_setsockopt in case negative timeouts, but requires that setsockopt() shall fail with -EDOM if the send and receive timeout values are too big to fit into the timeout fields in the socket structure. In current implementation negative timeout can lead to error messages like "schedule_timeout: wrong timeout value". Proposed patch: - checks tv_usec and returns -EDOM if it is wrong - do not allows to set negative timeout values (sets 0 instead) and outputs ratelimited information message about such attempts. Signed-off-By: Vasily Averin <vvs@sw.ru> Signed-off-by: David S. Miller <davem@davemloft.net>
* Merge git://git.kernel.org/pub/scm/linux/kernel/git/holtmann/bluetooth-2.6David S. Miller2007-05-243-74/+94
|\
| * [Bluetooth] Fix L2CAP configuration parameter handlingMarcel Holtmann2007-05-242-66/+86
| | | | | | | | | | | | | | | | | | The L2CAP configuration parameter handling was missing the support for rejecting unknown options. The capability to reject unknown options is mandatory since the Bluetooth 1.2 specification. This patch implements its and also simplifies the parameter parsing. Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
| * [Bluetooth] Always send HCI_Reset for Broadcom devicesMarcel Holtmann2007-05-241-8/+8
| | | | | | | | | | | | | | | | | | In case of Broadcom based Bluetooth devices, it is safe to always send HCI_Reset as first command. This gives the advantage that all HID Proxy versions will automatically work and don't need any additional quirks anymore. Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
* | [NETFILTER]: nf_nat_h323: call set_h225_addr instead of set_h225_addr_hookJing Min Zhao2007-05-241-3/+3
| | | | | | | | | | | | | | | | They're the same. Signed-off-by: Jing Min Zhao <zhaojingmin@vivecode.com> Signed-off-by: Patrick McHardy <kaber@trash.net> Signed-off-by: David S. Miller <davem@davemloft.net>
* | [NETFILTER]: nf_conntrack_h323: add missing T.120 address in OLCAJing Min Zhao2007-05-241-0/+10
| | | | | | | | | | | | | | | | Add missing process of T.120 address in OpenLogicalChannelAck signal. Signed-off-by: Jing Min Zhao <zhaojingmin@vivecode.com> Signed-off-by: Patrick McHardy <kaber@trash.net> Signed-off-by: David S. Miller <davem@davemloft.net>
* | [NETFILTER]: nf_conntrack_h323: remove unnecessary process of Information signalJing Min Zhao2007-05-241-29/+0
| | | | | | | | | | | | | | | | | | According to the implementation of H.323, it's not necessary to check the addresses in Information signals. Signed-off-by: Jing Min Zhao <zhaojingmin@vivecode.com> Signed-off-by: Patrick McHardy <kaber@trash.net> Signed-off-by: David S. Miller <davem@davemloft.net>
* | [NETFILTER]: nf_conntrack_h323: fix get_h225_addr() for IPv6 address accessJing Min Zhao2007-05-241-1/+1
| | | | | | | | | | | | | | | | | | | | Update get_h225_addr() to meet the changes in ASN.1 types. It was using field ip6 to access IPv6 TransportAddress, it should be ip according the ASN.1 definition. Signed-off-by: Jing Min Zhao <zhaojingmin@vivecode.com> Signed-off-by: Patrick McHardy <kaber@trash.net> Signed-off-by: David S. Miller <davem@davemloft.net>
* | [NETFILTER]: nf_conntrack_h323: fix ASN.1 typesJing Min Zhao2007-05-242-38/+16
| | | | | | | | | | | | | | | | | | | | | | 1. Add support for decoding IPv6 address. I know it was manually added in the header file, but not in the template file. That wouldn't work. 2. Add missing support for decoding T.120 address in OLCA. 3. Remove unnecessary decoding of Information signal. Signed-off-by: Jing Min Zhao <zhaojingmin@vivecode.com> Signed-off-by: Patrick McHardy <kaber@trash.net> Signed-off-by: David S. Miller <davem@davemloft.net>
* | [NETFILTER]: nf_conntrack_ftp: fix newline sequence number calculationPatrick McHardy2007-05-243-19/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | When the packet size is changed by the FTP NAT helper, the connection tracking helper adjusts the sequence number of the newline character by the size difference. This is wrong because NAT sequence number adjustment happens after helpers are called, so the unadjusted number is compared to the already adjusted one. Based on report by YU, Haitao <yuhaitao@tsinghua.org.cn> Signed-off-by: Patrick McHardy <kaber@trash.net> Signed-off-by: David S. Miller <davem@davemloft.net>
* | [NETFILTER]: nf_conntrack_ftp: fix newline sequence number updatePatrick McHardy2007-05-241-3/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When trying to locate the oldest entry in the history of newline character sequence numbers, the sequence number of the current entry is incorrectly compared with the index of the oldest sequence number instead of the number itself. Additionally it is not made sure that the current sequence number really is after the oldest known one. Based on report by YU, Haitao <yuhaitao@tsinghua.org.cn> Signed-off-by: Patrick McHardy <kaber@trash.net> Signed-off-by: David S. Miller <davem@davemloft.net>
* | [NET_SCHED]: sch_htb: fix event cache time calculationPatrick McHardy2007-05-241-2/+3
| | | | | | | | | | | | | | | | The event cache time must be an absolute value, when no event exists it is incorrectly set to 1s instead of 1s in the future. Signed-off-by: Patrick McHardy <kaber@trash.net> Signed-off-by: David S. Miller <davem@davemloft.net>
* | [DCCP]: Fix build warning when debugging is disabled.David S. Miller2007-05-241-2/+1
| | | | | | | | Signed-off-by: David S. Miller <davem@davemloft.net>
* | [TIPC]: Fixed erroneous introduction of for_each_netdevJon Paul Maloy2007-05-241-4/+6
| | | | | | | | | | Signed-off-by: Jon Paul Maloy <jon.maloy@ericsson.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | [RTNETLINK]: Fix sending netlink message when replace route.Milan Kocian2007-05-244-7/+13
| | | | | | | | | | | | | | | | | | | | | | | | When you replace route via ip r r command the netlink multicast message is not send. This patch corrects it. NL message is sent with NLM_F_REPLACE flag. Addresses http://bugzilla.kernel.org/show_bug.cgi?id=8320 Signed-off-by: Milan Kocian <milon@wq.cz> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: David S. Miller <davem@davemloft.net>
* | [TR]: Use menuconfig objects.Jan Engelhardt2007-05-241-17/+16
| | | | | | | | | | | | | | | | | | Use menuconfigs instead of menus, so the whole menu can be disabled at once instead of going through all options. Signed-off-by: Jan Engelhardt <jengelh@gmx.de> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: David S. Miller <davem@davemloft.net>
* | [ARCNET]: Use menuconfig objects.Jan Engelhardt2007-05-241-13/+4
| | | | | | | | | | | | | | | | | | Use menuconfigs instead of menus, so the whole menu can be disabled at once instead of going through all options. Signed-off-by: Jan Engelhardt <jengelh@gmx.de> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: David S. Miller <davem@davemloft.net>
* | [TIPC]: Use menuconfig objects.Jan Engelhardt2007-05-241-13/+11
| | | | | | | | | | | | | | | | | | Use menuconfigs instead of menus, so the whole menu can be disabled at once instead of going through all options. Signed-off-by: Jan Engelhardt <jengelh@gmx.de> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: David S. Miller <davem@davemloft.net>
* | [SCTP]: Use menuconfig objects.Jan Engelhardt2007-05-241-8/+6
| | | | | | | | | | | | | | | | | | Use menuconfigs instead of menus, so the whole menu can be disabled at once instead of going through all options. Signed-off-by: Jan Engelhardt <jengelh@gmx.de> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: David S. Miller <davem@davemloft.net>
* | [IPVS]: Use menuconfig objects.Jan Engelhardt2007-05-241-25/+5
| | | | | | | | | | | | | | | | | | | | Use menuconfigs instead of menus, so the whole menu can be disabled at once instead of going through all options. Signed-off-by: Jan Engelhardt <jengelh@gmx.de> Acked-by: Simon Horman <horms@verge.net.au> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: David S. Miller <davem@davemloft.net>
* | [DCCP]: Use menuconfig objects.Jan Engelhardt2007-05-241-8/+7
| | | | | | | | | | | | | | | | | | Use menuconfigs instead of menus, so the whole menu can be disabled at once instead of going through all options. Signed-off-by: Jan Engelhardt <jengelh@gmx.de> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: David S. Miller <davem@davemloft.net>
* | [ATM]: Use mutex instead of binary semaphore in idt77252 driver.Matthias Kaehlcke2007-05-242-15/+16
| | | | | | | | | | | | | | | | Use mutex instead of binary semaphore in idt77252 driver. Signed-off-by: Matthias Kaehlcke <matthias.kaehlcke@gmail.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: David S. Miller <davem@davemloft.net>
* | [IPV6]: Ignore ipv6 events on non-IPV6 capable devices.Oliver Hartkopp2007-05-241-10/+21
| | | | | | | | | | | | Signed-off-by: Oliver Hartkopp <socketcan@hartkopp.net> Signed-off-by: Urs Thuermann <urs@isnogud.escape.de> Signed-off-by: David S. Miller <davem@davemloft.net>
* | [NET_SCHED]: Fix qdisc_restart return value when dequeue is emptyHerbert Xu2007-05-241-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | My previous patch that changed the return value of qdisc_restart incorrectly made the case where dequeue returns empty continue processing packets. This patch is based on diagnosis and fix by Patrick McHardy. Reported-and-debugged-by: Anant Nitya <kernel@prachanda.info> Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au> Signed-off-by: David S. Miller <davem@davemloft.net>
* | Merge branch 'fixes' of git://git.linux-nfs.org/pub/linux/nfs-2.6Linus Torvalds2007-05-244-22/+58
|\ \ | | | | | | | | | | | | | | | | | | * 'fixes' of git://git.linux-nfs.org/pub/linux/nfs-2.6: NFS: Fix nfs_direct_dirty_pages() NFS: Fix handful of compiler warnings in direct.c NFS: Avoid a deadlock situation on write
| * | NFS: Fix nfs_direct_dirty_pages()Trond Myklebust2007-05-241-11/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We only need to dirty the pages that were actually read in. Also convert nfs_direct_dirty_pages() to call set_page_dirty() instead of set_page_dirty_lock(). A call to lock_page() is unacceptable in an rpciod callback function. Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
| * | NFS: Fix handful of compiler warnings in direct.cChuck Lever2007-05-241-10/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch fixes a couple of signage issues that were causing an Oops when running the LTP diotest4 test. get_user_pages() returns a signed error, hence we need to be careful when comparing with the unsigned number of pages from data->npages. Signed-off-by: Chuck Lever <chuck.lever@oracle.com> Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
| * | NFS: Avoid a deadlock situation on writeTrond Myklebust2007-05-243-2/+25
| |/ | | | | | | | | | | | | | | | | | | | | | | | | When processes are allowed to attempt to lock a non-contiguous range of nfs write requests, it is possible for generic_writepages to 'wrap round' the address space, and call writepage() on a request that is already locked by the same process. We avoid the deadlock by checking if the page index is contiguous with the list of nfs write requests that is already held in our nfs_pageio_descriptor prior to attempting to lock a new request. Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
* | Revert "HOWTO: bug report addition" (or "HOWTO: mention bughunting")Linus Torvalds2007-05-241-20/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 722385f75efd82d9f480f0765a1e97a4d83cac0d (or commit 3f27100872b21e4cc70d07b96eeb3611b30bce63, it's your choice ;), since the same patch to Documentation/HOWTO got added twice because it just kept applying cleanly. Noted by Qi Yong. Cc: Qi Yong <qiyong@fc-cn.com> Acked-by: Diego Calleja <diegocg@gmail.com> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* | Merge git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6Linus Torvalds2007-05-242-5/+10
|\ \ | | | | | | | | | | | | * git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6: [CRYPTO] geode: Fix in-place operations and set key
| * | [CRYPTO] geode: Fix in-place operations and set keyJordan Crouse2007-05-242-5/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Allow in-place crypto operations. Also remove the coherent user flag (we use it automagically now), and by default use the user written key rather then the HW hidden key - this makes crypto just work without any special considerations, and thats OK, since its our only usage model. Signed-off-by: Jordan Crouse <jordan.crouse@amd.com> Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
* | | Merge branch 'for-linus' of ↵Linus Torvalds2007-05-244-53/+37
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/drzeus/mmc * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/drzeus/mmc: mmc: add maintainer for ARM Primecell controller mmc: add maintainer for iMX MMC interface mmc: Add maintainers for TI OMAP MMC interface mmc: mark unmaintained drivers mmc: clean up unused parts of block driver
| * | | mmc: add maintainer for ARM Primecell controllerRussell King2007-05-241-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Russell King handles this driver. Signed-off-by: Russell King <rmk@arm.linux.org.uk> Signed-off-by: Pierre Ossman <drzeus@drzeus.cx>
| * | | mmc: add maintainer for iMX MMC interfacePavel Pisa2007-05-241-0/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Pavel Pisa takes on the role of administrating this driver. Signed-off-by: Pavel Pisa <ppisa@pikron.com> Signed-off-by: Pierre Ossman <drzeus@drzeus.cx>
| * | | mmc: Add maintainers for TI OMAP MMC interfaceSyed Khasim2007-05-241-0/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Carlos Aguiar and Anderson Briglia are interested in making sure the driver works for existing boards as they have access to them, and Syed Khasim can make it work for new omaps (2430, 3430). Signed-off-by: Syed Khasim <x0khasim@ti.com> Signed-off-by: Pierre Ossman <drzeus@drzeus.cx>
| * | | mmc: mark unmaintained driversPierre Ossman2007-05-241-0/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Most of the host controller drivers in the MMC layer lacks an official maintainer. Make sure this is mentioned in MAINTAINERS in case someone wants to pick up the ball. Signed-off-by: Pierre Ossman <drzeus@drzeus.cx>
| * | | mmc: clean up unused parts of block driverPierre Ossman2007-05-243-53/+8
| | |/ | |/| | | | | | | | | | | | | Remove dead code and unused structs from the block driver. Signed-off-by: Pierre Ossman <drzeus@drzeus.cx>
* | | Fix crash with irqpoll due to the IRQF_IRQPOLL flag testingLinus Torvalds2007-05-241-9/+37
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | With irqpoll enabled, trying to test the IRQF_IRQPOLL flag in the actions would cause a NULL pointer dereference if no action was installed (for example, the driver might have been unloaded with interrupts still pending). So be a bit more careful about testing the flag by making sure to test for that case. (The actual _change_ is trivial, the patch is more than a one-liner because I rewrote the testing to also be much more readable. Original (discarded) bugfix by Bernhard Walle. Cc: Bernhard Walle <bwalle@suse.de> Tested-by: Vivek Goyal <vgoyal@in.ibm.com> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* | | boot documentation: clarificationsH. Peter Anvin2007-05-231-10/+22
| | | | | | | | | | | | | | | | | | | | | | | | Textual clarifications (and fix an off-by-one error) based on feedback mostly from Jeremy Fitzhardinge. Signed-off-by: H. Peter Anvin <hpa@zytor.com> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* | | i386 bigsmp: section mismatch fixesWilliam Lee Irwin III2007-05-231-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | WARNING: arch/i386/mach-generic/built-in.o(.data+0xc4): Section mismatch: reference to .init.text: (between 'apic_bigsmp' and 'cpu.4905') This appears to be resolvable by removing all the __init and __initdata qualifiers from arch/i386/mach-generic/bigsmp.c Signed-off-by: William Irwin <bill.irwin@oracle.com> Cc: Andi Kleen <ak@suse.de> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* | | drivers/isdn/hardware/eicon/message.c warning fixesAndrew Morton2007-05-231-7/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Squash these: drivers/isdn/hardware/eicon/message.c: In function 'api_put': drivers/isdn/hardware/eicon/message.c:536: warning: cast from pointer to integer of different size drivers/isdn/hardware/eicon/message.c: In function 'plci_free_msg_in_queue': drivers/isdn/hardware/eicon/message.c:1035: warning: cast to pointer from integer of different size drivers/isdn/hardware/eicon/message.c: In function 'data_b3_req': drivers/isdn/hardware/eicon/message.c:3121: warning: cast to pointer from integer of different size drivers/isdn/hardware/eicon/message.c:3154: warning: cast to pointer from integer of different size drivers/isdn/hardware/eicon/message.c: In function 'callback': drivers/isdn/hardware/eicon/message.c:4060: warning: cast to pointer from integer of different size drivers/isdn/hardware/eicon/message.c: In function 'nl_ind': drivers/isdn/hardware/eicon/message.c:7137: warning: cast from pointer to integer of different size Cc: Karsten Keil <kkeil@suse.de> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* | | capifunc warning fixesAndrew Morton2007-05-231-8/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | squish these: drivers/isdn/hardware/eicon/capifunc.c: In function 'TransmitBufferSet': drivers/isdn/hardware/eicon/capifunc.c:192: warning: cast to pointer from integer of different size drivers/isdn/hardware/eicon/capifunc.c: In function 'TransmitBufferGet': drivers/isdn/hardware/eicon/capifunc.c:197: warning: cast from pointer to integer of different size drivers/isdn/hardware/eicon/capifunc.c:198: warning: cast from pointer to integer of different size drivers/isdn/hardware/eicon/capifunc.c:200: warning: cast from pointer to integer of different size drivers/isdn/hardware/eicon/capifunc.c: In function 'TransmitBufferFree': drivers/isdn/hardware/eicon/capifunc.c:205: warning: cast from pointer to integer of different size drivers/isdn/hardware/eicon/capifunc.c:206: warning: cast from pointer to integer of different size drivers/isdn/hardware/eicon/capifunc.c: In function 'sendf': drivers/isdn/hardware/eicon/capifunc.c:304: warning: cast to pointer from integer of different size drivers/isdn/hardware/eicon/capifunc.c:304: warning: cast to pointer from integer of different size drivers/isdn/hardware/eicon/capifunc.c:321: warning: cast to pointer from integer of different size Cc: Karsten Keil <kkeil@suse.de> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* | | omap_uwire: SPI_CPHA mode bugfixImre Deak2007-05-231-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The omap_uwire controller driver handles SPI_CPHA incorrectly; It should mean: CPHA=0 ... sample at leading edge of clock CPHA=1 ... sample at trailing edge of clock This bug has been masked by inverse bugs in layered drivers; and was uncovered by running some of them on non-OMAP hardware. Signed-off-by: David Brownell <dbrownell@users.sourceforge.net> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* | | Documentation/memory-barriers.txt: various fixesJarek Poplawski2007-05-231-49/+49
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix various grammatical issues in Documentation/memory-barriers.txt. Cc: "Robert P. J. Day" <rpjday@mindspring.com> Signed-off-by: Jarek Poplawski <jarkao2@o2.pl> Signed-off-by: David Howells <dhowells@redhat.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* | | i386: fix early usage of atomic_add_return and local_add_return on real i386Thomas Gleixner2007-05-232-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The check (boot_cpu_data.x86 == 3) in atomic_add_return() and local_add_return() fails, when those operations are used before boot_cpu_data is filled in. Change the check to (boot_cpu_data.x86 <= 3) to fix this. Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* | | Prevent going idle with softirq pendingThomas Gleixner2007-05-231-3/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The NOHZ patch contains a check for softirqs pending when a CPU goes idle. The BUG is unrelated to NOHZ, it just was made visible by the NOHZ patch. The BUG showed up mainly on P4 / hyperthreading enabled machines which lead the investigations into the wrong direction in the first place. The real cause is in cond_resched_softirq(): cond_resched_softirq() is enabling softirqs without invoking the softirq daemon when softirqs are pending. This leads to the warning message in the NOHZ idle code: t1 runs softirq disabled code on CPU#0 interrupt happens, softirq is raised, but deferred (softirqs disabled) t1 calls cond_resched_softirq() enables softirqs via _local_bh_enable() calls schedule() t2 runs t1 is migrated to CPU#1 t2 is done and invokes idle() NOHZ detects the pending softirq Fix: change _local_bh_enable() to local_bh_enable() so the softirq daemon is invoked. Thanks to Anant Nitya for debugging this with great patience ! Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Signed-off-by: Ingo Molnar <mingo@elte.hu> Cc: <stable@kernel.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* | | ehci-fsl: fix cache coherency problem on system with large memoryLi Yang2007-05-232-0/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The patch fixes bug http://bugzilla.kernel.org/show_bug.cgi?id=7482. It sets USB snooping on 4G space for PowerPC platforms without CONFIG_NOT_COHERENT_CACHE defined. Reported-by: Stefan Meyer <reyems@telkomsa.net> Signed-off-by: Li Yang <leoli@freescale.com> Cc: Greg KH <greg@kroah.com> Cc: David Brownell <david-b@pacbell.net> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* | | document clocksourcesRandy Dunlap2007-05-231-4/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Document the available clocksources per platform and move clocksource= into the correct (alpha) location in the file. Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com> Acked-by: Thomas Gleixner <tglx@linutronix.de> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
OpenPOWER on IntegriCloud