commit 94a05509a9e11806acd797153d03019706e466f1 Author: Linus Torvalds Date: Sun Apr 15 16:50:57 2007 -0700 Linux 2.6.21-rc7 I tend to prefer to not have to cut an -rc7, but we still have some network device driver and suspend issues. So here's -rc7. Signed-off-by: Linus Torvalds commit eb4cac10d9f7b006da842e2d37414d13e1333781 Author: Trond Myklebust Date: Sun Apr 15 16:21:49 2007 -0400 NFS: Fix a list corruption problem We must remove the request from whatever list it is currently on before we can add it to the dirty list. Signed-off-by: Trond Myklebust Signed-off-by: Linus Torvalds commit 0492c371372ef5eac3a952509391dea231b0de89 Author: Zachary Amsden Date: Thu Apr 12 19:28:46 2007 -0700 Fix VMI relocation processing logic error Fix logic error in VMI relocation processing. NOPs would always cause a BUG_ON to fire because the != RELOCATION_NONE in the first if clause precluding the == VMI_RELOCATION_NOP in the second clause. Make these direct equality tests and just warn for unsupported relocation types (which should never happen), falling back to native in that case. Thanks to Anthony Liguori for noting this! Signed-off-by: Zachary Amsden Signed-off-by: Linus Torvalds commit 5a6d41b32a17ca902ef50fdfa170d7f23264bad5 Author: Trond Myklebust Date: Sat Apr 14 19:10:12 2007 -0400 NFS: Ensure PG_writeback is cleared when writeback fails If the writebacks are cancelled via nfs_cancel_dirty_list, or due to the memory allocation failing in nfs_flush_one/nfs_flush_multi, then we must ensure that the PG_writeback flag is cleared. Also ensure that we actually own the PG_writeback flag whenever we schedule a new writeback by making nfs_set_page_writeback() return the value of test_set_page_writeback(). The PG_writeback page flag ends up replacing the functionality of the PG_FLUSHING nfs_page flag, so we rip that out too. Signed-off-by: Trond Myklebust Cc: Peter Zijlstra Signed-off-by: Linus Torvalds commit 60fa3f769f7651a60125a0f44e3ffe3246d7cf39 Author: Trond Myklebust Date: Sat Apr 14 19:11:52 2007 -0400 NFS: Fix two bugs in the O_DIRECT write code Do not flag an error if the COMMIT call fails and we decide to resend the writes. Let the resend flag the error if it fails. If a write has failed, then nfs_direct_write_result should not attempt to send a commit. It should just exit asap and return the error to the user. Signed-off-by: Trond Myklebust Cc: Chuck Lever Signed-off-by: Linus Torvalds commit e1552e199857109d4b25b9163eff4646726eee3d Author: Trond Myklebust Date: Sat Apr 14 19:07:28 2007 -0400 NFS: Fix an Oops in nfs_setattr() It looks like nfs_setattr() and nfs_rename() also need to test whether the target is a regular file before calling nfs_wb_all()... Signed-off-by: Trond Myklebust Signed-off-by: Linus Torvalds commit c9c57929d23e44f258d1b6e7f089e72c85f0bd1c Author: Ravikiran G Thirumalai Date: Fri Apr 13 16:28:20 2007 -0700 failsafe mechanism to HPET clock calibration Provide a failsafe mechanism to avoid kernel spinning forever at read_hpet_tsc during early kernel bootup. This failsafe mechanism was originally introduced in commit 2f7a2a79c3ebb44f8b1b7d9b4fd3a650eb69e544, but looks like the hpet split from time.c lost it again. This reintroduces the failsafe mechanism Signed-off-by: Ravikiran Thirumalai Signed-off-by: Shai Fultheim Cc: Jack Steiner Cc: john stultz Cc: Andi Kleen Signed-off-by: Linus Torvalds commit 8d3ee2cb0ab59f78fdc801ede7db15ef47387bd0 Author: David S. Miller Date: Sat Apr 14 10:29:10 2007 -0700 [SCSI] QLOGICPTI: Do not unmap DMA unless we actually mapped something. We only map DMA when cmd->request_bufflen is non-zero for non-sg buffers, we thus should make the same check when unmapping. Based upon a report from Pasi Pirhonen. Signed-off-by: David S. Miller commit 6e3b2bbb197eb12b2bef35bcf2ac3bd6a5facab2 Author: James Bottomley Date: Fri Apr 6 11:14:56 2007 -0500 [SCSI] 3w-xxxx: fix oops caused by incorrect REQUEST_SENSE handling 3w-xxxx emulates a REQUEST_SENSE response by simply returning nothing. Unfortunately, it's assuming that the REQUEST_SENSE command is implemented with use_sg == 0, which is no longer the case. The oops occurs because it's clearing the scatterlist in request_buffer instead of the memory region. This is fixed by using tw_transfer_internal() to transfer correctly to the scatterlist. Acked-by: adam radford Signed-off-by: James Bottomley commit d791d413fd8527aa6b130882cc84d52aee0fe980 Author: Olaf Kirch Date: Fri Apr 13 01:18:44 2007 -0400 DVB: dvb-usb-remote - fix oops when changing keymap DVB USB remotes do not support changing keycode maps but set input_dev->keycodesize and input_dev->keycodemax without setting input_dev->keycode. This causes kernel oops when user tries to look up (or change) current keymap. While the proper fix would be to make remotes handle keymap changes we'll just remove keycodemax and keycodesize initialization so EVIOCGKEYCODE and EVIOCSKEYCODE will simply return -EINVAL. http://bugzilla.kernel.org/show_bug.cgi?id=8312 Signed-off-by: olaf.kirch@oracle.com Signed-off-by: Dmitry Torokhov Signed-off-by: Linus Torvalds commit 49688c843101ba6275756505e81af45ef50f87d7 Author: David S. Miller Date: Fri Apr 13 16:37:54 2007 -0700 [NETFILTER] arp_tables: Fix unaligned accesses. There are two device string comparison loops in arp_packet_match(). The first one goes byte-by-byte but the second one tries to be clever and cast the string to a long and compare by longs. The device name strings in the arp table entries are not guarenteed to be aligned enough to make this value, so just use byte-by-byte for both cases. Based upon a report by . Signed-off-by: David S. Miller commit 612f09e8495ba656032f89147ab999ef2be9c360 Author: YOSHIFUJI Hideaki Date: Fri Apr 13 16:18:02 2007 -0700 [IPV6] SNMP: Fix {In,Out}NoRoutes statistics. A packet which is being discarded because of no routes in the forwarding path should not be counted as OutNoRoutes but as InNoRoutes. Additionally, on this occasion, a packet whose destinaion is not valid should be counted as InAddrErrors separately. Based on patch from Mitsuru Chinen . Signed-off-by: YOSHIFUJI Hideaki Signed-off-by: David S. Miller commit 661697f728d75302e1f661a58db2fcba71d5cbc9 Author: Joy Latten Date: Fri Apr 13 16:14:35 2007 -0700 [IPSEC] XFRM_USER: kernel panic when large security contexts in ACQUIRE When sending a security context of 50+ characters in an ACQUIRE message, following kernel panic occurred. kernel BUG in xfrm_send_acquire at net/xfrm/xfrm_user.c:1781! cpu 0x3: Vector: 700 (Program Check) at [c0000000421bb2e0] pc: c00000000033b074: .xfrm_send_acquire+0x240/0x2c8 lr: c00000000033b014: .xfrm_send_acquire+0x1e0/0x2c8 sp: c0000000421bb560 msr: 8000000000029032 current = 0xc00000000fce8f00 paca = 0xc000000000464b00 pid = 2303, comm = ping kernel BUG in xfrm_send_acquire at net/xfrm/xfrm_user.c:1781! enter ? for help 3:mon> t [c0000000421bb650] c00000000033538c .km_query+0x6c/0xec [c0000000421bb6f0] c000000000337374 .xfrm_state_find+0x7f4/0xb88 [c0000000421bb7f0] c000000000332350 .xfrm_tmpl_resolve+0xc4/0x21c [c0000000421bb8d0] c0000000003326e8 .xfrm_lookup+0x1a0/0x5b0 [c0000000421bba00] c0000000002e6ea0 .ip_route_output_flow+0x88/0xb4 [c0000000421bbaa0] c0000000003106d8 .ip4_datagram_connect+0x218/0x374 [c0000000421bbbd0] c00000000031bc00 .inet_dgram_connect+0xac/0xd4 [c0000000421bbc60] c0000000002b11ac .sys_connect+0xd8/0x120 [c0000000421bbd90] c0000000002d38d0 .compat_sys_socketcall+0xdc/0x214 [c0000000421bbe30] c00000000000869c syscall_exit+0x0/0x40 --- Exception: c00 (System Call) at 0000000007f0ca9c SP (fc0ef8f0) is in userspace We are using size of security context from xfrm_policy to determine how much space to alloc skb and then putting security context from xfrm_state into skb. Should have been using size of security context from xfrm_state to alloc skb. Following fix does that Signed-off-by: Joy Latten Acked-by: James Morris Signed-off-by: David S. Miller commit 279e172a580d415b83eba4f9fbbc77b08e546553 Author: Jerome Borsboom Date: Fri Apr 13 16:12:47 2007 -0700 [VLAN]: Allow VLAN interface on top of bridge interface When a VLAN interface is created on top of a bridge interface and netfilter is enabled to see the bridged packets, the packets can be corrupted when passing through the netfilter code. This is caused by the VLAN driver not setting the 'protocol' and 'nh' members of the sk_buff structure. In general, this is no problem as the VLAN interface is mostly connected to a physical ethernet interface which does not use the 'protocol' and 'nh' members. For a bridge interface, however, these members do matter. Signed-off-by: Jerome Borsboom Signed-off-by: David S. Miller commit 24fc6f00b64985773b5abd592c4cb2e30bad7584 Author: Tom "spot" Callaway Date: Fri Apr 13 13:35:35 2007 -0700 [SPARC64]: Fix inline directive in pci_iommu.c While building a test kernel for the new esp driver (against git-current), I hit this bug. Trivial fix, put the inline declaration in the right place. :) Signed-off-by: Tom "spot" Callaway Signed-off-by: David S. Miller commit 5c7aa6ffae514bfeb7ec0f249dde949863d895ac Author: David S. Miller Date: Fri Apr 13 13:27:08 2007 -0700 [SPARC64]: Fix arg passing to compat_sys_ipc(). Do not sign extend args using the sys32_ipc stub, that is buggy and unnecessary. Based upon an excellent report by Mikael Pettersson. Signed-off-by: David S. Miller commit 6a04de6dbe1772d98fddf5099738d6f508e86e21 Author: Wu, Bryan Date: Wed Apr 11 23:28:47 2007 -0700 [PATCH] nommu: fix bug ip_conntrack does not work on nommu num_physpages is not exported out in mm/nommu.c, so the ip_conntrack module link will fail. Signed-off-by: Bryan Wu Acked-By: David Howells Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c3724b129b5a1a1789a2dc5348685a236ae02479 Author: Jeff Mahoney Date: Wed Apr 11 23:28:46 2007 -0700 [PATCH] autofs4: fix race in unhashed dentry code Commit f50b6f8691cae2e0064c499dd3ef3f31142987f0 introduced a race in autofs4 between autofs_lookup_unhashed() and autofs_dentry_release(). autofs_dentry_release() ends up clearing the ->dentry and ->inode members of autofs_info before removing it from the rehash list. The list is protected by the rehash lock in both functions, but since autofs_dentry_release() starts tearing the autofs_info struct down before removing it from the list, autofs_lookup_unhashed() can get a autofs_info with a NULL dentry. This patch moves the clearing of ->dentry and ->inode after the removal from the rehash list. Signed-off-by: Jeff Mahoney Acked-by: Ian Kent Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6d205f120547043de663315698dcf5f0eaa31b5c Author: Vladimir Saveliev Date: Wed Apr 11 23:28:44 2007 -0700 [PATCH] reiserfs: fix key decrementing This patch fixes a bug in function decrementing a key of stat data item. Offset of reiserfs keys are compared as signed values. To set key offset to maximal possible value maximal signed value has to be used. This bug is responsible for severe reiserfs filesystem corruption which shows itself as warning vs-13060. reiserfsck fixes this corruption by filesystem tree rebuilding. Signed-off-by: Vladimir Saveliev Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 505fa2c4a2f125a70951926dfb22b9cf273994f1 Author: Neil Brown Date: Wed Apr 11 23:28:44 2007 -0700 [PATCH] md: fix calculation for size of filemap_attr array in md/bitmap If 'num_pages' were ever 1 more than a multiple of 8 (32bit platforms) or of 16 (64 bit platforms). filemap_attr would be allocated one 'unsigned long' shorter than required. We need a round-up in there. Signed-off-by: Neil Brown Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b6550777a32f7204f87475beb4f40d054fb8d4b4 Author: Bjorn Helgaas Date: Wed Apr 11 23:28:43 2007 -0700 [PATCH] cciss: unregister from SCSI before tearing down device resources We must unregister from SCSI before we unmap device resources and unhook the IRQ handler. Otherwise, SCSI may send us more requests, and we won't be able to handle them. I see the following oops during every reboot of my HP DL360: ... Unmounting local filesystems...done. Rebooting... Completed flushing cache on controller 0 BUG: unable to handle kernel paging request at virtual address f8808040 printing eip: c02dc72b *pde = 02120067 *pte = 00000000 Oops: 0002 [#1] SMP Modules linked in: CPU: 1 EIP: 0060:[] Not tainted VLI EFLAGS: 00010046 (2.6.21-rc6 #1) EIP is at SA5_submit_command+0xb/0x20 eax: f8808000 ebx: f7a00000 ecx: f79f0000 edx: 37a00000 esi: f79f0000 edi: 00000000 ebp: 00000000 esp: dd717a44 ds: 007b es: 007b fs: 00d8 gs: 0000 ss: 0068 Process khelper (pid: 1427, ti=dd716000 task=c2260a70 task.ti=dd716000) Stack: c02df2c0 f7a00000 f7a00000 00d41008 c02df691 00000000 00000010 00000002 00000001 f79f0000 f7fff844 c1398420 00000000 00000000 00001000 230a3020 69666564 5420656e 50434f49 465f544b 4853554c 44414552 0a312009 66656423 Call Trace: [] start_io+0x80/0x120 [] do_cciss_request+0x331/0x350 [] mempool_alloc+0x2a/0xe0 [] blk_alloc_request+0x61/0x80 [] get_request+0x15e/0x1e0 [] cache_alloc_refill+0xb0/0x1e0 [] as_update_rq+0x2d/0x80 [] as_add_request+0x68/0x90 [] elv_insert+0x119/0x160 [] __make_request+0xcb/0x320 [] lock_timer_base+0x20/0x50 [] del_timer+0x56/0x60 [] blk_remove_plug+0x38/0x70 [] __generic_unplug_device+0x25/0x30 [] generic_unplug_device+0x15/0x30 ... Signed-off-by: Bjorn Helgaas Acked-by: Mike Miller Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 1668be71ccae5a9610fc8a224bd80fbe852f93ae Author: David Brownell Date: Wed Apr 11 23:28:42 2007 -0700 [PATCH] doc: gpio.txt describes open-drain emulation Update the GPIO docs to describe the idiom whereby open drain signals are emulated by toggling the GPIO direction. Signed-off-by: David Brownell Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit fe20e581a72979917e35d5146458ceba79be391f Author: Randy Dunlap Date: Wed Apr 11 23:28:41 2007 -0700 [PATCH] fix kernel oops with badly formatted module option Catch malformed kernel parameter usage of "param = value". Spaces are not supported, but don't cause a kernel fault on such usage, just report an error. Signed-off-by: Randy Dunlap Acked-by: Larry Finger Acked-by: Rusty Russell Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 09fe3ef46c5a2cc65d173df9518013e208eb3ba3 Author: Andrew Morton Date: Thu Apr 12 14:45:32 2007 -0700 [PKTGEN]: Add try_to_freeze() The pktgen module prevents suspend-to-disk. Fix. Acked-by: "Michal Piotrowski" Signed-off-by: Andrew Morton Signed-off-by: David S. Miller commit 01102e7ca2e71ec0c300d41a1f3e594235b733ee Author: Patrick McHardy Date: Thu Apr 12 14:27:03 2007 -0700 [NETFILTER]: ipt_ULOG: use put_unaligned Use put_unaligned to fix warnings about unaligned accesses. Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit f6b45da1299f1f2e92a1446cfa400be53fdc5c99 Author: Robert Reif Date: Thu Apr 12 13:47:37 2007 -0700 [SPARC]: Fix section mismatch warnings in pci.c and pcic.c Fix section mismatch in arch/sparc/kernel/pcic.c and arch/sparc64/kernel/pci.c. Signed-off-by: Robert Reif Signed-off-by: David S. Miller commit bc375ea7efcda0450b7cba9b3514e76d2e1cea79 Author: David S. Miller Date: Thu Apr 12 13:35:59 2007 -0700 [SUNRPC]: Make sure on-stack cmsg buffer is properly aligned. Based upon a report from Meelis Roos. Signed-off-by: David S. Miller commit 1d51c69fb6e61054cd6cc485f9bef77d19d82751 Author: Roland McGrath Date: Thu Apr 12 13:13:42 2007 -0700 [SPARC]: avoid CHILD_MAX and OPEN_MAX constants I don't figure anyone really cares about SunOS syscall emulation, and I certainly don't. But I'm getting rid of uses of the OPEN_MAX and CHILD_MAX compile-time constant, and these are almost the only ones. OPEN_MAX is a bogus constant with no meaning about anything. The RLIMIT_NOFILE resource limit is what sysconf (_SC_OPEN_MAX) actually wants to return. The CHILD_MAX cases weren't actually using anything I want to get rid of, but I noticed that they are there and are wrong too. The CHILD_MAX value is not really unlimited as a -1 return from sysconf indicates. The RLIMIT_NPROC resource limit is what sysconf (_SC_CHILD_MAX) wants to return. Signed-off-by: Roland McGrath Signed-off-by: David S. Miller commit 7a6491dffb5bf86ae86c90895c0f40aacceb7083 Author: Vitaly Bordug Date: Tue Apr 10 21:52:04 2007 +0400 [PPC] Fix compilation and linking errors of mpc86xads build. Fix compilation of mpc866ads_setup.c Signed-off-by: Vitaly Bordug Signed-off-by: Kumar Gala commit fa76abac9271e314c02aff9b407116b783e0ccbb Author: Vitaly Bordug Date: Tue Apr 10 21:52:02 2007 +0400 [PPC] Fix compilation and linking errors of mpc885ads build. Fix compilation of mpc885ads_setup.c Signed-off-by: Vitaly Bordug Signed-off-by: Kumar Gala commit 1ca19770c5ba90d041ba4d06976c77048d330cc8 Author: Steve Wise Date: Thu Apr 12 07:56:34 2007 -0500 RDMA/cxgb3: Add set_tcb_rpl_handler As of commit 6cdbd77e ("cxgb3 - missing CPL hanler and register setting."), the cxgb3 ethernet NIC driver no longer handles SET_TCB replies, so we need to do it in the iWARP driver. Signed-off-by: Steve Wise Acked-by: Divy Le Ray Signed-off-by: Roland Dreier commit 6df7d40682242b52c3ed1ea4bbdb594c2d8737c5 Author: Vitaly Bordug Date: Tue Apr 10 21:51:53 2007 +0400 [PPC] MPC8272 ADS compile fixed, defconfig refreshed. Fix compilation of mpc8272ads_setup.c Signed-off-by: Vitaly Bordug Signed-off-by: Kumar Gala commit 2f3a2efd85b698e51e90f06a37d85066725fb4c4 Author: David S. Miller Date: Wed Apr 11 21:38:45 2007 -0700 [SPARC64]: Fix SBUS IOMMU allocation code. There are several IOMMU allocator bugs. Instead of trying to fix this overly complicated code, just mirror the PCI IOMMU arena allocator which is very stable and well stress tested. I tried to make the code as identical as possible so we can switch sun4u PCI and SBUS over to a common piece of IOMMU code. All that will be need are two callbacks, one to do a full IOMMU flush and one to do a streaming buffer flush. This patch gets rid of a lot of hangs and mysterious crashes on SBUS sparc64 systems, at least for me. Signed-off-by: David S. Miller commit c48ea60359a303f3faf5991205b0cdb58dfe6eed Author: Dmitry Torokhov Date: Wed Apr 11 01:37:18 2007 -0400 [PATCH] PM: use kobject_name() to access kobject names Noone should use kobj.name directly since it may contain garbage. Objects with longer names have them stored in separately allocated memory pointed to by kobj->k_name. Signed-off-by: Dmitry Torokhov Signed-off-by: Linus Torvalds commit 2ea547d2dec97b279ba90c7768960856f2116c79 Author: Emil Larsson Date: Thu Mar 29 22:48:46 2007 -0700 USB: Nikon D80 unusual device patch the Nikon D80 camera will not work without an UNUSUAL_DEV entry embodied in the attached patch (made against 2.6.20.3). Hope you find it helpful, or if not, pass it along to someone who does. From: Emil Larsson Signed-off-by: Phil Dibowitz Signed-off-by: Greg Kroah-Hartman commit 61e8b858abe38c1042135065c59f7d339194b50b Author: Alan Stern Date: Mon Apr 9 11:52:31 2007 -0400 EHCI: fix remote wakeup regression in 2.6.21-rc There is one significant difference between the behavior of root hubs (as embodied in host controller hardware) and external hubs: When a remote-wakeup signal is received, an external hub sends an interrupt message at the _end_ of the resume sequence but a root hub generates and interrupt at the _beginning_ of the resume sequence. The host system must poll for the end of the sequence. When ehci-hcd was converted to interrupt-driven operation instead of using polling, the remaining need for this particular poll was overlooked. This patch (as894) fixes the problem. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman commit 22132178b26c907d19f661a4ae7fd265962d417e Author: Domen Puncer Date: Wed Apr 11 00:27:49 2007 +0200 [POWERPC] mpc52xx_pic: fix main interrupt masking The bit setting was off by one. Tested with RTC and GPIO_WKUP interrupts. Signed-off-by: Domen Puncer Signed-off-by: Sylvain Munaut Signed-off-by: Paul Mackerras commit 4b2281c7aa6a6e2615b35f8cebd93656dc6d714c Author: Brice Goglin Date: Tue Apr 10 21:22:19 2007 +0200 myri10ge: update driver version to 1.3.0-1.233 Update the myri10ge driver version number to 1.3.0-1.233. Signed-off-by: Brice Goglin Signed-off-by: Jeff Garzik commit f19baaeaadf9d77bcc6c122500c70b27c5bbc7a4 Author: Brice Goglin Date: Tue Apr 10 21:21:39 2007 +0200 myri10ge: more Intel chipsets providing aligned PCIe completions Add the Intel 5000 southbridge (aka Intel 6310/6311/6321ESB) PCIe ports and the Intel E30x0 chipsets to the whitelist of aligned PCIe completion. Signed-off-by: Brice Goglin Signed-off-by: Jeff Garzik commit ae8509b1876e6e1074edc9846296e80983e30502 Author: Brice Goglin Date: Tue Apr 10 21:21:08 2007 +0200 myri10ge: fix management of the firmware 4KB boundary crossing restriction Simpler way of dealing with the firmware 4KB boundary crossing restriction for rx buffers. This fixes a variety of memory corruption issues when using an "uncommon" MTU with a 16KB page size. Signed-off-by: Brice Goglin Signed-off-by: Jeff Garzik commit 6cdbd77e8883aac2e24f8b19b91e5b1c839213a0 Author: Divy Le Ray Date: Mon Apr 9 20:10:33 2007 -0700 cxgb3 - missing CPL hanler and register setting. Remove specific CPL handler. Add missing CPL handler. Add missing register setting when the interface is brought up. Signed-off-by: Divy Le Ray Signed-off-by: Jeff Garzik commit 59cf81076a85e1df273155298c462574b49cc0fe Author: Divy Le Ray Date: Mon Apr 9 20:10:27 2007 -0700 cxgb3 - MAC watchdog update The MAC watchdog was failing if the peer interface was brought down. Signed-off-by: Divy Le Ray Signed-off-by: Jeff Garzik commit f2d961c9827bab4b64a1b4ea30c68cf5ab2b2330 Author: Divy Le Ray Date: Mon Apr 9 20:10:22 2007 -0700 cxgb3 - avoid deadlock with mac watchdog Fix a deadlock when the interface s configured down and the watchdog tack is sleeping on rtnl_lock. Signed-off-by: Divy Le Ray Signed-off-by: Jeff Garzik commit 692412b31ffb5df00197ea591dd635fc07506c02 Author: Stephen Hemminger Date: Mon Apr 9 15:32:45 2007 -0700 skge: fix wake on lan Need to rework wake on lan code to setup properly and get activated on shutdown (and suspend), not when ethtool is run. This does not need to go to stable queue because wake on lan was not even included in 2.6.20 (or earlier versions). Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit 9467a8fc89844ff2ea9c6d13460dddb3b674cc37 Author: Stephen Hemminger Date: Sat Apr 7 16:02:28 2007 -0700 sky2: phy workarounds for Yukon EC-U A1 The workaround Yukon EC-U wasn't comparing with correct version and wasn't doing correct setup. Without it, 88e8056 throws all sorts of errors. Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit 1ad5b4a5c224c5f98f9745adbcf99899624c8138 Author: Stephen Hemminger Date: Sat Apr 7 16:02:27 2007 -0700 sky2: turn on clocks when doing resume Some of these chips are disabled until clock is enabled. This fixes: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=404107 Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit 9a87240c67565578a9533101b930ef4a975be333 Author: Stephen Hemminger Date: Sat Apr 7 16:02:26 2007 -0700 sky2: turn carrier off when down Driver needs to turn off carrier when down. Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit e5b9ddd9a0f95e133db7b43d05978f24cd6f1369 Author: Stephen Hemminger Date: Sat Apr 7 16:02:25 2007 -0700 skge: turn carrier off when down Driver needs to turn off carrier when down, otherwise it can confuse bonding and bridging and looks like carrier is on immediately when it is brought back up. Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik commit 5ab7ffea520948115a51a9931e1bb4c818aa8e35 Author: David Howells Date: Tue Apr 10 15:10:45 2007 +0100 [PATCH] FRV: Update the FRV arch MAINTAINER record to get a hit on "grep -i frv" Update the FRV arch MAINTAINER record to get a hit on "grep -i frv". Whilst FR-V is technically correct, it's normally thought of as FRV. Signed-off-by: David Howells Signed-off-by: Linus Torvalds commit ff78b20235f84966c4b7962ce94e800adecc5383 Author: Cliff Brake Date: Mon Apr 9 23:50:50 2007 -0400 [PATCH] Input: ucb1400 - set up driver's name to show in sysfs The UCB1400 is missing a name parameter in the device_driver struct. This causes missing information in the /sys tree and seems to cause other problems with the AC97 functionality. This was tested on a PXA270 system. Signed-off-by: Cliff Brake Signed-off-by: Dmitry Torokhov Signed-off-by: Linus Torvalds commit a7a832de9e9624bcf069a5369c3c38ba2f44d460 Author: Danny Kukawka Date: Tue Apr 10 22:39:14 2007 +0200 ide: add "optical" to sysfs "media" attribute Add "optical" to sysfs "media" attribute as already in /proc Signed-off-by: Danny Kukawka Signed-off-by: Bartlomiej Zolnierkiewicz commit 76ca1af10e28021e1894c5703da42b5e7bff1771 Author: Stuart Hayes Date: Tue Apr 10 22:38:43 2007 +0200 ide: ugly messages trying to open CD drive with no media present I get the following error messages when trying to open a CD device (specifically, the Teac CD-ROM CD-224E) that has no media present: hda: packet command error: status=3D0x51 { DriveReady SeekComplete Error } hda: packet command error: error=3D0x54 { AbortedCommand LastFailedSense=0x05 } ide: failed opcode was: unknown This happens when a "start stop unit" command (0x1b 0 0 0 3 0 0 0 0 0) is sent to the drive to try to close the CD-ROM tray, but this drive doesn't have that capability (it's a slim portable-type CD-ROM), so it reports sense key 5 (illegal request) with asc/ascq 24/0. This is exactly how SFF8090i says it should respond. But ide-cd.c (in cdrom_decode_status() ) just sees sense key 5 and spews out an error. It then goes on to request sense data, and cdrom_log_sense() understands this error and doesn't log it. The patch, for kernel 2.6.20.4, suppresses this error message. Signed-off-by: Stuart Hayes Cc: Alan Cox Signed-off-by: Bartlomiej Zolnierkiewicz commit 23450319e2890986c247ec0aa1442f060e657e6d Author: Suleiman Souhlal Date: Tue Apr 10 22:38:37 2007 +0200 ide: correctly prevent IDE timer expiry function to run if request was already handled It is possible for the timer expiry function to run even though the request has already been handled: ide_timer_expiry() only checks that the handler is not NULL, but it is possible that we have handled a request (thus clearing the handler) and then started a new request (thus starting the timer again, and setting a handler). A simple way to exhibit this is to set the DMA timeout to 1 jiffy and run dd: The kernel will panic after a few minutes because ide_timer_expiry() tries to add a timer when it's already active. To fix this, we simply add a request generation count that gets incremented at every interrupt, and check in ide_timer_expiry() that we have not already handled a new interrupt before running the expiry function. Signed-off-by: Suleiman Souhlal Signed-off-by: Bartlomiej Zolnierkiewicz commit 50c9cc2e540aeaab78ab548a8d42568977c6844f Author: Jaroslav Kysela Date: Tue Apr 10 13:26:48 2007 -0700 [NETFILTER]: ipt_CLUSTERIP: fix oops in checkentry function The clusterip_config_find_get() already increases entries reference counter, so there is no reason to do it twice in checkentry() callback. This causes the config to be freed before it is removed from the list, resulting in a crash when adding the next rule. Signed-off-by: Jaroslav Kysela Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit ec759a2b383b50950be37fbe470c4cc2ca18e2ce Author: Larry Finger Date: Sat Apr 7 14:11:03 2007 -0500 [PATCH] bcm43xx: Fix PPC machine checks and match loopback gain specs The specifications for loopback_gain calculation and for G PHY initialization have been updated. This patch implements them and fixes a machine check error that occurs for PPC architecture with a phy->rev of 1. Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit 81e880064dd32b3efdc41ad4cc2416c4744693ee Author: Larry Finger Date: Sat Apr 7 13:54:35 2007 -0500 [PATCH] bcm43xx: Fix 802.11b/g scan limits to match regulatory reqs In 802.11b/g mode, bcm43xx actively scans channels 1-14 no matter what locale has been set, either in the sprom or by the locale option. This behaviorviolates regulatory rules everywhere in the world except Japan. This patch changes the default range to the correct value if the locale has been set, and to channels 1-13 if no locale has been set. Signed-off-by: Larry Finger Signed-off-by: John W. Linville commit 92b3e2e9253a9f4c9224071842fd263c334dece0 Author: Daniel Drake Date: Tue Apr 3 23:17:37 2007 +0100 [PATCH] zd1211rw: Fix E2P_PHY_REG patching Due to conflicting/confusing defines in the vendor driver, we were reading E2P_PHY_REG from the wrong location. CR157 patching was slightly incorrect in that the vendor driver only patches in an 8-bit value, whereas we were patching 24 bits. Additionally, CR157 patching was happening on both zd1211 and zd1211b, but this should only happen on zd1211. Signed-off-by: Daniel Drake Signed-off-by: Ulrich Kunitz Signed-off-by: John W. Linville commit 6371ea3d48e17d4638a91a4a1e0364e56204e418 Author: Michael S. Tsirkin Date: Tue Apr 10 18:32:42 2007 +0300 IPoIB/cm: Fix DMA direction typo Receive buffers need to be mapped with DMA_FROM_DEVICE. Incorrectly mapping with DMA_TO_DEVICE causes a hard lock on ppc64 machines with an IOMMU. This fixes Signed-off-by: Michael S. Tsirkin Signed-off-by: Roland Dreier commit ae6ead4623bfbc57f3945ff86f27e51811e2e91b Author: Daniel Drake Date: Sun Mar 11 19:54:11 2007 +0000 [PATCH] zd1211rw: Reject AL2230S devices zd1211rw currently detects AL2230S-based devices as AL2230, and hence programs the RF incorrectly. Transmit silently fails on this misconfiguration. After this patch, AL2230S devices are rejected with an error message, to avoid any confusion with an apparent driver bug. Signed-off-by: Daniel Drake Signed-off-by: John W. Linville commit 52ea0718ea506df0915eacedb439e65c5f214e0e Author: Wang Zhenyu Date: Tue Apr 10 09:42:48 2007 +0800 [AGPGART] intel_agp: fix G965 GTT size detect On G965, I810_PGETBL_CTL is a mmio offset, but we wrongly take it as pci config space offset in detecting GTT size. This one line patch fixs this. Signed-off-by: Wang Zhenyu Signed-off-by: Dave Jones commit 15d33c070ddde99f7368e6b17b71d22c866f97d9 Author: David S. Miller Date: Mon Apr 9 13:23:14 2007 -0700 [TCP]: slow_start_after_idle should influence cwnd validation too For the cases that slow_start_after_idle are meant to deal with, it is almost a certainty that the congestion window tests will think the connection is application limited and we'll thus decrease the cwnd there too. This defeats the whole point of setting slow_start_after_idle to zero. So test it there too. We do not cancel out the entire tcp_cwnd_validate() function so that if the sysctl is changed we still have the validation state maintained. Signed-off-by: David S. Miller commit 699784b7614ce61b16a075445b8e5b6c379c5086 Author: Herbert Xu Date: Mon Apr 9 11:51:15 2007 -0700 [SC92031]: Fix priv->lock context The spin_lock calls made in dev->open and dev->close must disable BH since open/close are made in process context. Conversely, the call in dev->hard_start_xmit does not need to disable BH since it is already executing with BH disabled. Signed-off-by: Herbert Xu Signed-off-by: David S. Miller commit bb8a954f27ed8fb8f57e80e6b63d837cfdcad689 Author: Patrick McHardy Date: Mon Apr 9 11:42:25 2007 -0700 [NET_SCHED]: cls_tcindex: fix compatibility breakage Userspace uses an integer for TCA_TCINDEX_SHIFT, the kernel was changed to expect and use a u16 value in 2.6.11, which broke compatibility on big endian machines. Change back to use int. Reported by Ole Reinartz Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit 199c1167f5e8123a9b0a9ab1e8b78a6aa4b2733f Author: Stefan Richter Date: Thu Mar 22 00:40:06 2007 +0100 ieee1394: change deprecation status of dv1394 Nobody ported ffmpeg from dv1394 to rawiso yet, and there is no justification to remove dv1394 right now. Nevertheless, a strong deprecation of this ABI makes a lot of sense, especially as Kristian H's drivers shape up to be an attractive alternative to the existing ones. But we don't have a schedule at the moment. Signed-off-by: Stefan Richter commit c2481cc4a8727141474472cb1301fce989ce0865 Author: Andrew Morton Date: Sun Apr 8 16:04:04 2007 -0700 [PATCH] i386: irqbalance_disable() section fix WARNING: arch/i386/kernel/built-in.o - Section mismatch: reference to .init.text:irqbalance_disable from .text between 'quirk_intel_irqbalance' (at offset 0x80a5) and 'i8237A_suspend' Cc: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit c993c7355df55283bc9a539652be44cd81b8c6dd Author: Andrew Morton Date: Sun Apr 8 16:04:03 2007 -0700 [PATCH] x86_64 early quirks: fix early_qrk[] section tag WARNING: arch/x86_64/kernel/built-in.o - Section mismatch: reference to .init.text:nvidia_bugs from .data between 'early_qrk' (at offset 0x8428) and 'enable_cpu_hotplug' WARNING: arch/x86_64/kernel/built-in.o - Section mismatch: reference to .init.text:via_bugs from .data between 'early_qrk' (at offset 0x8438) and 'enable_cpu_hotplug' WARNING: arch/x86_64/kernel/built-in.o - Section mismatch: reference to .init.text:ati_bugs from .data between 'early_qrk' (at offset 0x8448) and 'enable_cpu_hotplug' The compiler is putting it into .data because the __initdata is in the wrong place. Cc: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b6d2cccb55b518956a7de75182757276a2057869 Author: David Brownell Date: Sun Apr 8 16:04:02 2007 -0700 [PATCH] omap_cf: oops-on-suspend fix Convert omap_cf into a platform_driver ... this resolves oopsing during suspend/resume. Evidently folk haven't tried suspend/resume on an OSK (the main platform for this driver) since September or so, which is when platform_device learned about suspend_late()/resume_early() and stopped being able to suspend/resume without a platform_driver. Signed-off-by: David Brownell Cc: Dominik Brodowski Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 49f19710512c825aaea73b9207b3a848027cda1d Author: Zachary Amsden Date: Sun Apr 8 16:04:01 2007 -0700 [PATCH] Proper fix for highmem kmap_atomic functions for VMI for 2.6.21 Since lazy MMU batching mode still allows interrupts to enter, it is possible for interrupt handlers to try to use kmap_atomic, which fails when lazy mode is active, since the PTE update to highmem will be delayed. The best workaround is to issue an explicit flush in kmap_atomic_functions case; this is the only way nested PTE updates can happen in the interrupt handler. Thanks to Jeremy Fitzhardinge for noting the bug and suggestions on a fix. This patch gets reverted again when we start 2.6.22 and the bug gets fixed differently. Signed-off-by: Zachary Amsden Cc: Andi Kleen Cc: Jeremy Fitzhardinge Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit a5bfffac645a7b2d8119f8bbae34df5c94832799 Author: Timo Savola Date: Sun Apr 8 16:04:00 2007 -0700 [PATCH] fuse: validate rootmode mount option If rootmode isn't valid, we hit the BUG() in fuse_init_inode. Now EINVAL is returned. Signed-off-by: Timo Savola Signed-off-by: Miklos Szeredi Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 4598af33d9143942f00cf7692b247027aba35316 Author: Wang Zhenyu Date: Mon Apr 9 08:51:36 2007 +0800 [AGPGART] intel_agp: PCI id update for Intel 965GM Update PCI id info for Intel 965GM chipset. Signed-off-by: Wang Zhenyu Signed-off-by: Dave Jones commit d354d2f4a6fc1b722c2e464a8b3cfd2f6afb304b Author: Linus Torvalds Date: Sat Apr 7 10:18:33 2007 -0700 sched.c: Remove unused variable 'relative' Getting rid of the p->children printout in show_task() left behind an unused variable. Signed-off-by: Linus Torvalds commit 35f6f753b79705bc4b62da5dcc218d75ffa88370 Author: Ingo Molnar Date: Fri Apr 6 21:18:06 2007 +0200 [PATCH] sched: get rid of p->children use in show_task() the p->parent PID printout gives us all the information about the task tree that we need - the eldest_child()/older_sibling()/ younger_sibling() printouts are mostly historic and i do not remember ever having used those fields. (IMO in fact they confuse the SysRq-T output.) So remove them. This code has sentimental value though, those fields and printouts are one of the oldest ones still surviving from Linux v0.95's kernel/sched.c: if (p->p_ysptr || p->p_osptr) printk(" Younger sib=%d, older sib=%d\n\r", p->p_ysptr ? p->p_ysptr->pid : -1, p->p_osptr ? p->p_osptr->pid : -1); else printk("\n\r"); written 15 years ago, in early 1992. Signed-off-by: Ingo Molnar Signed-off-by: Linus 'snif' Torvalds commit 7f30e49ee1c2c1e95ce9d2ccce5221ddb793dd60 Author: Tejun Heo Date: Sat Apr 7 14:59:41 2007 +0900 [PATCH] irq-devres: fix failure path of devm_request_irq() devres should be deallocated with devres_free() not kfree(). This bug corrupts slab on IRQ request failure. Fix it. Signed-off-by: Tejun Heo Cc: Andrew Morton Cc: Greg KH Signed-off-by: Linus Torvalds commit 995f054f2a342f8505fed4f8395d12c0f5966414 Author: Ingo Molnar Date: Sat Apr 7 12:05:00 2007 +0200 [PATCH] high-res timers: resume fix Soeren Sonnenburg reported that upon resume he is getting this backtrace: [] smp_apic_timer_interrupt+0x57/0x90 [] retrigger_next_event+0x0/0xb0 [] apic_timer_interrupt+0x28/0x30 [] retrigger_next_event+0x0/0xb0 [] __kfifo_put+0x8/0x90 [] on_each_cpu+0x35/0x60 [] clock_was_set+0x18/0x20 [] timekeeping_resume+0x7c/0xa0 [] __sysdev_resume+0x11/0x80 [] sysdev_resume+0x47/0x80 [] device_power_up+0x5/0x10 it turns out that on resume we mistakenly re-enable interrupts too early. Do the timer retrigger only on the current CPU. Signed-off-by: Ingo Molnar Acked-by: Thomas Gleixner Acked-by: Soeren Sonnenburg Signed-off-by: Linus Torvalds commit b8fa2f3a82069304acac1f9e957d491585f4f49a Author: Michael Chan Date: Fri Apr 6 17:35:37 2007 -0700 [TG3]: Fix crash during tg3_init_one(). The driver will crash when the chip has been initialized by EFI before tg3_init_one(). In this case, the driver will call tg3_chip_reset() before allocating consistent memory. The bug is fixed by checking for tp->hw_status before accessing it during tg3_chip_reset(). Signed-off-by: Michael Chan Signed-off-by: David S. Miller commit 2e0d232bff31973f58c33412b45fce51b6770698 Author: Mike Habeck Date: Fri Apr 6 12:04:39 2007 -0500 [IA64] SGI Altix : fix pcibr_dmamap_ate32() bug On a SGI Altix TIOCP based PCI bus we need to include the ATE_PIO attribute bit if we're mapping a 32bit MSI address. Signed-off-by: Mike Habeck Signed-off-by: Tony Luck commit 8a3a78d1498c4c13c3ec235a4b6338624b6ef68d Author: Venki Pallipadi Date: Fri Apr 6 10:04:49 2007 -0700 [IA64] Fix CPU freq displayed in /proc/cpuinfo My patch: git commit=95235ca2c20ac0b31a8eb39e2d599bcc3e9c9a10 introduced a bug in IA64 cpuinfo output. Patch changed the proc_freq from 1HZ resolution to 1KHz resolution, but left format string unchanged at " %lu.%06lu". Below is the fix. Thanks to Bjorn for catching this. Signed-off-by: Venkatesh Pallipadi Signed-off-by: Tony Luck commit 9438a1218eceb1b3891d242da01bc3cc82cb7342 Author: Ishimatsu Yasuaki Date: Fri Apr 6 16:51:12 2007 +0900 [IA64] Fix wrong assumption about irq and vector in msi_ia64.c This patch fixes a wrong assumption in ia64 MSI code that IRQ equals vector. Signed-off-by: Kenji Kaneshige Signed-off-by: Yasuaki Ishimatsu Signed-off-by: Tony Luck commit fbff71e1ec1c4695d51d496a53228ecdcb6361eb Author: Russ Anderson Date: Fri Mar 30 17:13:18 2007 -0500 [IA64] BTE error timer fix The bte recovery_timer was not being set correctly. Signed-off-by: Russ Anderson Signed-off-by: Tony Luck commit 161980f4c6b846625efe6227420175cb41477de3 Author: David S. Miller Date: Fri Apr 6 11:42:27 2007 -0700 [IPV6]: Revert recent change to rt6_check_dev(). This reverts a0d78ebf3a0e33a1aeacf2fc518ad9273d6a1c2f It causes pings to link-local addresses to fail. Signed-off-by: David S. Miller commit 254d0d24e31c3df64ccfff349c9aa9d1e5989819 Author: Patrick McHardy Date: Thu Apr 5 16:03:33 2007 -0700 [XFRM]: beet: fix IP option decapsulation Beet mode looks for the beet pseudo header after the outer IP header, which is wrong since that is followed by the ESP header. Additionally it needs to adjust the packet length after removing the pseudo header and point the data pointer to the real data location. Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit d4b1e840629562953d81c9fe0a3a67473f3d993c Author: Patrick McHardy Date: Thu Apr 5 15:59:41 2007 -0700 [XFRM]: beet: fix beet mode decapsulation Beet mode decapsulation fails to properly set up the skb pointers, which only works by accident in combination with CONFIG_NETFILTER, since in that case the skb is fixed up in xfrm4_input before passing it to the netfilter hooks. Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit 04fef9893a1fa5d429522e09bc9591736408f2e8 Author: Patrick McHardy Date: Thu Apr 5 15:54:39 2007 -0700 [XFRM]: beet: use IPOPT_NOP for option padding draft-nikander-esp-beet-mode-07.txt states "The padding MUST be filled with NOP options as defined in Internet Protocol [1] section 3.1 Internet header format.", so do that. Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit c5027c9a896fbe05367fb893a274deca5114bfd0 Author: Patrick McHardy Date: Thu Apr 5 15:54:02 2007 -0700 [XFRM]: beet: fix IP option encapsulation Beet mode calculates an incorrect value for the transport header location when IP options are present, resulting in encapsulation errors. The correct location is 4 or 8 bytes before the end of the original IP header, depending on whether the pseudo header is padded. Signed-off-by: Patrick McHardy Signed-off-by: David S. Miller commit 1d426d6418d1914b592c9c307c02e488d9182fa8 Author: Erez Zilber Date: Sun Apr 1 12:53:43 2007 +0200 IB/iser: Don't defer connection failure notification to workqueue When a connection is terminated asynchronously from the iSCSI layer's perspective, iSER needs to notify the iSCSI layer that the connection has failed. This is done using a workqueue (switched to from the iSER tasklet context). Meanwhile, the connection object (that holds the work struct) is released. If the workqueue function wasn't called yet, it will be called later with a NULL pointer, which will crash the kernel. The context switch (tasklet to workqueue) is not required, and everything can be done from the iSER tasklet. This eliminates the NULL work struct bug (and simplifies the code). Signed-off-by: Erez Zilber Signed-off-by: Roland Dreier commit 8da7d1bae512aee155ef02f7ab1266358842e1fd Author: Adam Kropelin Date: Thu Apr 5 16:06:30 2007 +0200 HID: Do not discard truncated input reports Truncated reports should not be discarded since it prevents buggy devices from communicating with userspace. Prior to the regession introduced in 2.6.20, a shorter-than-expected report in hid_input_report() was passed thru after having the missing bytes cleared. This behavior was established over a few patches in the 2.6.early-teens days, including commit cd6104572bca9e4afe0dcdb8ecd65ef90b01297b. This patch restores the previous behavior and fixes the regression. Signed-off-by: Adam Kropelin Signed-off-by: Jiri Kosina