commit 7e27d6e778cd87b6f2415515d7127eba53fe5d02 Author: Linus Torvalds Date: Fri Jun 11 19:14:04 2010 -0700 Linux 2.6.35-rc3 commit 4cea8706c39023f5f721c88dd0ae17a097a39c98 Merge: 7ae1277 e79aa86 Author: Linus Torvalds Date: Fri Jun 11 14:20:03 2010 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: wimax/i2400m: fix missing endian correction read in fw loader net8139: fix a race at the end of NAPI pktgen: Fix accuracy of inter-packet delay. pkt_sched: gen_estimator: add a new lock net: deliver skbs on inactive slaves to exact matches ipv6: fix ICMP6_MIB_OUTERRORS r8169: fix mdio_read and update mdio_write according to hw specs gianfar: Revive the driver for eTSEC devices (disable timestamping) caif: fix a couple range checks phylib: Add support for the LXT973 phy. net: Print num_rx_queues imbalance warning only when there are allocated queues commit 7ae1277a5202109a31d8f81ac99d4a53278dab84 Merge: b25b550 85a0e75 Author: Linus Torvalds Date: Fri Jun 11 14:19:45 2010 -0700 Merge branch 'pm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/suspend-2.6 * 'pm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/suspend-2.6: PM / x86: Save/restore MISC_ENABLE register commit b25b550bb153626df6a48eb8583e923e3dfcf64a Merge: eda0547 6f902af Author: Linus Torvalds Date: Fri Jun 11 14:18:47 2010 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mason/btrfs-unstable * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mason/btrfs-unstable: Btrfs: The file argument for fsync() is never null Btrfs: handle ERR_PTR from posix_acl_from_xattr() Btrfs: avoid BUG when dropping root and reference in same transaction Btrfs: prohibit a operation of changing acl's mask when noacl mount option used Btrfs: should add a permission check for setfacl Btrfs: btrfs_lookup_dir_item() can return ERR_PTR Btrfs: btrfs_read_fs_root_no_name() returns ERR_PTRs Btrfs: unwind after btrfs_start_transaction() errors Btrfs: btrfs_iget() returns ERR_PTR Btrfs: handle kzalloc() failure in open_ctree() Btrfs: handle error returns from btrfs_lookup_dir_item() Btrfs: Fix BUG_ON for fs converted from extN Btrfs: Fix null dereference in relocation.c Btrfs: fix remap_file_pages error Btrfs: uninitialized data is check_path_shared() Btrfs: fix fallocate regression Btrfs: fix loop device on top of btrfs commit eda054770e5cd0e9ee1568dfcbcf39f9ade4f545 Merge: 891a989 837c4ef Author: Linus Torvalds Date: Fri Jun 11 14:15:44 2010 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6 * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6: PCI: clear bridge resource range if BIOS assigned bad one PCI: hotplug/cpqphp, fix NULL dereference Revert "PCI: create function symlinks in /sys/bus/pci/slots/N/" PCI: change resource collision messages from KERN_ERR to KERN_INFO commit 837c4ef13c44296bb763a0ca0e84a076592474cf Author: Yinghai Lu Date: Thu Jun 3 13:43:03 2010 -0700 PCI: clear bridge resource range if BIOS assigned bad one Yannick found that video does not work with 2.6.34. The cause of this bug was that the BIOS had assigned the wrong range to the PCI bridge above the video device. Before 2.6.34 the kernel would have shrunk the size of the bridge window, but since d65245c PCI: don't shrink bridge resources the kernel will avoid shrinking BIOS ranges. So zero out the old range if we fail to claim it at boot time; this will cause us to allocate a new range at startup, restoring the 2.6.34 behavior. Fixes regression https://bugzilla.kernel.org/show_bug.cgi?id=16009. Reported-by: Yannick Acked-by: Bjorn Helgaas Signed-off-by: Yinghai Lu Signed-off-by: Jesse Barnes commit a7ef7d1f5e898984c479e8c41ca702141bbadc78 Author: Jiri Slaby Date: Wed Jun 9 22:31:13 2010 +0200 PCI: hotplug/cpqphp, fix NULL dereference There are devices out there which are PCI Hot-plug controllers with compaq PCI IDs, but are not bridges, hence have pdev->subordinate NULL. But cpqphp expects the pointer to be non-NULL. Add a check to the probe function to avoid oopses like: BUG: unable to handle kernel NULL pointer dereference at 00000050 IP: [] cpqhpc_probe+0x951/0x1120 [cpqphp] *pdpt = 0000000033779001 *pde = 0000000000000000 ... The device here was: 00:0b.0 PCI Hot-plug controller [0804]: Compaq Computer Corporation PCI Hotplug Controller [0e11:a0f7] (rev 11) Subsystem: Compaq Computer Corporation Device [0e11:a2f8] Signed-off-by: Jiri Slaby Cc: Greg KH Signed-off-by: Jesse Barnes commit 3be434f0244ee059432f92de7e891ee514f41738 Author: Jesse Barnes Date: Fri Jun 11 13:08:37 2010 -0700 Revert "PCI: create function symlinks in /sys/bus/pci/slots/N/" This reverts commit 75568f8094eb0333e9c2109b23cbc8b82d318a3c. Since they're just a convenience anyway, remove these symlinks since they're causing duplicate filename errors in the wild. Acked-by: Alex Chiang Signed-off-by: Jesse Barnes commit f6d440daebd12be66ea1f834faf2966a49a07bd6 Author: Bjorn Helgaas Date: Thu Jun 3 13:47:18 2010 -0600 PCI: change resource collision messages from KERN_ERR to KERN_INFO We can often deal with PCI resource issues by moving devices around. In that case, there's no point in alarming the user with messages like these. There are many bug reports where the message itself is the only problem, e.g., https://bugs.launchpad.net/ubuntu/+source/linux/+bug/413419 . Signed-off-by: Bjorn Helgaas Signed-off-by: Jesse Barnes commit 6f902af400b2499c80865c62a06fbbd15cf804fd Author: Dan Carpenter Date: Sat May 29 09:49:07 2010 +0000 Btrfs: The file argument for fsync() is never null The "file" argument for fsync is never null so we can remove this check. What drew my attention here is that 7ea8085910e: "drop unused dentry argument to ->fsync" introduced an unconditional dereference at the start of the function and that generated a smatch warning. Signed-off-by: Dan Carpenter Signed-off-by: Chris Mason commit 834e74759a473f8101a273e843d1edec2778801d Author: Dan Carpenter Date: Sat May 29 09:48:35 2010 +0000 Btrfs: handle ERR_PTR from posix_acl_from_xattr() posix_acl_from_xattr() returns both ERR_PTRs and null, but it's OK to pass null values to set_cached_acl() Signed-off-by: Dan Carpenter Signed-off-by: Chris Mason commit 15e7000095e6fc9ad07e476a100c900c72c14225 Author: Sage Weil Date: Mon May 17 17:15:27 2010 +0000 Btrfs: avoid BUG when dropping root and reference in same transaction If btrfs_ioctl_snap_destroy() deletes a snapshot but finishes with end_transaction(), the cleaner kthread may come in and drop the root in the same transaction. If that's the case, the root's refs still == 1 in the tree when btrfs_del_root() deletes the item, because commit_fs_roots() hasn't updated it yet (that happens during the commit). This wasn't a problem before only because btrfs_ioctl_snap_destroy() would commit the transaction before dropping the dentry reference, so the dead root wouldn't get queued up until after the fs root item was updated in the btree. Since it is not an error to drop the root reference and the root in the same transaction, just drop the BUG_ON() in btrfs_del_root(). Signed-off-by: Sage Weil Signed-off-by: Chris Mason commit 731e3d1b4348a96d53de6c084774424dedc64a3b Author: Shi Weihua Date: Tue May 18 00:51:54 2010 +0000 Btrfs: prohibit a operation of changing acl's mask when noacl mount option used when used Posix File System Test Suite(pjd-fstest) to test btrfs, some cases about setfacl failed when noacl mount option used. I simplified used commands in pjd-fstest, and the following steps can reproduce it. ------------------------ # cd btrfs-part/ # mkdir aaa # setfacl -m m::rw aaa <- successed, but not expected by pjd-fstest. ------------------------ I checked ext3, a warning message occured, like as: setfacl: aaa/: Operation not supported Certainly, it's expected by pjd-fstest. So, i compared acl.c of btrfs and ext3. Based on that, a patch created. Fortunately, it works. Signed-off-by: Shi Weihua Signed-off-by: Chris Mason commit 2f26afba46f0ebf155cf9be746496a0304a5b7cf Author: Shi Weihua Date: Tue May 18 00:50:32 2010 +0000 Btrfs: should add a permission check for setfacl On btrfs, do the following ------------------ # su user1 # cd btrfs-part/ # touch aaa # getfacl aaa # file: aaa # owner: user1 # group: user1 user::rw- group::rw- other::r-- # su user2 # cd btrfs-part/ # setfacl -m u::rwx aaa # getfacl aaa # file: aaa # owner: user1 # group: user1 user::rwx <- successed to setfacl group::rw- other::r-- ------------------ but we should prohibit it that user2 changing user1's acl. In fact, on ext3 and other fs, a message occurs: setfacl: aaa: Operation not permitted This patch fixed it. Signed-off-by: Shi Weihua Signed-off-by: Chris Mason commit cf1e99a4e0daa4a5623cd71108509823b9ff2d30 Author: Dan Carpenter Date: Sat May 29 09:47:24 2010 +0000 Btrfs: btrfs_lookup_dir_item() can return ERR_PTR btrfs_lookup_dir_item() can return either ERR_PTRs or null. Signed-off-by: Dan Carpenter Signed-off-by: Chris Mason commit 3140c9a34b44cd4013baae8704fdb34a93a44475 Author: Dan Carpenter Date: Sat May 29 09:44:10 2010 +0000 Btrfs: btrfs_read_fs_root_no_name() returns ERR_PTRs btrfs_read_fs_root_no_name() returns ERR_PTRs on error so I added a check for that. It's not clear to me if it can also return NULL pointers or not so I left the original NULL pointer check as is. Signed-off-by: Dan Carpenter Signed-off-by: Chris Mason commit d327099a23e3d0c8ec09137e9b4b115449d4eb29 Author: Dan Carpenter Date: Sat May 29 09:46:47 2010 +0000 Btrfs: unwind after btrfs_start_transaction() errors This was added by a22285a6a3: "Btrfs: Integrate metadata reservation with start_transaction". If we goto out here then we skip all the unwinding and there are locks still held etc. Signed-off-by: Dan Carpenter Signed-off-by: Chris Mason commit 4cbd1149fbcc351bdf08ab749867d157905d0d35 Author: Dan Carpenter Date: Sat May 29 09:42:19 2010 +0000 Btrfs: btrfs_iget() returns ERR_PTR btrfs_iget() returns an ERR_PTR() on failure and not null. Signed-off-by: Dan Carpenter Signed-off-by: Chris Mason commit 676e4c86391936795c82ccd11ca9671ee6307936 Author: Dan Carpenter Date: Sat May 29 09:43:07 2010 +0000 Btrfs: handle kzalloc() failure in open_ctree() Unwind and return -ENOMEM if the allocation fails here. Signed-off-by: Dan Carpenter Signed-off-by: Chris Mason commit fb4f6f910ca6f58564c31a680ef88940d8192713 Author: Dan Carpenter Date: Sat May 29 09:40:57 2010 +0000 Btrfs: handle error returns from btrfs_lookup_dir_item() If btrfs_lookup_dir_item() fails, we should can just let the mount fail with an error. Signed-off-by: Dan Carpenter Signed-off-by: Chris Mason commit 3bf84a5a834d13e7c5c3e8e5b5c6b26012118dd8 Author: Yan, Zheng Date: Mon May 31 09:04:46 2010 +0000 Btrfs: Fix BUG_ON for fs converted from extN Tree blocks can live in data block groups in FS converted from extN. So it's easy to trigger the BUG_ON. Signed-off-by: Yan Zheng Signed-off-by: Chris Mason commit 046f264f6b3b2cf7e5a1769fc92335d8a9316282 Author: Yan, Zheng Date: Mon May 31 08:58:47 2010 +0000 Btrfs: Fix null dereference in relocation.c Fix a potential null dereference in relocation.c Signed-off-by: Yan Zheng Acked-by: Dan Carpenter Signed-off-by: Chris Mason commit e79aa8671033535c2e9ffc0a68010ae49ed5734c Merge: 349124a a385a53 Author: David S. Miller Date: Fri Jun 11 12:38:23 2010 -0700 Merge branch 'wimax-2.6.35.y' of git://git.kernel.org/pub/scm/linux/kernel/git/inaky/wimax commit a385a53e659b35ebee604889e21c40e5c336941f Author: Inaky Perez-Gonzalez Date: Fri Jun 11 11:51:20 2010 -0700 wimax/i2400m: fix missing endian correction read in fw loader i2400m_fw_hdr_check() was accessing hardware field bcf_hdr->module_type (little endian 32) without converting to host byte sex. Reported-by: Данилин Михаил Signed-off-by: Inaky Perez-Gonzalez commit 891a9894ee2e17646b29117635d2c7adfb58ce60 Merge: f1f6ea3 607b30f Author: Linus Torvalds Date: Fri Jun 11 09:55:50 2010 -0700 Merge branch 'rc-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild-2.6 * 'rc-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild-2.6: kbuild: Create output directory in Makefile.modbuiltin kbuild: Generate modules.builtin in make modules commit f1f6ea352257e0df33cf0184ba777c293cb6f1d6 Merge: 63c70a0 b83156b Author: Linus Torvalds Date: Fri Jun 11 09:55:21 2010 -0700 Merge branch 'urgent' of git://git.kernel.org/pub/scm/linux/kernel/git/brodo/pcmcia-2.6 * 'urgent' of git://git.kernel.org/pub/scm/linux/kernel/git/brodo/pcmcia-2.6: pcmcia: avoid validate_cis failure on CIS override pcmcia: dev_node removal bugfix pcmcia: yenta_socket.c Remove extra #ifdef CONFIG_YENTA_TI pcmcia: only keep saved I365_CSCINT flag if there is no PCI irq commit 63c70a0d7b59bac08bd14cd24c36f76aafc25de6 Merge: 1082345 2b2300d Author: Linus Torvalds Date: Fri Jun 11 09:52:23 2010 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/sage/ceph-client * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/sage/ceph-client: ceph: try to send partial cap release on cap message on missing inode ceph: release cap on import if we don't have the inode ceph: fix misleading/incorrect debug message ceph: fix atomic64_t initialization on ia64 ceph: fix lease revocation when seq doesn't match ceph: fix f_namelen reported by statfs ceph: fix memory leak in statfs ceph: fix d_subdirs ordering problem commit 058a457ef0ce28d595af53d6103db73332383cbc Author: Miao Xie Date: Thu May 20 07:21:50 2010 +0000 Btrfs: fix remap_file_pages error when we use remap_file_pages() to remap a file, remap_file_pages always return error. It is because btrfs didn't set VM_CAN_NONLINEAR for vma. Signed-off-by: Miao Xie Signed-off-by: Chris Mason commit 0e4dcbef1c0c3e29f9c7f824359445d385b2649a Author: Dan Carpenter Date: Tue Jun 1 08:23:11 2010 +0000 Btrfs: uninitialized data is check_path_shared() refs can be used with uninitialized data if btrfs_lookup_extent_info() fails on the first pass through the loop. In the original code if that happens then check_path_shared() probably returns 1, this patch changes it to return 1 for safety. Signed-off-by: Dan Carpenter Signed-off-by: Chris Mason commit 836097797236fd727f82ec2f3f376ac41a430876 Author: Josef Bacik Date: Mon Jun 7 18:26:37 2010 +0000 Btrfs: fix fallocate regression Seems that when btrfs_fallocate was converted to use the new ENOSPC stuff we dropped passing the mode to the function that actually does the preallocation. This breaks anybody who wants to use FALLOC_FL_KEEP_SIZE. Thanks, Signed-off-by: Josef Bacik Signed-off-by: Chris Mason commit 4a001071d3549f596c7c3736c5dda8a3a4aba9ed Author: Miao Xie Date: Mon Jun 7 03:38:51 2010 +0000 Btrfs: fix loop device on top of btrfs We cannot use the loop device which has been connected to a file in the btrf The reproduce steps is following: # dd if=/dev/zero of=vdev0 bs=1M count=1024 # losetup /dev/loop0 vdev0 # mkfs.btrfs /dev/loop0 ... failed to zero device start -5 The reason is that the btrfs don't implement either ->write_begin or ->write the VFS API, so we fix it by setting ->write to do_sync_write(). Signed-off-by: Miao Xie Signed-off-by: Chris Mason commit 349124a00754129a5f1e43efa84733e364bf3749 Author: Figo.zhang Date: Mon Jun 7 21:13:22 2010 +0000 net8139: fix a race at the end of NAPI fix a race at the end of NAPI complete processing, it had better do __napi_complete() first before re-enable interrupt. Signed-off-by:Figo.zhang Signed-off-by: David S. Miller commit 07a0f0f07a68014c92c752a5598102372bddf46e Author: Daniel Turull Date: Thu Jun 10 23:08:11 2010 -0700 pktgen: Fix accuracy of inter-packet delay. This patch correct a bug in the delay of pktgen. It makes sure the inter-packet interval is accurate. Signed-off-by: Daniel Turull Signed-off-by: Robert Olsson Signed-off-by: David S. Miller commit ae638c47dc040b8def16d05dc6acdd527628f231 Author: Eric Dumazet Date: Tue Jun 8 23:39:10 2010 +0000 pkt_sched: gen_estimator: add a new lock gen_kill_estimator() / gen_new_estimator() is not always called with RTNL held. net/netfilter/xt_RATEEST.c is one user of these API that do not hold RTNL, so random corruptions can occur between "tc" and "iptables". Add a new fine grained lock instead of trying to use RTNL in netfilter. Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit 597a264b1a9c7e36d1728f677c66c5c1f7e3b837 Author: John Fastabend Date: Thu Jun 3 09:30:11 2010 +0000 net: deliver skbs on inactive slaves to exact matches Currently, the accelerated receive path for VLAN's will drop packets if the real device is an inactive slave and is not one of the special pkts tested for in skb_bond_should_drop(). This behavior is different then the non-accelerated path and for pkts over a bonded vlan. For example, vlanx -> bond0 -> ethx will be dropped in the vlan path and not delivered to any packet handlers at all. However, bond0 -> vlanx -> ethx and bond0 -> ethx will be delivered to handlers that match the exact dev, because the VLAN path checks the real_dev which is not a slave and netif_recv_skb() doesn't drop frames but only delivers them to exact matches. This patch adds a sk_buff flag which is used for tagging skbs that would previously been dropped and allows the skb to continue to skb_netif_recv(). Here we add logic to check for the deliver_no_wcard flag and if it is set only deliver to handlers that match exactly. This makes both paths above consistent and gives pkt handlers a way to identify skbs that come from inactive slaves. Without this patch in some configurations skbs will be delivered to handlers with exact matches and in others be dropped out right in the vlan path. I have tested the following 4 configurations in failover modes and load balancing modes. # bond0 -> ethx # vlanx -> bond0 -> ethx # bond0 -> vlanx -> ethx # bond0 -> ethx | vlanx -> -- Signed-off-by: John Fastabend Signed-off-by: David S. Miller commit 2b2300d62ea413bec631d5b880effa2cc5363acb Author: Sage Weil Date: Wed Jun 9 16:52:04 2010 -0700 ceph: try to send partial cap release on cap message on missing inode If we have enough memory to allocate a new cap release message, do so, so that we can send a partial release message immediately. This keeps us from making the MDS wait when the cap release it needs is in a partially full release message. If we fail because of ENOMEM, oh well, they'll just have to wait a bit longer. Signed-off-by: Sage Weil commit 3d7ded4d81d807c2f75f310a8d74a5d72be13a1b Author: Sage Weil Date: Wed Jun 9 16:47:10 2010 -0700 ceph: release cap on import if we don't have the inode If we get an IMPORT that give us a cap, but we don't have the inode, queue a release (and try to send it immediately) so that the MDS doesn't get stuck waiting for us. Signed-off-by: Sage Weil commit 9dbd412f56c453f15014396c6024b895c1485ccb Author: Sage Weil Date: Thu Jun 10 13:21:20 2010 -0700 ceph: fix misleading/incorrect debug message Nothing is released here: the caps message is simply ignored in this case. Signed-off-by: Sage Weil commit 00d5643e7c5ed4ae1bb0b385fe2f41bb951cc3cd Author: Jeff Mahoney Date: Thu Jun 10 11:13:58 2010 -0400 ceph: fix atomic64_t initialization on ia64 bdi_seq is an atomic_long_t but we're using ATOMIC_INIT, which causes build failures on ia64. This patch fixes it to use ATOMIC_LONG_INIT. Signed-off-by: Jeff Mahoney Signed-off-by: Sage Weil commit 1082345290dbc66c19877662cb24c18ee4ae1296 Author: Catalin Marinas Date: Thu Jun 10 17:02:12 2010 +0100 sata_sil24: Use memory barriers before issuing commands The data in the cmd_block buffers may reach the main memory after the writel() to the device ports. This patch introduces two calls to wmb() to ensure the relative ordering. Signed-off-by: Catalin Marinas Tested-by: Colin Tuckley Cc: Tejun Heo Cc: Jeff Garzik Signed-off-by: Jeff Garzik commit 14e45c15e1dcc4d972b41343661683efd60fed72 Author: Dan Carpenter Date: Wed Jun 9 14:01:54 2010 +0200 sata_sil24: memset() overflow cb->atapi.cdb is an array of 16 u8 elements. The call too memset() would set the first part of the sge array to zero as well. It's not a packed struct. This one has been around for five years. I found it with Smatch. I think the reason no one has seen it before is because we normally call sil24_fill_sg() and that overwrites sge with proper information? Signed-off-by: Dan Carpenter Signed-off-by: Jeff Garzik commit 7908a9e5fc3f9a679b1777ed231a03636c068446 Merge: 8fade6a 07dc726 Author: Linus Torvalds Date: Thu Jun 10 10:53:14 2010 -0700 Merge branch 'kvm-updates/2.6.35' of git://git.kernel.org/pub/scm/virt/kvm/kvm * 'kvm-updates/2.6.35' of git://git.kernel.org/pub/scm/virt/kvm/kvm: KVM: read apic->irr with ioapic lock held KVM: ia64: Add missing spin_unlock in kvm_arch_hardware_enable() KVM: Fix order passed to iommu_unmap KVM: MMU: Remove user access when allowing kernel access to gpte.w=0 page KVM: MMU: invalidate and flush on spte small->large page size change KVM: SVM: Implement workaround for Erratum 383 KVM: SVM: Handle MCEs early in the vmexit process KVM: powerpc: fix init/exit annotation commit 07dc7263b99e4ddad2b4c69765a428ccb7d48938 Author: Marcelo Tosatti Date: Wed Jun 2 11:26:26 2010 -0300 KVM: read apic->irr with ioapic lock held Read ioapic->irr inside ioapic->lock protected section. KVM-Stable-Tag Signed-off-by: Marcelo Tosatti commit 8fade6aff706b2ae3f02864b4023d34b002cd226 Merge: e1f38e2 6db40cf Author: Linus Torvalds Date: Thu Jun 10 10:26:42 2010 -0700 Merge branch 'for-linus2' of git://git.kernel.dk/linux-2.6-block * 'for-linus2' of git://git.kernel.dk/linux-2.6-block: pipe: fix check in "set size" fcntl pipe: fix pipe buffer resizing block: remove duplicate BUG_ON() in bd_finish_claiming() block: bd_start_claiming cleanup block: bd_start_claiming fix module refcount commit 6db40cf047a8723095caf79f5569d21b388d7b31 Author: Miklos Szeredi Date: Wed Jun 9 09:27:57 2010 +0200 pipe: fix check in "set size" fcntl As it stands this check compares the number of pages to the page size. This makes no sense and makes the fcntl fail in almost any sane case. Fix it by checking if nr_pages is not zero (it can become zero only if arg is too big and round_pipe_size() overflows). Signed-off-by: Miklos Szeredi Signed-off-by: Jens Axboe commit 1d862f41222b7f385bada9f85a67ca5592ffd33e Author: Miklos Szeredi Date: Tue Jun 8 16:28:45 2010 +0200 pipe: fix pipe buffer resizing pipe_set_size() needs to copy pipe bufs from the old circular buffer to the new. The current code gets this wrong in multiple ways, resulting in oops. Test program is available here: http://www.kernel.org/pub/linux/kernel/people/mszeredi/piperesize/ Signed-off-by: Miklos Szeredi Signed-off-by: Jens Axboe commit 3e6c05052c262ebe7fdd85e75e9d4f956cdd8d82 Author: Jens Axboe Date: Mon Jun 7 20:17:38 2010 +0200 block: remove duplicate BUG_ON() in bd_finish_claiming() We do the same BUG_ON() just a line later when calling into __bd_abort_claiming(). Reported-by: Tejun Heo Signed-off-by: Jens Axboe commit b0018361c3f934858592cbbb5e1a4f318c2a70ed Author: Nick Piggin Date: Wed May 26 01:51:19 2010 +1000 block: bd_start_claiming cleanup I don't like the subtle multi-context code in bd_claim (ie. detects where it has been called based on bd_claiming). It seems clearer to just require a new function to finish a 2-part claim. Also improve commentary in bd_start_claiming as to how it should be used. Signed-off-by: Nick Piggin Acked-by: Tejun Heo Signed-off-by: Jens Axboe commit cf3425707ed9ce0d5ebaba20bc3d22dd39e52f2f Author: Nick Piggin Date: Wed May 26 01:50:21 2010 +1000 block: bd_start_claiming fix module refcount bd_start_claiming has an unbalanced module_put introduced in 6b4517a79. Signed-off-by: Nick Piggin Acked-by: Tejun Heo Signed-off-by: Jens Axboe commit e1f38e2cea199ef2b8e117506fef8abbecbaae5e Merge: 85ca788 2d0a1db Author: Linus Torvalds Date: Thu Jun 10 09:34:15 2010 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6 * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6: ALSA: sound/spi: patch for the unuseful variable removal ALSA: hda - Add SSID table for iMac7,1. ALSA: hda - Add SSID table for MacBookAir1,1 ALSA: hda - Add SSID table for MacBookAir2,1 ALSA: atmel: set "channel A event" output to debug commit 85ca7886f566ae387a57a37bc0ffab25e3e117b5 Merge: 7c8d20d 1610682 Author: Linus Torvalds Date: Thu Jun 10 09:30:09 2010 -0700 Merge branch 'perf-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'perf-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: tracing: Fix null pointer deref with SEND_SIG_FORCED perf: Fix signed comparison in perf_adjust_period() powerpc/oprofile: fix potential buffer overrun in op_model_cell.c perf symbols: Set the DSO long name when using symbol_conf.vmlinux_name commit 7c8d20d40f29e7c08332d406d7a65678dece4627 Merge: 63a07cb 9a40ac8 Author: Linus Torvalds Date: Thu Jun 10 07:35:41 2010 -0700 Merge master.kernel.org:/home/rmk/linux-2.6-arm * master.kernel.org:/home/rmk/linux-2.6-arm: ARM: 6164/1: Add kto and kfrom to input operands list. ARM: 6166/1: Proper prefetch abort handling on pre-ARMv6 ARM: 6165/1: trap overflows on highmem pages from kmap_atomic when debugging ARM: 6152/1: ux500 make it possible to disable localtimers [ARM] pxa/spitz: Correctly register WM8750 [ARM] pxa/palmtc: storage class should be before const qualifier ARM: 6146/1: sa1111: Prevent deadlock in resume path ARM: 6145/1: ux500 MTU clockrate correction ARM: 6144/1: TCM memory bug freeing bug ARM: VFP: Fix vfp_put_double() for d16-d31 commit 607b30fcf20c6e5339591692db6ffa0b15e041a0 Author: Michal Marek Date: Thu Jun 10 12:23:08 2010 +0200 kbuild: Create output directory in Makefile.modbuiltin Reported-by: Stephen Rothwell Signed-off-by: Michal Marek commit 2d0a1dbf5715e97e68d33ca5a21a3353c7811215 Merge: ab66996 ff8bd64 Author: Takashi Iwai Date: Thu Jun 10 11:08:53 2010 +0200 Merge branch 'fix/misc' into for-linus commit 00d9d6a185de89edc0649ca4ead58f0283dfcbac Author: Eric Dumazet Date: Mon Jun 7 22:24:44 2010 +0000 ipv6: fix ICMP6_MIB_OUTERRORS In commit 1f8438a85366 (icmp: Account for ICMP out errors), I did a typo on IPV6 side, using ICMP6_MIB_OUTMSGS instead of ICMP6_MIB_OUTERRORS Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit 81a95f049962ec20a9aed888e676208b206f0f2e Author: Timo Teräs Date: Wed Jun 9 17:31:48 2010 -0700 r8169: fix mdio_read and update mdio_write according to hw specs Realtek confirmed that a 20us delay is needed after mdio_read and mdio_write operations. Reduce the delay in mdio_write, and add it to mdio_read too. Also add a comment that the 20us is from hw specs. Signed-off-by: Timo Teräs Acked-by: Francois Romieu Signed-off-by: David S. Miller commit ebedb22d2bacdcf577348eae77ab8f27c9db8ee8 Merge: 619baba 08c801f Author: David S. Miller Date: Wed Jun 9 16:28:25 2010 -0700 Merge branch 'num_rx_queues' of git://kernel.ubuntu.com/rtg/net-2.6 commit 619baba195d92ec39379e24c151f4a640898d140 Author: Anton Vorontsov Date: Wed Jun 9 16:27:08 2010 -0700 gianfar: Revive the driver for eTSEC devices (disable timestamping) Since commit cc772ab7cdcaa24d1fae332d92a1602788644f7a ("gianfar: Add hardware RX timestamping support"), the driver no longer works on at least MPC8313ERDB and MPC8568EMDS boards (and possibly much more boards as well). That's how MPC8313 Reference Manual describes RCTRL_TS_ENABLE bit: Timestamp incoming packets as padding bytes. PAL field is set to 8 if the PAL field is programmed to less than 8. Must be set to zero if TMR_CTRL[TE]=0. I see that the commit above sets this bit, but it doesn't handle TMR_CTRL. Manfred probably had this bit set by the firmware for his boards. But obviously this isn't true for all boards in the wild. Also, I recall that Freescale BSPs were explicitly disabling the timestamping because of a performance drop. For now, the best way to deal with this is just disable the timestamping, and later we can discuss proper device tree bindings and implement enabling this feature via some property. Signed-off-by: Anton Vorontsov Signed-off-by: David S. Miller commit aea34e7ae7a40bc72f9f11b5658160dfb4b90c48 Author: Dan Carpenter Date: Mon Jun 7 04:51:58 2010 +0000 caif: fix a couple range checks The extra ! character means that these conditions are always false. Signed-off-by: Dan Carpenter Acked-by: Sjur Braendeland Signed-off-by: David S. Miller commit e13647c158307f0e7ff5fc5bec34731f28917595 Author: Richard Cochran Date: Mon Jun 7 05:39:32 2010 +0000 phylib: Add support for the LXT973 phy. This patch implements a work around for Erratum 5, "3.3 V Fiber Speed Selection." If the hardware wiring does not respect this erratum, then fiber optic mode will not work properly. Signed-off-by: Richard Cochran Signed-off-by: David S. Miller commit 2da30e703c5a56e27249fa8b8607708123fa52f5 Author: Michal Marek Date: Mon Jun 7 22:22:12 2010 +0200 kbuild: Generate modules.builtin in make modules Generating the file in make modules_install was broken as well, because it didn't work in a readonly filesystem and otherwise it generated a root-owned file which is not wanted. Reported-by: Rafael J. Wysocki Signed-off-by: Michal Marek commit 08c801f8d45387a1b46066aad1789a9bb9c4b645 Author: Tim Gardner Date: Tue Jun 8 17:51:27 2010 -0600 net: Print num_rx_queues imbalance warning only when there are allocated queues BugLink: http://bugs.launchpad.net/bugs/591416 There are a number of network drivers (bridge, bonding, etc) that are not yet receive multi-queue enabled and use alloc_netdev(), so don't print a num_rx_queues imbalance warning in that case. Also, only print the warning once for those drivers that _are_ multi-queue enabled. Signed-off-by: Tim Gardner Acked-by: Eric Dumazet commit 63a07cb64ccc3ceae619d3298545d602ab5ecd38 Merge: b95a568 327723e Author: Linus Torvalds Date: Wed Jun 9 12:44:19 2010 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: (21 commits) mac80211: fix deauth before assoc iwlwifi: add missing rcu_read_lock mac80211: fix function pointer check wireless: remove my name from the maintainer list ath5k: fix NULL pointer in antenna configuration p54usb: Add device ID for Dell WLA3310 USB wl1251: fix a memory leak in probe ipmr: dont corrupt lists 8139too: fix buffer overrun in rtl8139_init_board asix: check packet size against mtu+ETH_HLEN instead of ETH_FRAME_LEN r8169: fix random mdio_write failures ip6mr: fix a typo in ip6mr_for_each_table() iwlwifi: move sysfs_create_group to post request firmware iwlwifi: add name to Maintainers list iwl3945: fix internal scan iwl3945: enable stuck queue detection on 3945 ipv6: avoid high order allocations ath5k: retain promiscuous setting ath5k: depend on CONFIG_PM_SLEEP for suspend/resume functions mac80211: process station blockack action frames from work ... commit b95a56809343fb727c818ad1b9da14a17fa92ef6 Merge: a7f5378 44b5660 Author: Linus Torvalds Date: Wed Jun 9 12:43:04 2010 -0700 Merge branch 'for-2.6.35' of git://linux-nfs.org/~bfields/linux * 'for-2.6.35' of git://linux-nfs.org/~bfields/linux: nfsd4: shut down callback queue outside state lock nfsd: nfsd_setattr needs to call commit_metadata commit a7f5378e2449fc8ae3f92739a6cc2239748ef86a Author: David Howells Date: Wed Jun 9 19:52:22 2010 +0100 FRV: Reinstate null behaviour for the GDB remote protocol 'p' command Reinstate the null behaviour that the in-kernel gdbstub had for the GDB remote protocol 'p' command (retrieve a single register value) prior to commit 7ca8b9c0dafd ("frv: extend gdbstub to support more features of gdb"). Before that, the 'p' command just returned an empty reply, which causes gdb to then go and use the 'g' command. However, since that commit, the 'p' command returns an error string, which causes gdb to abort its connection to the target. Not all gdb versions are affected, some use try 'g' first, and if that works, don't bother with 'p', and so don't see the error. Signed-off-by: David Howells Signed-off-by: Linus Torvalds commit 327723edebbbd621ed35b0d63073685eb225563e Merge: 035320d b054b74 Author: David S. Miller Date: Wed Jun 9 11:13:23 2010 -0700 Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6 commit 9aad9c0d939e97c144388630a2d3f6918e61f672 Merge: e411f2d f3d5614 Author: Linus Torvalds Date: Wed Jun 9 09:45:46 2010 -0700 Merge branch 'msm-urgent' of git://codeaurora.org/quic/kernel/dwalker/linux-msm * 'msm-urgent' of git://codeaurora.org/quic/kernel/dwalker/linux-msm: mmc: msm: fix compile error on MSM7x30 msm: dma: add completion.h header commit e411f2dda48c81c556c802d4430717950cf088fd Merge: 79907d8 fcdcddb Author: Linus Torvalds Date: Wed Jun 9 08:52:03 2010 -0700 Merge branch 'for-linus' of git://git.monstr.eu/linux-2.6-microblaze * 'for-linus' of git://git.monstr.eu/linux-2.6-microblaze: microblaze: Fix sg_dma_len() regression microblaze: Define ARCH_SLAB_MINALIGN to fix slab crash commit f3d56144c86beb25c7d206efa66d6efba908371c Author: Daniel Walker Date: Mon May 24 10:15:00 2010 -0700 mmc: msm: fix compile error on MSM7x30 MSM7x30 isn't supported in this driver yet. If ones tried to compile it in with MSM7x30 configure you get, linux-2.6/drivers/mmc/host/msm_sdcc.c: In function 'msmsdcc_fifo_addr': linux-2.6/drivers/mmc/host/msm_sdcc.c:165: error: 'MSM_SDC1_PHYS' undeclared (first use in this function) linux-2.6/drivers/mmc/host/msm_sdcc.c:165: error: (Each undeclared identifier is reported only once linux-2.6/drivers/mmc/host/msm_sdcc.c:165: error: for each function it appears in.) linux-2.6/drivers/mmc/host/msm_sdcc.c:167: error: 'MSM_SDC2_PHYS' undeclared (first use in this function) linux-2.6/drivers/mmc/host/msm_sdcc.c:169: error: 'MSM_SDC3_PHYS' undeclared (first use in this function) linux-2.6/drivers/mmc/host/msm_sdcc.c:171: error: 'MSM_SDC4_PHYS' undeclared (first use in this function) So we add a Kconfig check to prevent this. Signed-off-by: Daniel Walker commit 79907d89c397b8bc2e05b347ec94e928ea919d33 Author: Alan Cox Date: Wed Jun 9 09:39:49 2010 +0100 misc: Fix allocation 'borrowed' by vhost_net 10, 233 is allocated officially to /dev/kmview which is shipping in Ubuntu and Debian distributions. vhost_net seem to have borrowed it without making a proper request and this causes regressions in the other distributions. vhost_net can use a dynamic minor so use that instead. Also update the file with a comment to try and avoid future misunderstandings. cc: stable@kernel.org Signed-off-by: Alan Cox [ We should have caught this before 2.6.34 got released. - Linus ] Signed-off-by: Linus Torvalds commit 3499f4d0d1159a21245d6071f8af6a71b86a78bc Author: Julia Lawall Date: Wed May 26 17:57:05 2010 +0200 KVM: ia64: Add missing spin_unlock in kvm_arch_hardware_enable() Add a spin_unlock missing on the error path. The semantic match that finds this problem is as follows: (http://coccinelle.lip6.fr/) // @@ expression E1; @@ * spin_lock(E1,...); <+... when != E1 if (...) { ... when != E1 * return ...; } ...+> * spin_unlock(E1,...); // Signed-off-by: Julia Lawall Signed-off-by: Avi Kivity commit 05b782ab951a896d7da41775999821f692dc9e01 Author: Jan Kiszka Date: Wed May 26 21:36:33 2010 +0200 KVM: Fix order passed to iommu_unmap This is obviously a left-over from the the old interface taking the size. Apparently a mostly harmless issue with the current iommu_unmap implementation. Signed-off-by: Jan Kiszka Acked-by: Joerg Roedel Signed-off-by: Avi Kivity commit 69325a122580d3a7b26589e8efdd6663001c3297 Author: Avi Kivity Date: Thu May 27 14:35:58 2010 +0300 KVM: MMU: Remove user access when allowing kernel access to gpte.w=0 page If cr0.wp=0, we have to allow the guest kernel access to a page with pte.w=0. We do that by setting spte.w=1, since the host cr0.wp must remain set so the host can write protect pages. Once we allow write access, we must remove user access otherwise we mistakenly allow the user to write the page. Reviewed-by: Xiao Guangrong Signed-off-by: Avi Kivity commit 3be2264be3c00865116f997dc53ebcc90fe7fc4b Author: Marcelo Tosatti Date: Fri May 28 09:44:59 2010 -0300 KVM: MMU: invalidate and flush on spte small->large page size change Always invalidate spte and flush TLBs when changing page size, to make sure different sized translations for the same address are never cached in a CPU's TLB. Currently the only case where this occurs is when a non-leaf spte pointer is overwritten by a leaf, large spte entry. This can happen after dirty logging is disabled on a memslot, for example. Noticed by Andrea. KVM-Stable-Tag Signed-off-by: Marcelo Tosatti Signed-off-by: Avi Kivity commit 67ec66077799f2fef84b21a643912b179c422281 Author: Joerg Roedel Date: Mon May 17 14:43:35 2010 +0200 KVM: SVM: Implement workaround for Erratum 383 This patch implements a workaround for AMD erratum 383 into KVM. Without this erratum fix it is possible for a guest to kill the host machine. This patch implements the suggested workaround for hypervisors which will be published by the next revision guide update. [jan: fix overflow warning on i386] [xiao: fix unused variable warning] Cc: stable@kernel.org Signed-off-by: Joerg Roedel Signed-off-by: Jan Kiszka Signed-off-by: Xiao Guangrong Signed-off-by: Avi Kivity commit fe5913e4e1700cbfc337f4b1da9ddb26f6a55586 Author: Joerg Roedel Date: Mon May 17 14:43:34 2010 +0200 KVM: SVM: Handle MCEs early in the vmexit process This patch moves handling of the MC vmexits to an earlier point in the vmexit. The handle_exit function is too late because the vcpu might alreadry have changed its physical cpu. Cc: stable@kernel.org Signed-off-by: Joerg Roedel Signed-off-by: Avi Kivity commit a06cdb5676272a12056820aeb49a1416ad2d0c6f Author: Jean Delvare Date: Tue May 18 09:34:12 2010 +0200 KVM: powerpc: fix init/exit annotation kvmppc_e500_exit() is a module_exit function, so it should be tagged with __exit, not __init. The incorrect annotation was added by commit 2986b8c72c272ea58edd37903b042c6da985627d. Signed-off-by: Jean Delvare Cc: stable@kernel.org Signed-off-by: Alexander Graf Signed-off-by: Avi Kivity commit fcdcddbcbbd39a3363bd48414bfe44553b6d698a Author: FUJITA Tomonori Date: Tue Jun 8 20:03:15 2010 +0900 microblaze: Fix sg_dma_len() regression The commit "asm-generic: add NEED_SG_DMA_LENGTH to define sg_dma_len()" 18e98307de0d746cb0845ebf66535ce2184c25a2 broke microblaze compilation. dma_direct_map_sg() sets sg->dma_length, however microblaze doesn't set NEED_SG_DMA_LENGTH so scatterlist strcutres doesn't include dma_length. sg->dma_length is always equal to sg->length on microblaze. So we don't need to set set dma_length, that is, microblaze can simply use sg->length. Signed-off-by: FUJITA Tomonori Signed-off-by: Michal Simek commit ffe57d02b23ebc5422cf81566b3ce566d68a3e22 Author: Michal Simek Date: Mon Jun 7 15:17:55 2010 +0200 microblaze: Define ARCH_SLAB_MINALIGN to fix slab crash The commit "mm: Move ARCH_SLAB_MINALIGN and ARCH_KMALLOC_MINALIGN to " 1f0ce8b3dd667dca7 which moved the ARCH_SLAB_MINALIGN default into the global header broke FLAT for Microblaze. Error message: slab error in verify_redzone_free(): cache `idr_layer_cache': memory outside object was overwritten Signed-off-by: Michal Simek commit 84f7586edab93052bbe7eb72e1e9bce5f7b6ae45 Merge: 8d86dc6 1038953 Author: Linus Torvalds Date: Tue Jun 8 20:52:19 2010 -0700 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394-2.6 * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394-2.6: firewire: core: check for 1394a compliant IRM, fix inaccessibility of Sony camcorder commit 8d86dc6a5bcd0f1d5b9364d43843f1bb4b15f57a Author: Linus Torvalds Date: Tue Jun 8 20:16:28 2010 -0700 Revert "drm/i915: Don't enable pipe/plane/VCO early (wait for DPMS on)." This reverts commit cfecde435dda78248d6fcdc424bed68d5db6be0b, since it seems to cause some systems to not come up with any video output at all (or video that only comes on when X starts up). Fixes bugzilla: http://bugzilla.kernel.org/show_bug.cgi?id=16163 Reported-and-tested-by: David John Tested-by: Nick Bowler Acked-by: Carl Worth Signed-off-by: Linus Torvalds commit f5c98a40947af7e8226fff584151c9ce6eaed03b Merge: fbe33a7 b62e948 Author: Linus Torvalds Date: Tue Jun 8 19:48:50 2010 -0700 Merge branch 'drm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6 * 'drm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6: (23 commits) drm/radeon: don't poll tv dac if crtc2 is in use. drm/radeon: reset i2c valid to avoid incorrect tv-out polling. drm/nv50: fix iommu errors caused by device reading from address 0 drm/nouveau: off by one in init_i2c_device_find() nouveau: off by one in nv50_gpio_location() drm/nouveau: completely fail init if we fail to map the PRAMIN BAR drm/nouveau: match U/DP script against SOR link drm/radeon/kms/pm: resurrect printing power states drm/radeon/kms: add trivial debugging for voltage drm/radeon/kms/r600+: use voltage from requested clock mode (v3) drm/radeon/kms/pm: track current voltage (v2) drm/radeon/kms/pm: Disable voltage adjust on RS780/RS880 drm/radeon/kms: fix typo in printing the HPD info drm/radeon/kms/pm: add mid profile drm/radeon/kms/pm: Misc fixes drm/radeon/kms/combios: fix typo in voltage fix drm/radeon/kms/evergreen: set accel_enabled drm/vmwgfx: return -EFAULT for copy_to_user errors drm/drm_crtc: return -EFAULT on copy_to_user errors drm/fb: use printk to print out the switching to text mode error. ... commit fbe33a7c3f388f7b8b2642bfadb1b5914f635a5b Merge: d87815c 40a510d Author: Linus Torvalds Date: Tue Jun 8 18:13:24 2010 -0700 Merge branch 'for-linus' of git://git390.marist.edu/pub/scm/linux-2.6 * 'for-linus' of git://git390.marist.edu/pub/scm/linux-2.6: [S390] Update default configuration. [S390] arch/s390/kvm: Use GFP_ATOMIC when a lock is held [S390] kprobes: add parameter check to module_free() [S390] appldata/extmem/kvm: add missing GFP_KERNEL flag commit d87815cb2090e07b0b0b2d73dc9740706e92c80c Author: Dave Chinner Date: Wed Jun 9 10:37:20 2010 +1000 writeback: limit write_cache_pages integrity scanning to current EOF sync can currently take a really long time if a concurrent writer is extending a file. The problem is that the dirty pages on the address space grow in the same direction as write_cache_pages scans, so if the writer keeps ahead of writeback, the writeback will not terminate until the writer stops adding dirty pages. For a data integrity sync, we only need to write the pages dirty at the time we start the writeback, so we can stop scanning once we get to the page that was at the end of the file at the time the scan started. This will prevent operations like copying a large file preventing sync from completing as it will not write back pages that were dirtied after the sync was started. This does not impact the existing integrity guarantees, as any dirty page (old or new) within the EOF range at the start of the scan will still be captured. This patch will not prevent sync from blocking on large writes into holes. That requires more complex intervention while this patch only addresses the common append-case of this sync holdoff. Signed-off-by: Dave Chinner Reviewed-by: Christoph Hellwig Signed-off-by: Linus Torvalds commit 254c8c2dbf0e06a560a5814eb90cb628adb2de66 Author: Dave Chinner Date: Wed Jun 9 10:37:19 2010 +1000 xfs: remove nr_to_write writeback windup. Now that the background flush code has been fixed, we shouldn't need to silently multiply the wbc->nr_to_write to get good writeback. Remove that code. Signed-off-by: Dave Chinner Reviewed-by: Christoph Hellwig Signed-off-by: Linus Torvalds commit 0b5649278e39a068aaf91399941bab1b4a4a3cc2 Author: Dave Chinner Date: Wed Jun 9 10:37:18 2010 +1000 writeback: pay attention to wbc->nr_to_write in write_cache_pages If a filesystem writes more than one page in ->writepage, write_cache_pages fails to notice this and continues to attempt writeback when wbc->nr_to_write has gone negative - this trace was captured from XFS: wbc_writeback_start: towrt=1024 wbc_writepage: towrt=1024 wbc_writepage: towrt=0 wbc_writepage: towrt=-1 wbc_writepage: towrt=-5 wbc_writepage: towrt=-21 wbc_writepage: towrt=-85 This has adverse effects on filesystem writeback behaviour. write_cache_pages() needs to terminate after a certain number of pages are written, not after a certain number of calls to ->writepage are made. This is a regression introduced by 17bc6c30cf6bfffd816bdc53682dd46fc34a2cf4 ("vfs: Add no_nrwrite_index_update writeback control flag"), but cannot be reverted directly due to subsequent bug fixes that have gone in on top of it. Signed-off-by: Dave Chinner Reviewed-by: Christoph Hellwig Signed-off-by: Linus Torvalds commit 8d7458daea2a6809d32418bf489b949d23de99ea Merge: 3975d16 af0d5cb Author: Linus Torvalds Date: Tue Jun 8 18:05:09 2010 -0700 Merge branch 'bkl/fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/frederic/random-tracing * 'bkl/fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/frederic/random-tracing: hp_sdc_rtc: fix broken ioctl conversion commit 44b56603c4c476b845a824cff6fe905c6268b2a1 Merge: c3935e3 b160fda Author: J. Bruce Fields Date: Tue Jun 8 20:05:18 2010 -0400 Merge branch 'for-2.6.34-incoming' into for-2.6.35-incoming commit c3935e30495869dd611e1cd62253c94ebc7c6c04 Author: J. Bruce Fields Date: Fri Jun 4 16:42:08 2010 -0400 nfsd4: shut down callback queue outside state lock This reportedly causes a lockdep warning on nfsd shutdown. That looks like a false positive to me, but there's no reason why this needs the state lock anyway. Reported-by: Jeff Layton Signed-off-by: J. Bruce Fields commit 16106822b67e0a5eb228aebf47e33d6cad1e91b6 Merge: 84bb671 b9b76df Author: Ingo Molnar Date: Wed Jun 9 00:45:53 2010 +0200 Merge branch 'perf/urgent' of git://git.kernel.org/pub/scm/linux/kernel/git/frederic/random-tracing into perf/urgent commit b9b76dfaac6fa2c289ee8a005be637afd2da7e2f Author: Oleg Nesterov Date: Thu Jun 3 23:34:09 2010 +0200 tracing: Fix null pointer deref with SEND_SIG_FORCED BUG: unable to handle kernel NULL pointer dereference at 0000000000000006 IP: [] ftrace_raw_event_signal_generate+0x87/0x140 TP_STORE_SIGINFO() forgets about SEND_SIG_FORCED, fix. We should probably export is_si_special() and change TP_STORE_SIGINFO() to use it in the longer term. Signed-off-by: Oleg Nesterov Acked-by: Roland McGrath Cc: Steven Rostedt Cc: Andrew Morton Cc: Jason Baron Cc: Masami Hiramatsu Cc: 2.6.33.x-2.6.34.x LKML-Reference: <20100603213409.GA8307@redhat.com> Signed-off-by: Frederic Weisbecker commit af0d5cb908f7f9adeb5d3d3dbef64c644bb6809c Author: Arnd Bergmann Date: Sat Jun 5 22:52:21 2010 +0200 hp_sdc_rtc: fix broken ioctl conversion Commit 55929332c92 "drivers: Push down BKL into various drivers" introduced a regression in hp_sdc_rtc, caused by a missing change of the .unlocked_ioctl pointer to the newly introduced function. Fixes: drivers/input/misc/hp_sdc_rtc.c:681: warning: initialization from incompatible pointer type drivers/input/misc/hp_sdc_rtc.c:665: warning: ‘hp_sdc_rtc_unlocked_ioctl’ defined but not used Reported-by: Geert Uytterhoeven Signed-off-by: Arnd Bergmann Acked-by: Geert Uytterhoeven Signed-off-by: Frederic Weisbecker commit 9a40ac86152c9cffd3dca482a15ddf9a8c5716b3 Author: Khem Raj Date: Fri Jun 4 04:05:15 2010 +0100 ARM: 6164/1: Add kto and kfrom to input operands list. When functions incoming parameters are not in input operands list gcc 4.5 does not load the parameters into registers before calling this function but the inline assembly assumes valid addresses inside this function. This breaks the code because r0 and r1 are invalid when execution enters v4wb_copy_user_page () Also the constant needs to be used as third input operand so account for that as well. Tested on qemu arm. CC: Signed-off-by: Khem Raj Signed-off-by: Russell King commit b054b747a694927879c94dd11af54d04346aed7d Author: Johannes Berg Date: Mon Jun 7 21:50:07 2010 +0200 mac80211: fix deauth before assoc When we receive a deauthentication frame before having successfully associated, we neither print a message nor abort assocation. The former makes it hard to debug, while the latter later causes a warning in cfg80211 when, as will typically be the case, association timed out. This warning was reported by many, e.g. in https://bugzilla.kernel.org/show_bug.cgi?id=15981, but I couldn't initially pinpoint it. I verified the fix by hacking hostapd to send a deauth frame instead of an association response. Cc: stable@kernel.org Signed-off-by: Johannes Berg Tested-by: Miles Lane Signed-off-by: John W. Linville commit 76962be8491b18ae7ff4fd6a4accd398bdb402a2 Merge: 5e27fb7 d30e5d8 Author: Russell King Date: Tue Jun 8 19:40:08 2010 +0100 Merge branch 'fix' of git://git.kernel.org/pub/scm/linux/kernel/git/ycmiao/pxa-linux-2.6 commit 5e27fb78df95e027723af2c90ecc9b4527ae59e9 Author: Anfei Date: Tue Jun 8 15:16:49 2010 +0100 ARM: 6166/1: Proper prefetch abort handling on pre-ARMv6 Instruction faults on pre-ARMv6 CPUs are interpreted as a 'translation fault', but do_translation_fault doesn't handle well if user mode trying to run instruction above TASK_SIZE, and result in the infinite retry of that instruction. CC: Signed-off-by: Anfei Zhou Signed-off-by: Russell King commit 6db6340c42d027b6364d49fa99d69019aca24de4 Author: Johannes Berg Date: Mon Jun 7 21:20:38 2010 +0200 iwlwifi: add missing rcu_read_lock Using ieee80211_find_sta() needs to be under RCU read lock, which iwlwifi currently misses, so fix it. Cc: stable@kernel.org Reported-by: Miles Lane Signed-off-by: Johannes Berg Acked-by: Reinette Chatre Tested-by: Miles Lane Signed-off-by: John W. Linville commit 17ebba1fe4da4b5d62782be8743e0e8231812af9 Author: Nicolas Pitre Date: Mon Jun 7 21:28:55 2010 +0100 ARM: 6165/1: trap overflows on highmem pages from kmap_atomic when debugging When CONFIG_DEBUG_HIGHMEM is used, the fixmap entry used for a highmem page by kmap_atomic() is always cleared by kunmap_atomic(). This helps find bad usages such as dereferences after the unmap, or overflow into the adjacent fixmap areas. But this debugging aid is completely bypassed when a kmap for the same page already exists as the kmap is reused instead. ON VIVT systems we have no choice but to reuse that kmap due to cache coherency issues, but on non VIVT systems we should always force the fixmap usage when debugging is active. Signed-off-by: Nicolas Pitre Signed-off-by: Russell King commit b394eebdd3d436f1796e53b97799554c5aa77431 Author: Linus Walleij Date: Mon May 31 09:28:30 2010 +0100 ARM: 6152/1: ux500 make it possible to disable localtimers Currently compilation of ux500 fails if you deselect the kernel feature for localtimers. Acked-by: Srinidhi Kasagar Signed-off-by: Linus Walleij Signed-off-by: Russell King commit 84bb671dc46d77d665d2b5e74539e81b2129bb3e Merge: f6ab91a 238c1a7 Author: Ingo Molnar Date: Tue Jun 8 19:15:37 2010 +0200 Merge branch 'for-tip' of git://git.kernel.org/pub/scm/linux/kernel/git/rric/oprofile into perf/urgent commit 40a510ddc57b49a01668643b1dec691a0e996c52 Author: Martin Schwidefsky Date: Tue Jun 8 18:58:12 2010 +0200 [S390] Update default configuration. Signed-off-by: Martin Schwidefsky commit 9940fa80ce0e546646b057958960c5c6fd2bbbb2 Author: Julia Lawall Date: Tue Jun 8 18:58:11 2010 +0200 [S390] arch/s390/kvm: Use GFP_ATOMIC when a lock is held The containing function is called from several places. At one of them, in the function __sigp_stop, the spin lock &fi->lock is held. The semantic patch that makes this change is as follows: (http://coccinelle.lip6.fr/) // @gfp exists@ identifier fn; position p; @@ fn(...) { ... when != spin_unlock when any GFP_KERNEL@p ... when any } @locked@ identifier gfp.fn; @@ spin_lock(...) ... when != spin_unlock fn(...) @depends on locked@ position gfp.p; @@ - GFP_KERNEL@p + GFP_ATOMIC // Signed-off-by: Julia Lawall Acked-by: Christian Borntraeger Signed-off-by: Martin Schwidefsky commit 3164a3cbf8a6bdf85fe3816fe670b391f31c004a Author: Hendrik Brueckner Date: Tue Jun 8 18:58:10 2010 +0200 [S390] kprobes: add parameter check to module_free() When unregistering kprobes, kprobes calls module_free() and always passes NULL for the mod parameter. Add a check to prevent NULL pointer dereferences. See commit 740a8de0796dd12890b3c8ddcfabfcb528b78d40 for more details. Signed-off-by: Hendrik Brueckner Signed-off-by: Martin Schwidefsky commit c2f0e8c803ceba530060ec9bb9c74a06c2c3d833 Author: Heiko Carstens Date: Tue Jun 8 18:58:09 2010 +0200 [S390] appldata/extmem/kvm: add missing GFP_KERNEL flag Add missing GFP flag to memory allocations. The part in cio only changes a comment. Signed-off-by: Heiko Carstens Signed-off-by: Martin Schwidefsky commit f6ab91add6355e231e1c47897027b2a6ee4fa268 Author: Peter Zijlstra Date: Fri Jun 4 15:18:01 2010 +0200 perf: Fix signed comparison in perf_adjust_period() Frederic reported that frequency driven swevents didn't work properly and even caused a division-by-zero error. It turns out there are two bugs, the division-by-zero comes from a failure to deal with that in perf_calculate_period(). The other was more interesting and turned out to be a wrong comparison in perf_adjust_period(). The comparison was between an s64 and u64 and got implicitly converted to an unsigned comparison. The problem is that period_left is typically < 0, so it ended up being always true. Cure this by making the local period variables s64. Reported-by: Frederic Weisbecker Tested-by: Frederic Weisbecker Signed-off-by: Peter Zijlstra Cc: LKML-Reference: Signed-off-by: Ingo Molnar commit ff8bd64eaf2963752feaa0ac2f7ff1254e0091ce Author: Wan ZongShun Date: Tue Jun 8 16:51:27 2010 +0200 ALSA: sound/spi: patch for the unuseful variable removal The '*bitclk' of structure 'snd_at73c213' seems no use, so I make a patch to remove the unnecessary variable. Signed-off-by: Wan ZongShun Acked-by: Liam Girdwood Signed-off-by: Takashi Iwai commit ab669967d0ecf784567843180e715ccb0e42db36 Author: Justin P. Mattock Date: Sun Jun 6 16:09:53 2010 -0700 ALSA: hda - Add SSID table for iMac7,1. This patch add's the iMac7,1 SSID entry to patch_realtek.c which adds sound support. bug entry: https://bugs.launchpad.net/mactel-support/+bug/360866 Note:I do not have this machine on hand only codec#0 file for the machine so please test if you have the appropriate equipment. Signed-off-by: Justin P. Mattock Signed-off-by: Takashi Iwai commit f53dae28cd17ec618a1295962d0f40e00b84665d Author: Justin P. Mattock Date: Sun Jun 6 16:09:51 2010 -0700 ALSA: hda - Add SSID table for MacBookAir1,1 This patch add's the MacBookAir1,1 SSID entry to patch_realtek.c which adds sound support. bug entry: https://bugs.launchpad.net/mactel-support/+bug/268301 Note:I do not have this machine on hand only codec#0 file for the machine so please test if you have the appropriate equipment. Signed-off-by: Justin P. Mattock Signed-off-by: Takashi Iwai commit 6e12970bd4f453c9cfcac6564567efe515ce1f1d Author: Justin P. Mattock Date: Sun Jun 6 16:09:49 2010 -0700 ALSA: hda - Add SSID table for MacBookAir2,1 This adds the SSID number to snd_pci_quirk for the MacBookAir2,1 taken from codec#0 at: http://launchpadlibrarian.net/49455483/Card0.Codecs.codec.0.txt keep in mind I do not have one of these machines on hand so please if you do have this machine please test for me.. Signed-off-by: Justin P. Mattock Signed-off-by: Takashi Iwai commit f534116308a0d553641725c4619814337758784f Author: Yegor Yefremov Date: Tue Jun 8 08:57:13 2010 +0200 ALSA: atmel: set "channel A event" output to debug Signed-off-by: Yegor Yefremov Signed-off-by: Takashi Iwai commit b62e948fd00bda1be2af31b591e5284374de551f Author: Dave Airlie Date: Tue Jun 8 10:42:28 2010 +1000 drm/radeon: don't poll tv dac if crtc2 is in use. So when we added output polling, we'd suddenly use this code more often, and the fact that it always takes over crtc2 and messes with it during probing isn't what we really want to be happening. A more complete fix would to change it to use whatever crtc was free at the time, but for now lets stay simple and just don't poll if crtc2 is already in use. Although a more correct fix was found I suspect we should do this as well, until we get a chance to readdres the tv out polling issues. Reported-by: Torsten Kaiser Signed-off-by: Dave Airlie commit d294ed69408b54c18f0420516ea057b2a734624d Author: Dave Airlie Date: Tue Jun 8 13:04:50 2010 +1000 drm/radeon: reset i2c valid to avoid incorrect tv-out polling. We really don't want to be polling tv-out but since we weren't forcing the i2c lines to invalid (tv-out has no DDC), we were adding tv connectors to the polling setup and this was causing blinking on secondary displays. This fixes the regression Torsten reported. Reported-by: Torsten Kaiser Tested-by: Torsten Kaiser Signed-off-by: Dave Airlie commit 4eb3033c72099fab3536ed8ac54a5dc99f0832d7 Author: Ben Skeggs Date: Mon Jun 7 13:59:40 2010 +1000 drm/nv50: fix iommu errors caused by device reading from address 0 Signed-off-by: Ben Skeggs Signed-off-by: Dave Airlie commit 75047944480a33afad76a272b21116d032ba61fa Author: Dan Carpenter Date: Tue May 25 11:52:27 2010 +0200 drm/nouveau: off by one in init_i2c_device_find() dcb->i2c[] has DCB_MAX_NUM_I2C_ENTRIES entries. Signed-off-by: Dan Carpenter Signed-off-by: Ben Skeggs Signed-off-by: Dave Airlie commit 55a4c5c515c1f4b4bde00c443e71ff9f3822013e Author: Dan Carpenter Date: Thu Apr 22 11:40:53 2010 +0200 nouveau: off by one in nv50_gpio_location() If "gpio->line" is 32 then "nv50_gpio_reg[gpio->line >> 3]" reads past the end of the array. Signed-off-by: Dan Carpenter Signed-off-by: Ben Skeggs Signed-off-by: Dave Airlie commit 6d696305530c0b3fcd7d15ad87d7203cb53df5b7 Author: Ben Skeggs Date: Wed Jun 2 10:16:24 2010 +1000 drm/nouveau: completely fail init if we fail to map the PRAMIN BAR On cards where there's a specific BAR for PRAMIN, we used to try and fall back to the "legacy" aperture within the mmio BAR. This is doomed to cause problems, so lets just fail completely as there's obviously something else very wrong anyway. Signed-off-by: Ben Skeggs Signed-off-by: Dave Airlie commit 1eb38100abc467f1133e548d82ab171cab34292b Author: Ben Skeggs Date: Tue Jun 1 13:40:41 2010 +1000 drm/nouveau: match U/DP script against SOR link It appears version 0x21 'U' and 'd' tables require us to take the SOR link into account when selecting the appropriate table for a particular output. Signed-off-by: Ben Skeggs Signed-off-by: Dave Airlie commit 3975d16760d4be7402d1067c548c30c427971331 Merge: 4d3d769 1c24d06 Author: Linus Torvalds Date: Mon Jun 7 17:10:06 2010 -0700 Merge git://git.infradead.org/~dwmw2/mtd-2.6.35 * git://git.infradead.org/~dwmw2/mtd-2.6.35: jffs2: update ctime when changing the file's permission by setfacl jffs2: Fix NFS race by using insert_inode_locked() jffs2: Fix in-core inode leaks on error paths mtd: Fix NAND submenu mtd/r852: update card detect early. mtd/r852: Fixes in case of DMA timeout mtd/r852: register IRQ as last step drivers/mtd: Use memdup_user docbook: make mtd nand module init static commit 4d3d769c605ebdf9fbb5a9d63827598b48351861 Merge: cfca31c 0ee7195 Author: Linus Torvalds Date: Mon Jun 7 17:09:03 2010 -0700 Merge branch 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jgarzik/libata-dev * 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jgarzik/libata-dev: ahci: redo stopping DMA engines on empty ports sata_sil24: fix kernel panic on ARM caused by unaligned access in sata_sil24 ahci: add pci quirk for JMB362 sata_via: explain the magic fix commit f712d0c7e726ccbf2ab668cc30f307ecf37adf4f Author: Rafał Miłecki Date: Mon Jun 7 18:29:44 2010 -0400 drm/radeon/kms/pm: resurrect printing power states debug only agd5f: rebased Signed-off-by: Rafał Miłecki Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit 0fcbe9473ac9c53463a61c9c83db8293bee15d12 Author: Rafał Miłecki Date: Mon Jun 7 18:25:21 2010 -0400 drm/radeon/kms: add trivial debugging for voltage agd5f: rebased Signed-off-by: Rafał Miłecki Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit a081a9d6f566160bc4c08a85b74d817e983595ab Author: Rafał Miłecki Date: Mon Jun 7 18:20:25 2010 -0400 drm/radeon/kms/r600+: use voltage from requested clock mode (v3) This fixes FDO bug #28375, it's kind of regression, so quite important to have it for .35. V2: Fix on RV770+ as well. All other chipsets have only one clock mode per state. V3: I'm out of luck today. Grepped for voltage in r*.c and missed evergreen. agd5f: rebased Signed-off-by: Rafał Miłecki Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit 4d60173fc1b12b0c308f861620fe8e2a84f6e5da Author: Alex Deucher Date: Mon Jun 7 18:15:18 2010 -0400 drm/radeon/kms/pm: track current voltage (v2) track the current voltage level and avoid setting it if the requested voltage is already set. v2: check voltage type before checking current voltage Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit aa1df0f229829109e49d1dc493252fd94a7af2a1 Author: Alex Deucher Date: Mon Jun 7 11:35:53 2010 -0400 drm/radeon/kms/pm: Disable voltage adjust on RS780/RS880 The vddc value in the power tables is not an actual voltage like on discrete r6xx/r7xx/evergreen systems, but instead has a symbolic meaning (e.g., NONE, LOW, HIGH, etc.). See atombios.h Most RS780/RS880 vbioses don't have a SetVoltage table anyway, so it shouldn't be doing anything to the hardware at the moment. I need to figure out how voltage is supposed to work on the newer IGPs; until then, disable it. Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit cbd4623d4d3a622de6481052b44cd33ea880cd61 Author: Alex Deucher Date: Mon Jun 7 02:24:54 2010 -0400 drm/radeon/kms: fix typo in printing the HPD info I forgot to fix this in 8e36ed00842668a39a6ed1b0a00b8ac92b7c4cd5 Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit c9e75b2125b563e67663f78ad53ea9387a9a7aa1 Author: Alex Deucher Date: Wed Jun 2 17:56:01 2010 -0400 drm/radeon/kms/pm: add mid profile This adds an additional profile, mid, to the pm profile code which takes the place of the old low profile. The default behavior remains the same, e.g., auto profile now selects between mid and high profiles based on power source, however, you can now manually force the low profile which was previously only available as a dpms off state. Enabling the low profile when the displays are on has been known to cause display corruption in some cases. Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit f8ed8b4c5d30b5214f185997131b06e35f6f7113 Author: Alex Deucher Date: Mon Jun 7 17:49:51 2010 -0400 drm/radeon/kms/pm: Misc fixes - don't rest the power state in pm_init() We already boot up to the default power state. Note this patch relies on: drm/radeon/kms/pm: patch default power state with default clocks/voltages on r6xx+ To make sure the default power state matches the boot up state. - In the pm resume path asic init will have set the power state back to the default so reset the tracking state values. Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit 8de016e2bd8ebce9b3728462085bef51179841a6 Author: Alex Deucher Date: Thu Jun 3 21:28:23 2010 -0400 drm/radeon/kms/combios: fix typo in voltage fix Noticed by Rafał Miłecki. Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit 148a03bc0b0e3ef153d0cade7bc88e9b14edfb7a Author: Alex Deucher Date: Thu Jun 3 19:00:03 2010 -0400 drm/radeon/kms/evergreen: set accel_enabled This is needed to enable accel in the ddx. However, due to a bug in older versions of the ddx, it relies on accel being disabled in order to load properly on evergreen chips. To maintain compatility, we add a new get accel param and call that from the ddx. The old one always returns false for evergreen cards. [this fixes a regression with older userspaces on newer kernels]. Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit 9b8eb4d14767209c83087063352cd04266ecdfd1 Author: Dan Carpenter Date: Fri Jun 4 12:24:13 2010 +0200 drm/vmwgfx: return -EFAULT for copy_to_user errors copy_to/from_user() returns the number of bytes remaining to be copied but we want to return a negative error code here. This gets returned to userspace. Signed-off-by: Dan Carpenter Signed-off-by: Dave Airlie commit e902a358c753b93245083201c02312a580cf13d4 Author: Dan Carpenter Date: Fri Jun 4 12:23:21 2010 +0200 drm/drm_crtc: return -EFAULT on copy_to_user errors copy_from_user() returns the number of bytes left to be copied but we want to return a negative error code here. This is in the ioctl handler so the error code get returned to userspace. Signed-off-by: Dan Carpenter Signed-off-by: Dave Airlie commit fc2362afd5ab9456caab4de317da796cc88944fe Author: Dave Airlie Date: Mon Jun 7 12:14:54 2010 +1000 drm/fb: use printk to print out the switching to text mode error. using DRM_ERROR, results in people blaming the drm code for the oops, and not looking at the oops. (sadly yes I've gotten reports). Signed-off-by: Dave Airlie commit 9bad145ee2ef43ac36d397190a7d8b1a7306d3fb Author: Dave Airlie Date: Mon Jun 7 12:00:57 2010 +1000 drm/radeon: fix PM on non-vram cards. PM attemps to unmap objects that aren't actually mapped into userspace ever, so just don't bother unmapping them at this point, since all you are doing is nothing. We should be making sure all access to these objects are locked in kernel space instead. In theory the VRAM gart table is already done, and both the shaders and stolen vga memory blocks are never accessed at runtime. fixes: https://bugzilla.kernel.org/show_bug.cgi?id=16127 Reported-by: Jure Repnic Signed-off-by: Dave Airlie commit 5a79395b2791cc70442ab8434aed1b5206683e7c Author: Chris Wilson Date: Sun Jun 6 10:50:03 2010 +0100 drm: Propagate error from drm_fb_helper_init(). The previous commit fixes the problem, these commits make sure we actually fail properly if it happens again. I've squashed the commits from Chris since they are all fixing one issue. Signed-off-by: Chris Wilson Signed-off-by: Dave Airlie commit a3524f1b27671eda909cde37da9caff41133b272 Author: Dave Airlie Date: Sun Jun 6 18:59:41 2010 +1000 drm/i915: fix oops on single crtc devices. (regression fix since fbdev/kms rework). My fb rework didn't remember about the 84/65s. Reported-by: Ondrej Zary Tested-by: Ondrej Zary Signed-off-by: Dave Airlie commit 6d7b7d578f2c182f77ab6dd1c375f848f38ea1a6 Author: Daniel Walker Date: Thu May 20 15:39:33 2010 -0700 msm: dma: add completion.h header At some point this was exposed (not sure how), linux-2.6/arch/arm/mach-msm/dma.c:92: error: field 'complete' has incomplete type linux-2.6/arch/arm/mach-msm/dma.c: In function 'dmov_exec_cmdptr_complete_func': linux-2.6/arch/arm/mach-msm/dma.c:108: error: implicit declaration of function 'complete' linux-2.6/arch/arm/mach-msm/dma.c: In function 'msm_dmov_exec_cmd': linux-2.6/arch/arm/mach-msm/dma.c:120: error: implicit declaration of function 'init_completion' linux-2.6/arch/arm/mach-msm/dma.c:123: error: implicit declaration of function 'wait_for_completion' and the fix is just to add the header. Signed-off-by: Daniel Walker commit 85a0e7539781dad4bfcffd98e72fa9f130f4e40d Author: Ondrej Zary Date: Tue Jun 8 00:32:49 2010 +0200 PM / x86: Save/restore MISC_ENABLE register Save/restore MISC_ENABLE register on suspend/resume. This fixes OOPS (invalid opcode) on resume from STR on Asus P4P800-VM, which wakes up with MWAIT disabled. Fixes https://bugzilla.kernel.org/show_bug.cgi?id=15385 Signed-off-by: Ondrej Zary Tested-by: Alan Stern Acked-by: H. Peter Anvin Signed-off-by: Rafael J. Wysocki commit 0ee719527229fa86ace8e3abccae3c2a8bbfd6db Author: Tejun Heo Date: Mon Jun 7 15:15:08 2010 +0200 ahci: redo stopping DMA engines on empty ports Commit 96d60303fd (ahci: Turn off DMA engines when there's no device) implemented stopping DMA engines on empty ports but it used single sampling of status registers to determine device presence which led to disabling of DMA engines on occupied ports. Do it after all EH actions are complete using device presence state determined by EH. This avoids spurious disabling of DMA engines and simplifies the code. Signed-off-by: Tejun Heo Tested-by: Marc Dionne Cc: Matthew Garrett Cc: Robert Hancock Signed-off-by: Jeff Garzik commit 7a4f876b876afb13856a79a0402f71b9dfbe86a8 Author: Colin Tuckley Date: Fri Jun 4 16:19:51 2010 +0200 sata_sil24: fix kernel panic on ARM caused by unaligned access in sata_sil24 The sata_sil24 driver has six 16-bit registers that are initialised with 32-bit writes. This cause a kernel panic on ARM due to the unaligned accesses which result. This patch changes the accesses to the correct 16-bit ones. Signed-off-by: Colin Tuckley Signed-off-by: Tejun Heo Signed-off-by: Jeff Garzik commit 4daedcfe8c6851aa01cc1997220f2577f4039c13 Author: Tejun Heo Date: Thu Jun 3 11:57:04 2010 +0200 ahci: add pci quirk for JMB362 JMB362 is a new variant of jmicron controller which is similar to JMB360 but has two SATA ports instead of one. As there is no PATA port, single function AHCI mode can be used as in JMB360. Add pci quirk for JMB362. Signed-off-by: Tejun Heo Reported-by: Aries Lee Cc: stable@kernel.org Signed-off-by: Jeff Garzik commit b475a3b83a7709e16a734ef2b8ead4d50f885427 Author: Tejun Heo Date: Thu Jun 3 11:35:03 2010 +0200 sata_via: explain the magic fix Add Joseph Chan's explanation of the problem and workaround to the VT6421 magic fix. Signed-off-by: Tejun Heo Cc: Joseph Chan Signed-off-by: Jeff Garzik commit 35dd0509b21e4b5bab36b9eb80c8dab0322f5007 Author: Holger Schurig Date: Mon Jun 7 16:33:49 2010 +0200 mac80211: fix function pointer check This makes "iw wlan0 dump survey" work again with mac80211-based drivers that support it, e.g. ath5k. Signed-off-by: Holger Schurig Signed-off-by: John W. Linville commit e500ae5b535a5209fd397fcc542e3b3290fc2fc5 Author: Zhu Yi Date: Mon Jun 7 14:15:43 2010 +0800 wireless: remove my name from the maintainer list Remove my name from the MAINTAINERS file. Signed-off-by: Zhu Yi Signed-off-by: John W. Linville commit 436c109adb54433fff689abd71c23a6505e46bb0 Author: Bruno Randolf Date: Mon Jun 7 13:11:19 2010 +0900 ath5k: fix NULL pointer in antenna configuration If the channel is not set yet and we configure the antennas just store the setting. It will be activated during the next reset, when the channel is set. Signed-off-by: Bruno Randolf Signed-off-by: John W. Linville commit 0f666a08901f8b01f294ca0ad751019375240ae3 Author: Jason Dravet Date: Sat Jun 5 15:08:29 2010 -0500 p54usb: Add device ID for Dell WLA3310 USB Add Dell WLA3310 USB wireless card, which has a Z-Com XG-705A chipset, to the USB Ids in p54usb. Signed-off-by: Jason Dravet Tested-by: Richard Gregory Tillmore Signed-off-by: Larry Finger Acked-by: Christian Lamparter Cc: Signed-off-by: John W. Linville commit aa679c36756003f1fabdb9fc6f00eb159559f7c3 Author: Grazvydas Ignotas Date: Sat Jun 5 02:25:47 2010 +0300 wl1251: fix a memory leak in probe wl1251_sdio_probe() error path is missing wl1251_free_hw, add it. Signed-off-by: Grazvydas Ignotas Acked-by: Kalle Valo Cc: stable@kernel.org Signed-off-by: John W. Linville commit b83156b52dd77979cc93bafc2283929532f6f7d0 Author: Dominik Brodowski Date: Mon Jun 7 18:31:17 2010 +0200 pcmcia: avoid validate_cis failure on CIS override Commit a8408c17 introduced a new check to pccard_validate_cis(), which avoids any "late" calls to this function. This broke the insertion of cards which require a CIS override which changes the number of card functions. Fix this by asserting that this is _not_ a late call, but a proper call early during the card insertion process. Fixes https://bugzilla.kernel.org/show_bug.cgi?id=16138 Reported-by: Mikulas Patocka CC: Signed-off-by: Dominik Brodowski commit 287b87a350de4e344d60697a1f16abe2a6cd350a Author: Dominik Brodowski Date: Mon Jun 7 18:26:51 2010 +0200 pcmcia: dev_node removal bugfix Patch c7c2fa07 removed one line too much from smc91c92_cs.c. Reported-by: Komuro CC: netdev@vger.kernel.org CC: linux-wireless@vger.kernel.org Signed-off-by: Dominik Brodowski commit 4f2d364b315191bf9f8659f7d221acdf5506a989 Author: Justin P. Mattock Date: Thu May 20 13:40:02 2010 -0700 pcmcia: yenta_socket.c Remove extra #ifdef CONFIG_YENTA_TI Seems pointless to have two #ifdef's with the same CONFIG_YENTA_TI. Remove the extra one and move CARDBUS_TYPE_ENE with the others. [linux@dominikbrodowski.net: spelling & whitespace fixes] Signed-off-by: Justin P. Mattock Signed-off-by: Dominik Brodowski commit 02caa56e4b789b80ae7e0f0f0789f94b44ad32ef Author: Dominik Brodowski Date: Fri May 21 15:16:53 2010 +0200 pcmcia: only keep saved I365_CSCINT flag if there is no PCI irq Keeping the saved I365_CSCINT flag around breaks PCMCIA on some system, and is only needed on a few systems to get PCMCIA to work. This patch allows PCMCIA to work on both types, and it fixes https://bugzilla.kernel.org/show_bug.cgi?id=16015 Reported-by: Justin P. Mattock CC: Signed-off-by: Dominik Brodowski commit cfca31ce789963c0dd6ca2e9cc13b90cc2802fbd Author: Julia Lawall Date: Thu May 27 14:32:24 2010 +0200 [PATCH 2/11] drivers/watchdog: Eliminate a NULL pointer dereference At the point of the call to dev_err, wm8350 is NULL. A simplified version of the semantic match that finds this problem is as follows: (http://coccinelle.lip6.fr/) // @r exists@ expression E,E1; identifier f; statement S1,S2,S3; @@ if ((E == NULL && ...) || ...) { ... when != if (...) S1 else S2 when != E = E1 * E->f ... when any return ...; } else S3 // Signed-off-by: Julia Lawall Acked-by: Mark Brown Signed-off-by: Wim Van Sebroeck commit 035320d54758e21227987e3aae0d46e7a04f4ddc Author: Eric Dumazet Date: Sun Jun 6 23:48:40 2010 +0000 ipmr: dont corrupt lists ipmr_rules_exit() and ip6mr_rules_exit() free a list of items, but forget to properly remove these items from list. List head is not changed and still points to freed memory. This can trigger a fault later when icmpv6_sk_exit() is called. Fix is to either reinit list, or use list_del() to properly remove items from list before freeing them. bugzilla report : https://bugzilla.kernel.org/show_bug.cgi?id=16120 Introduced by commit d1db275dd3f6e4 (ipv6: ip6mr: support multiple tables) and commit f0ad0860d01e (ipv4: ipmr: support multiple tables) Reported-by: Alex Zhavnerchik Signed-off-by: Eric Dumazet CC: Patrick McHardy Signed-off-by: David S. Miller commit 238c1a78c957f3dc7cb848b161dcf4805793ed56 Author: Denis Kirjanov Date: Tue Jun 1 15:43:34 2010 -0400 powerpc/oprofile: fix potential buffer overrun in op_model_cell.c Fix potential initial_lfsr buffer overrun. Writing past the end of the buffer could happen when index == ENTRIES Signed-off-by: Denis Kirjanov Cc: stable@kernel.org Signed-off-by: Robert Richter commit 3fd7fa4a89f0b85b9b33e922f15a2289c0fb8499 Author: Denis Kirjanov Date: Mon Jun 7 01:13:57 2010 -0700 8139too: fix buffer overrun in rtl8139_init_board Fix rtl_chip_info buffer overrun when we can't identify the chip. (i = ARRAY_SIZE (rtl_chip_info) in this case) Signed-off-by: Denis Kirjanov Signed-off-by: David S. Miller commit 9227a46bfbac0516fb7428715a095e1bc59b872a Author: Jussi Kivilinna Date: Mon Jun 7 00:56:27 2010 -0700 asix: check packet size against mtu+ETH_HLEN instead of ETH_FRAME_LEN Driver checks received packet is too large in asix_rx_fixup() and fails if it is. Problem is that MTU might be set larger than 1500 and asix fails to work correctly with VLAN tagged packets. The check should be 'dev->net->mtu + ETH_HLEN' instead. Tested with AX88772. Signed-off-by: Jussi Kivilinna Signed-off-by: David S. Miller commit 386f40c86d6c8d5b717ef20620af1a750d0dacb4 Author: Linus Torvalds Date: Sun Jun 6 20:44:04 2010 -0700 Revert "tty: fix a little bug in scrup, vt.c" This reverts commit 962400e8fd29981a7b166e463dd143b6ac6a3e76, which was entirely bogus. The code used to multiply the character offset by "vc->vc_cols", and that's actually correct, because 'd' itself is an 'unsigned short'. So the pointer arithmetic already takes the size of a VGA character into account. Changing it to use vc_size_row (which is just "vc_cols" shifted up to take the size of the character into account) ends up multiplying with the VGA character size twice. This got reported as bugs for various other subsystems, because what it actually results in is writing the 16-bit vc_video_erase_char pattern (usually 0x0720: 0x07 is the default attribute, 0x20 is ASCII space) into some random other allocation. So Markus ended up reporting this as a ext4 bug, while to Torsten Kaiser it looked like a problem with KMS or libata. Jeff Chua saw it in different places. And finally - Justin Mattock had slab poisoning enabled, and saw it as a slab poison overwritten. And bisected and reverted this to verify the buggy commit. Reported-by: Markus Trippelsdorf Reported-by: Torsten Kaiser Reported-by: Jeff Chua Reported-by: Justin P. Mattock Reported-bisected-and-tested-by: Justin P. Mattock Acked-by: Dave Airlie Cc: Frank Pan Cc: Greg Kroah-Hartman Signed-off-by: Linus Torvalds commit 024a07bacf8287a6ddfa83e9d5b951c5e8b4070e Author: Timo Teräs Date: Sun Jun 6 15:38:47 2010 -0700 r8169: fix random mdio_write failures Some configurations need delay between the "write completed" indication and new write to work reliably. Realtek driver seems to use longer delay when polling the "write complete" bit, so it waits long enough between writes with high probability (but could probably break too). This patch adds a new udelay to make sure we wait unconditionally some time after the write complete indication. This caused a regression with XID 18000000 boards when the board specific phy configuration writing many mdio registers was added in commit 2e955856ff (r8169: phy init for the 8169scd). Some of the configration mdio writes would almost always fail, and depending on failure might leave the PHY in non-working state. Signed-off-by: Timo Teräs Acked-off-by: Francois Romieu Signed-off-by: David S. Miller commit 8ffb335e8d696affc04f963bf73ce2196f80edb9 Author: Eric Dumazet Date: Sun Jun 6 15:34:40 2010 -0700 ip6mr: fix a typo in ip6mr_for_each_table() Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit 1c24d06f8e065023ebb428db5af5514500839ee6 Author: Jan Kara Date: Fri Jun 4 17:07:55 2010 +0200 jffs2: update ctime when changing the file's permission by setfacl jffs2 didn't update the ctime of the file when its permission was changed. Steps to reproduce: # touch aaa # stat -c %Z aaa 1275289822 # setfacl -m 'u::x,g::x,o::x' aaa # stat -c %Z aaa 1275289822 <- unchanged But, according to the spec of the ctime, jffs2 must update it. Port of ext3 patch by Miao Xie . Signed-off-by: Jan Kara Signed-off-by: David Woodhouse commit 7d47618a2ade0cb6d8a0b2597029c383c1662fa0 Author: Emmanuel Grumbach Date: Sun May 23 00:14:08 2010 -0700 iwlwifi: move sysfs_create_group to post request firmware Move the sysfs_create_group to iwl_ucode_callback after we have safely got the firmware. The motivation to do this comes from a warning from lockdep which detected that we request priv->mutex while holding s_active during a sysfs request (show_statistics in the example copy pasted). The reverse order exists upon request_firmware: request_firmware which is a sysfs operation that requires s_active is run under priv->mutex. This ensures that we don't get sysfs request before we finish to request the firmware, avoiding this deadlock. ======================================================= [ INFO: possible circular locking dependency detected ] ------------------------------------------------------- cat/2595 is trying to acquire lock: (&priv->mutex){+.+.+.}, at: [] show_statistics+0x48/0x100 [iwlagn] but task is already holding lock: (s_active){++++.+}, at: [] sysfs_get_active_two+0x1d/0x50 which lock already depends on the new lock. the existing dependency chain (in reverse order) is: -> #1 (s_active){++++.+}: [] __lock_acquire+0xc44/0x1230 [] lock_acquire+0x8d/0x110 [] sysfs_addrm_finish+0xe9/0x180 [] sysfs_hash_and_remove+0x4a/0x80 [] sysfs_remove_group+0x44/0xd0 [] dpm_sysfs_remove+0x15/0x20 [] device_del+0x38/0x170 [] device_unregister+0x1e/0x60 [] _request_firmware+0x29d/0x550 [] request_firmware+0x17/0x20 [] iwl_mac_start+0xb1/0x1230 [iwlagn] [] ieee80211_open+0x436/0x6f0 [mac80211] [] dev_open+0x92/0xf0 [] dev_change_flags+0x7b/0x190 [] do_setlink+0x178/0x3b0 [] rtnl_setlink+0xf9/0x130 [] rtnetlink_rcv_msg+0x1bb/0x1f0 [] netlink_rcv_skb+0x86/0xa0 [] rtnetlink_rcv+0x1c/0x30 [] netlink_unicast+0x263/0x290 [] netlink_sendmsg+0x1c8/0x2a0 [] sock_sendmsg+0xcd/0x100 [] sys_sendmsg+0x15d/0x290 [] sys_socketcall+0xeb/0x2a0 [] sysenter_do_call+0x12/0x38 -> #0 (&priv->mutex){+.+.+.}: [] __lock_acquire+0x1054/0x1230 [] lock_acquire+0x8d/0x110 [] __mutex_lock_common+0x58/0x470 [] mutex_lock_nested+0x3a/0x50 [] show_statistics+0x48/0x100 [iwlagn] [] dev_attr_show+0x29/0x50 [] sysfs_read_file+0xdd/0x190 [] vfs_read+0x9f/0x190 [] sys_read+0x42/0x70 [] sysenter_do_call+0x12/0x38 other info that might help us debug this: 3 locks held by cat/2595: #0: (&buffer->mutex){+.+.+.}, at: [] sysfs_read_file+0x35/0x190 #1: (s_active){++++.+}, at: [] sysfs_get_active_two+0x2d/0x50 #2: (s_active){++++.+}, at: [] sysfs_get_active_two+0x1d/0x50 stack backtrace: Pid: 2595, comm: cat Not tainted 2.6.33-tp-rc4 #2 Call Trace: [] ? printk+0x1d/0x22 [] print_circular_bug+0xc2/0xd0 [] __lock_acquire+0x1054/0x1230 [] ? sched_clock_cpu+0x121/0x180 [] lock_acquire+0x8d/0x110 [] ? show_statistics+0x48/0x100 [iwlagn] [] __mutex_lock_common+0x58/0x470 [] ? show_statistics+0x48/0x100 [iwlagn] [] mutex_lock_nested+0x3a/0x50 [] ? show_statistics+0x48/0x100 [iwlagn] [] show_statistics+0x48/0x100 [iwlagn] [] ? sysfs_get_active+0x69/0xb0 [] ? show_statistics+0x0/0x100 [iwlagn] [] dev_attr_show+0x29/0x50 [] sysfs_read_file+0xdd/0x190 [] ? security_file_permission+0x14/0x20 [] ? rw_verify_area+0x62/0xd0 [] vfs_read+0x9f/0x190 [] ? up_read+0x1b/0x30 [] ? sysfs_read_file+0x0/0x190 [] ? audit_syscall_entry+0x1f4/0x220 [] sys_read+0x42/0x70 [] sysenter_do_call+0x12/0x38 Signed-off-by: Emmanuel Grumbach Signed-off-by: Reinette Chatre commit 9edc71b746efeaadc40e668964b76cda81fef386 Author: Wey-Yi Guy Date: Wed Jun 2 15:17:49 2010 -0700 iwlwifi: add name to Maintainers list Add "Wey-Yi Guy" to maintainers list for iwlwifi. Signed-off-by: Wey-Yi Guy Signed-off-by: Reinette Chatre commit 1402364162afbaac1b8a74ee21aeb013e817ac7d Author: Abhijeet Kolekar Date: Wed Jun 2 21:15:10 2010 -0700 iwl3945: fix internal scan Port of internal scan to iwl3945 missed introduction of iwl3945_get_single_channel_for_scan. Fix the following bug by introducing the iwl3945_get_single_channel_for_scan http://bugzilla.intellinuxwireless.org/show_bug.cgi?id=2208 Signed-off-by: Abhijeet Kolekar Signed-off-by: Reinette Chatre commit a6866ac93e6cb68091326e80b4fa4619a5957644 Author: Reinette Chatre Date: Thu May 20 10:54:40 2010 -0700 iwl3945: enable stuck queue detection on 3945 We learn from http://bugzilla.intellinuxwireless.org/show_bug.cgi?id=1834 and https://bugzilla.redhat.com/show_bug.cgi?id=589777 that 3945 can also suffer from a stuck command queue. Enable stuck queue detection for iwl3945 to enable recovery in this case. Signed-off-by: Reinette Chatre commit 72e09ad107e78d69ff4d3b97a69f0aad2b77280f Author: Eric Dumazet Date: Sat Jun 5 03:03:30 2010 -0700 ipv6: avoid high order allocations With mtu=9000, mld_newpack() use order-2 GFP_ATOMIC allocations, that are very unreliable, on machines where PAGE_SIZE=4K Limit allocated skbs to be at most one page. (order-0 allocations) Signed-off-by: Eric Dumazet Signed-off-by: David S. Miller commit 6b5dcccb495b66b3b0b9581cdccfed038e5d68a2 Author: Bob Copeland Date: Fri Jun 4 08:14:14 2010 -0400 ath5k: retain promiscuous setting Commit 56d1de0a21db28e41741cfa0a66e18bc8d920554, "ath5k: clean up filter flags setting" introduced a regression in monitor mode such that the promisc filter flag would get lost. Although we set the promisc flag when it changed, we did not preserve it across subsequent calls to configure_filter. This patch restores the original functionality. Cc: stable@kernel.org Bisected-by: weedy2887@gmail.com Tested-by: weedy2887@gmail.com Tested-by: Rick Farina Signed-off-by: Bob Copeland Signed-off-by: John W. Linville commit e307139d7ad532761cdbf2a665f3c53c509a2d0e Author: Tobias Doerffel Date: Sun May 30 00:02:18 2010 +0200 ath5k: depend on CONFIG_PM_SLEEP for suspend/resume functions When building a kernel with CONFIG_PM=y but neither suspend nor hibernate support, the compiler complains about the static functions ath5k_pci_suspend() and ath5k_pci_resume() not being used: drivers/net/wireless/ath/ath5k/base.c:713:12: warning: ‘ath5k_pci_suspend’ defined but not used drivers/net/wireless/ath/ath5k/base.c:722:12: warning: ‘ath5k_pci_resume’ defined but not used Depending on CONFIG_PM_SLEEP rather than CONFIG_PM fixes the issue. Signed-off-by: Tobias Doerffel Signed-off-by: John W. Linville commit 8b9a4e6e442756f670ef507f09bbc6c11dc0fca6 Author: Johannes Berg Date: Fri May 28 15:22:58 2010 +0200 mac80211: process station blockack action frames from work Processing an association response could take a bit of time while we set up the hardware etc. During that time, the AP might already send a blockack request. If this happens very quickly on a fairly slow machine, we can end up processing the blockack request before the association processing has finished. Since the blockack processing cannot sleep right now, we also cannot make it wait in the driver. As a result, sometimes on slow machines the iwlagn driver gets totally confused, and no traffic can pass when the aggregation setup was done before the assoc setup completed. I'm working on a proper fix for this, which involves queuing all blockack category action frames from a work struct, and also allowing the ampdu_action driver callback to sleep, which will generally clean up the code and make things easier. However, this is a very involved and complex change. To fix the problem at hand in a way that can also be backported to stable, I've come up with this patch. Here, I simply process all aggregation action frames from the managed interface skb queue, which means their processing will be serialized with processing the association response, thereby fixing the problem. Signed-off-by: Johannes Berg Cc: stable@kernel.org Signed-off-by: John W. Linville commit 56bf882230d2266a2e07b7f404dc96d157a65daa Author: John W. Linville Date: Fri Jun 4 14:47:35 2010 -0400 Revert "wireless: hostap, fix oops due to early probing interrupt" This reverts commit 15920d8afc87861672e16fa95ae2764b065d6dd3. This patch was discovered to cause some hostap devices to fail to initialized. https://bugzilla.kernel.org/show_bug.cgi?id=16111 Signed-off-by: John W. Linville commit 1e5ea23df11c7c90c7e7268dd3a6603bfa5aadf7 Author: Sage Weil Date: Fri Jun 4 10:05:40 2010 -0700 ceph: fix lease revocation when seq doesn't match If the client revokes a lease with a higher seq than what we have, keep the mds's seq, so that it honors our release. Otherwise, we can hang indefinitely. Signed-off-by: Sage Weil commit 58cc1a9e3b11a84e66c4d3a4cc9073f2cb0ecabb Merge: c6df8d5 e7dadc0 Author: Ingo Molnar Date: Fri Jun 4 16:55:19 2010 +0200 Merge branch 'perf/urgent' of git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux-2.6 into perf/urgent commit e7dadc0089da730a1ba2638a1a03533be0c67f11 Author: Arnaldo Carvalho de Melo Date: Thu Jun 3 18:35:55 2010 -0300 perf symbols: Set the DSO long name when using symbol_conf.vmlinux_name We need to set the long name to the name specified via, for instance, 'perf annotate --vmlinux /path/to/vmlinux', if not it will remain as '[kernel.kallsyms]' and that will make annotate fail when passing this as the vmlinux name in the call to objdump. The way this is setup grew unwieldly and dso__load_vmlinux is the function that should allocate space for the long name, with callers not assuming that filenames should be allocated somehow by then (strdup, dso__build_id_filename, etc). For now this is the minimalistic patch, a proper fix for .36 will be made. Reported-by: Stephane Eranian Tested-by: Stephane Eranian Cc: David S. Miller Cc: Frédéric Weisbecker Cc: Ingo Molnar Cc: Mike Galbraith Cc: Paul Mackerras Cc: Peter Zijlstra Cc: Stephane Eranian Cc: Tom Zanussi LKML-Reference: <20100604003900.GD10469@ghostprotocols.net> Signed-off-by: Arnaldo Carvalho de Melo commit e72e6497e74811e01d72b4c1b7537b3aea3ee857 Author: David Woodhouse Date: Thu Jun 3 08:09:12 2010 +0100 jffs2: Fix NFS race by using insert_inode_locked() New inodes need to be locked as we're creating them, so they don't get used by other things (like NFSd) before they're ready. Pointed out by Al Viro. Signed-off-by: David Woodhouse commit f324e4cb2cadd9a42932c8a158e761ae31b88e72 Author: David Woodhouse Date: Thu Jun 3 08:03:39 2010 +0100 jffs2: Fix in-core inode leaks on error paths Pointed out by Al Viro. Signed-off-by: David Woodhouse commit 5869d2c387e75814334697c9d702d91b7c63a308 Author: Maxim Levitsky Date: Wed Jun 2 18:22:48 2010 +0300 mtd: Fix NAND submenu Move MTD_NAND_ECC and MTD_NAND_ECC_SMC above NAND memuconfig, to unbreak display in xconfig. This shouldn't change any dependencies. Signed-off-by: Maxim Levitsky Signed-off-by: David Woodhouse commit 10389536742cefbedecb67a5b2906f155cf3a1c3 Author: Stefan Richter Date: Sun May 30 19:43:52 2010 +0200 firewire: core: check for 1394a compliant IRM, fix inaccessibility of Sony camcorder Per IEEE 1394 clause 8.4.2.3, a contender for the IRM role shall check whether the current IRM complies to 1394a-2000 or later. If not force a compliant node (e.g. itself) to become IRM. This was implemented in the older ieee1394 driver but not yet in firewire-core. An older Sony camcorder (Sony DCR-TRV25) which implements 1394-1995 IRM but neither 1394a-2000 IRM nor BM was now found to cause an interoperability bug: - Camcorder becomes root node when plugged in, hence gets IRM role. - firewire-core successfully contends for BM role, proceeds to perform gap count optimization and resets the bus. - Sony camcorder ignores presence of a BM (against the spec, this is a firmware bug), performs its idea of gap count optimization and resets the bus. - Preceding two steps are repeated endlessly, bus never settles, regular I/O is practically impossible. http://thread.gmane.org/gmane.linux.kernel.firewire.user/3913 This is an interoperability regression from the old to the new drivers. Fix it indirectly by adding the 1394a IRM check. The spec suggests three and a half methods to determine 1394a compliance of a remote IRM; we choose the method of testing the Config_ROM.Bus_Info.generation field. This is data that firewire-core should have readily available at this point, i.e. does not require extra I/O. Reported-by: Clemens Ladisch (missing 1394a check) Reported-by: H. S. (issue with Sony DCR-TRV25) Tested-by: H. S. Cc: # .32.x and newer Signed-off-by: Stefan Richter commit ac373f7e2286ed3690e8a93ebf9f6f1ae0c7d4a9 Author: Maxim Levitsky Date: Wed Jun 2 16:01:47 2010 +0300 mtd/r852: update card detect early. This turns out to be the reason for DMA timeouts on resume, if card was inserted while system was suspended Signed-off-by: Maxim Levitsky Signed-off-by: David Woodhouse commit 9489be8ca234c07666e88a4472e4d5f2a2425aa5 Author: Maxim Levitsky Date: Wed Jun 2 16:01:46 2010 +0300 mtd/r852: Fixes in case of DMA timeout * Don't call complete on dma completion * do a INIT_COMPLETE before using it each time * Report DMA read error via ecc 'correct' I finally managed to make my system do suspend to ram propertly, and I see that if card was inserted during suspend (while system was off), I get dma timeouts on resume. Simple card reinsert solves the issue. This patch solves a crash that would happen otherwise Signed-off-by: Maxim Levitsky Signed-off-by: David Woodhouse commit cc1fed00c9ba84f38717a6cab84409cd48f340e3 Author: Maxim Levitsky Date: Wed Jun 2 16:01:45 2010 +0300 mtd/r852: register IRQ as last step Otherwise, if it fires right away, it might access uninitialized spinlock Signed-off-by: Maxim Levitsky Signed-off-by: David Woodhouse commit 558d3499bd059d4534b1f2b69dc1c562acc733fe Author: Sage Weil Date: Tue Jun 1 12:51:12 2010 -0700 ceph: fix f_namelen reported by statfs We were setting f_namelen in kstatfs to PATH_MAX instead of NAME_MAX. That disagrees with ceph_lookup behavior (which checks against NAME_MAX), and also makes the pjd posix test suite spit out ugly errors because with can't clean up its temporary files. Signed-off-by: Sage Weil commit 205475679a74fe40b63a1c7f41110fdb64daa8b9 Author: Yehuda Sadeh Date: Tue Jun 1 10:37:40 2010 -0700 ceph: fix memory leak in statfs Freeing the statfs request structure when required. Signed-off-by: Yehuda Sadeh Signed-off-by: Sage Weil commit 13a4214cd9ec14d7b77e98bd3ee51f60f868a6e5 Author: Henry C Chang Date: Tue Jun 1 11:31:08 2010 -0700 ceph: fix d_subdirs ordering problem We misused list_move_tail() to order the dentry in d_subdirs. This will screw up the d_subdirs order. This bug can be reliably reproduced by: 1. mount ceph fs. 2. on ceph fs, git clone git://ceph.newdream.net/git/ceph.git 3. Run autogen.sh in ceph directory. (Note: Errors only occur at the first time you run autogen.sh.) Signed-off-by: Henry C Chang Signed-off-by: Sage Weil commit b160fdabe93a8a53094f90f02bf4dcb500782aab Author: Christoph Hellwig Date: Tue Jun 1 21:59:18 2010 +0200 nfsd: nfsd_setattr needs to call commit_metadata The conversion of write_inode_now calls to commit_metadata in commit f501912a35c02eadc55ca9396ece55fe36f785d0 missed out the call in nfsd_setattr. But without this conversion we can't guarantee that a SETATTR request has actually been commited to disk with XFS, which causes a regression from 2.6.32 (only for NFSv2, but anyway). Signed-off-by: Christoph Hellwig Cc: stable@kernel.org Signed-off-by: J. Bruce Fields commit d30e5d897c3da7c2d17c8112331b66ed953eec78 Author: Marek Vasut Date: Fri May 28 04:42:59 2010 +0200 [ARM] pxa/spitz: Correctly register WM8750 This patch registers the WM8750 codec on a proper place on the SPITZ machine after the WM8750 driver was converted to new API. Signed-off-by: Marek Vasut Signed-off-by: Eric Miao commit 600ae40df788d282523b1b86624b83f7a11a97cb Author: Tobias Klauser Date: Thu May 20 10:31:46 2010 +0200 [ARM] pxa/palmtc: storage class should be before const qualifier The C99 specification states in section 6.11.5: The placement of a storage-class specifier other than at the beginning of the declaration specifiers in a declaration is an obsolescent feature. Signed-off-by: Tobias Klauser Acked-by: Marek Vasut Signed-off-by: Eric Miao commit 3defb2476166445982a90c12d33f8947e75476c4 Author: Marek Vašut Date: Wed May 26 23:53:09 2010 +0100 ARM: 6146/1: sa1111: Prevent deadlock in resume path This patch reorganises the sa1111_resume() function in a manner the spinlock happens after calling the sa1111_wake(). This fixes two bugs: 1) This function called sa1111_wake() which tried to claim the same spinlock the sa1111_resume() already claimed. This would result in certain deadlock. Original idea for this part: Russell King 2) The function didn't unlock the spinlock in case the chip didn't report correct ID. Original idea for this part: Julia Lawall Signed-off-by: Marek Vasut Cc: Signed-off-by: Russell King commit ba327b1e5296b70745e50bcf0446ae8f82e3d478 Author: Linus Walleij Date: Wed May 26 07:38:54 2010 +0100 ARM: 6145/1: ux500 MTU clockrate correction This adjusts the clockrate for the MTU timer. On the different UX500 variants this rate is different. The platform can also have been set up at hardware initialization, bootloader or early init for different clock speeds. To have the clock framework available early so the timers can use them, the clock initialization for Nomadik and ux500 is moved to IRQ init time. A custom per-clock callback is added to handle special cases like this. This solves a user-visible bug: without this patch the current UX500 platforms will not be synchronized to wall-clock time and the platform will drift in time. Acked-by: Rabin Vincent Signed-off-by: Linus Walleij Signed-off-by: Russell King commit ea208f646c8fb91c39c852e952fc911e1ad045ab Author: Linus Walleij Date: Wed May 26 07:37:57 2010 +0100 ARM: 6144/1: TCM memory bug freeing bug This fixes a bug in mm/init.c when freeing the TCM compile memory, this was being referred to as a char * which is incorrect: this will dereference the pointer and feed in the value at the location instead of the address to it. Change it to a plain char and use &(char) to reference it. Signed-off-by: Linus Walleij Cc: Signed-off-by: Russell King commit 138de1c44a8e0606501cd8593407e9248e84f1b7 Author: Russell King Date: Thu May 27 08:23:29 2010 +0100 ARM: VFP: Fix vfp_put_double() for d16-d31 vfp_put_double() takes the double value in r0,r1 not r1,r2. Reported-by: Tarun Kanti DebBarma Cc: Signed-off-by: Russell King commit df1f1d1cb43b4ffdef5ba5f0623e2f73e94ce030 Author: Julia Lawall Date: Sat May 22 10:22:49 2010 +0200 drivers/mtd: Use memdup_user Use memdup_user when user data is immediately copied into the allocated region. The semantic patch that makes this change is as follows: (http://coccinelle.lip6.fr/) // @@ expression from,to,size,flag; position p; identifier l1,l2; @@ - to = \(kmalloc@p\|kzalloc@p\)(size,flag); + to = memdup_user(from,size); if ( - to==NULL + IS_ERR(to) || ...) { <+... when != goto l1; - -ENOMEM + PTR_ERR(to) ...+> } - if (copy_from_user(to, from, size) != 0) { - <+... when != goto l2; - -EFAULT - ...+> - } // Signed-off-by: Julia Lawall Signed-off-by: David Woodhouse commit 39c5837d7968ffd68e1d3c79efba1631b7f513d9 Author: H Hartley Sweeten Date: Mon May 17 16:21:11 2010 -0700 docbook: make mtd nand module init static In the example the module_init function should be static. Signed-off-by: H Hartley Sweeten Signed-off-by: Randy Dunlap Signed-off-by: David Woodhouse