aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2011-03-03sysv: i_nlink races in rename()Al Viro1-6/+2
Signed-off-by: Al Viro <[email protected]>
2011-03-02RxRPC: Fix v1 keysAnton Blanchard1-1/+0
commit 339412841d7 (RxRPC: Allow key payloads to be passed in XDR form) broke klog for me. I notice the v1 key struct had a kif_version field added: -struct rxkad_key { - u16 security_index; /* RxRPC header security index */ - u16 ticket_len; /* length of ticket[] */ - u32 expiry; /* time at which expires */ - u32 kvno; /* key version number */ - u8 session_key[8]; /* DES session key */ - u8 ticket[0]; /* the encrypted ticket */ -}; +struct rxrpc_key_data_v1 { + u32 kif_version; /* 1 */ + u16 security_index; + u16 ticket_length; + u32 expiry; /* time_t */ + u32 kvno; + u8 session_key[8]; + u8 ticket[0]; +}; However the code in rxrpc_instantiate strips it away: data += sizeof(kver); datalen -= sizeof(kver); Removing kif_version fixes my problem. Signed-off-by: Anton Blanchard <[email protected]> Signed-off-by: David Howells <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2011-03-02AF_RXRPC: Handle receiving ACKALL packetsDavid Howells1-0/+1
The OpenAFS server is now sending ACKALL packets, so we need to handle them. Otherwise we report a protocol error and abort. Signed-off-by: David Howells <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2011-03-02Merge branch 'drm-fixes' of ↵Linus Torvalds1-0/+11
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: drm/i915: fix memory corruption with GM965 and >4GB RAM
2011-03-02Merge branch 'devicetree/merge' of git://git.secretlab.ca/git/linux-2.6Linus Torvalds4-73/+45
* 'devicetree/merge' of git://git.secretlab.ca/git/linux-2.6: of/promtree: allow DT device matching by fixing 'name' brokenness (v5) x86: OLPC: have prom_early_alloc BUG rather than return NULL of/flattree: Drop an uninteresting message to pr_debug level of: Add missing of_address.h to xilinx ehci driver
2011-03-02Merge branch 'for-linus' of ↵Linus Torvalds22-209/+224
git://git.kernel.org/pub/scm/linux/kernel/git/mattst88/alpha-2.6 * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mattst88/alpha-2.6: alpha: Enable GENERIC_HARDIRQS_NO_DEPRECATED alpha: irq: Convert affinity to use irq_data alpha: irq: Remove pointless irq status manipulation alpha: titan: Convert irq_chip functions alpha: takara: Convert irq_chip functions alpha: sable: Convert irq_chip functions alpha: rx164: Convert irq_chip functions alpha: noritake: Convert irq_chip functions alpha: rawhide: Convert irq_chip functions alpha: mikasa: Convert irq_chip functions alpha: marvel: Convert irq_chip functions alpha: eiger: Convert irq_chip functions alpha: eb64p: Convert irq_chip functions alpha: dp264: Convert irq_chip functions alpha: cabriolet: Convert irq_chip functions alpha: i8259, alcor, jensen wildfire: Convert irq_chip alpha: srm: Convert irq_chip functions alpha: Pyxis convert irq_chip functions Fix typo in call to irq_to_desc()
2011-03-02Merge branch 'for-linus' of ↵Linus Torvalds6-12/+37
git://git.kernel.org/pub/scm/linux/kernel/git/sameo/mfd-2.6 * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/sameo/mfd-2.6: mfd: Avoid tps6586x burst writes mfd: Don't suspend WM8994 if the CODEC is not suspended mfd: Fix DaVinci voice codec device name mfd: Fix NULL pointer due to non-initialized ucb1x00-ts absinfo mfd: Fix ASIC3 build with GENERIC_HARDIRQS_NO_DEPRECATED
2011-03-02Merge branch 'for_linus' of ↵Linus Torvalds1-7/+2
git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs-2.6 * 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs-2.6: ext2: Fix link count corruption under heavy link+rename load
2011-03-02Merge branch 'fixes' of ↵Linus Torvalds3-18/+28
git://git.kernel.org/pub/scm/linux/kernel/git/davej/cpufreq * 'fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/davej/cpufreq: [CPUFREQ] p4-clockmod: print EST-capable warning message only once [CPUFREQ] fix BUG on cpufreq policy init failure [CPUFREQ] Fix another notifier leak in powernow-k8. [CPUFREQ] Missing "unregister_cpu_notifier" in powernow-k8.c
2011-03-02Merge branch 'merge' of ↵Linus Torvalds4-7/+18
git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc * 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc: powerpc: Fix call to flush_ptrace_hw_breakpoint() powerpc/kexec: Restore ppc_md.machine_kexec powerpc/mm: Make hpte_need_flush() safe for preemption
2011-03-02Merge branch 'idle-release' of ↵Linus Torvalds2-0/+29
git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-idle-2.6 * 'idle-release' of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-idle-2.6: intel_idle: disable Atom/Lincroft HW C-state auto-demotion intel_idle: disable NHM/WSM HW C-state auto-demotion
2011-03-02cnic: Fix lost interrupt on bnx2xMichael Chan1-8/+17
We service 2 queues (kcq1 and kcq2) in cnic_service_bnx2x_bh(). If the status block index has changed when servicing the kcq2, we must go back and check kcq1. The latest status block index will be used to acknowledge the interrupt, and without looping back to check kcq1, we may miss events on kcq1. Signed-off-by: Michael Chan <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2011-03-02cnic: Prevent status block race conditions with hardwareMichael Chan1-0/+8
The status block index is used to acknowledge interrupt events and must be read before checking for the interrupt events, so we need to add rmb() to guarantee that. Signed-off-by: Michael Chan <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2011-03-02Merge branch 'release' of ↵Linus Torvalds4-20/+66
git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-acpi-2.6 * 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-acpi-2.6: ACPI / ACPICA: Implicit notify for multiple devices ACPI / debugfs: Fix buffer overflows, double free
2011-03-02Merge branch 'master' of ↵David S. Miller3-3/+5
master.kernel.org:/pub/scm/linux/kernel/git/jkirsher/net-2.6
2011-03-02net: dcbnl: check correct ops in dcbnl_ieee_set()John Fastabend1-1/+1
The incorrect ops routine was being tested for in DCB_ATTR_IEEE_PFC attributes. This patch corrects it. Currently, every driver implementing ieee_setets also implements ieee_setpfc so this bug is not actualized yet. Signed-off-by: John Fastabend <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2011-03-02of/promtree: allow DT device matching by fixing 'name' brokenness (v5)Andres Salomon1-70/+42
Commit e2f2a93b, "of/promtree: add package-to-path support to pdt" changed dp->name from using the 'name' property to using package-to-path. This fixed /proc/device-tree creation by eliminating conflicts between names (the 'name' property provides names like 'battery', whereas package-to-path provides names like '/foo/bar/battery@0', which we stripped to 'battery@0'). However, it also breaks of_device_id table matching. The fix that we _really_ wanted was to keep dp->name based upon the name property ('battery'), but based dp->full_name upon package-to-path ('battery@0'). This patch does just that. This changes all users (except SPARC) of promtree to use the full result from package-to-path for full_name, rather than stripping the directory out. In practice, the strings end up being exactly the same; this change saves time, code, and memory. SPARC continues to use the existing build_path_component() code. v2: combine two patches and revert of_pdt_node_name to original version v3: use dp->phandle instead of passing around node v4: warn/bail out for non-sparc archs if pkg2path is not set v5: split of_pdt_build_full_name into sparc & non-sparc versions v6: Pass NULL to pkg2path before buf gets assigned. Drop check for pkg2path hook on each and every node. v7: Don't BUG() when unable to get the full_path; create a known-unique name instead. Signed-off-by: Andres Salomon <[email protected]> Signed-off-by: Grant Likely <[email protected]>
2011-03-02x86: OLPC: have prom_early_alloc BUG rather than return NULLAndres Salomon1-2/+1
..similar to what sparc's prom_early_alloc does. Signed-off-by: Andres Salomon <[email protected]> Signed-off-by: Grant Likely <[email protected]>
2011-03-02of/flattree: Drop an uninteresting message to pr_debug levelPaul Bolle1-1/+1
This message looks like an error (which it isn't) when booting with a flattened device tree. Remove the message from normal kernel builds. Signed-off-by: Paul Bolle <[email protected]> Signed-off-by: Grant Likely <[email protected]>
2011-03-02of: Add missing of_address.h to xilinx ehci driverMichal Simek1-0/+1
Build log: In file included from drivers/usb/host/ehci-hcd.c:1208: drivers/usb/host/ehci-xilinx-of.c: In function 'ehci_hcd_xilinx_of_probe': drivers/usb/host/ehci-xilinx-of.c:168: error: implicit declaration of function 'of_address_to_resource' Signed-off-by: John Williams <[email protected]> Signed-off-by: Michal Simek <[email protected]> Acked-by: Greg Kroah-Hartman <[email protected]> Signed-off-by: Grant Likely <[email protected]>
2011-03-02alpha: Enable GENERIC_HARDIRQS_NO_DEPRECATEDThomas Gleixner1-0/+1
All interrupt chips are converted. Mark it clean. Signed-off-by: Thomas Gleixner <[email protected]> Signed-off-by: Matt Turner <[email protected]>
2011-03-02alpha: irq: Convert affinity to use irq_dataThomas Gleixner1-4/+9
affinity is moving to irq_data. Fix it up. Signed-off-by: Thomas Gleixner <[email protected]> Signed-off-by: Matt Turner <[email protected]>
2011-03-02alpha: irq: Remove pointless irq status manipulationThomas Gleixner1-8/+3
The irq descriptors are initialized IRQ_DISABLED in the generic code. No need to fiddle with them. Signed-off-by: Thomas Gleixner <[email protected]> Signed-off-by: Matt Turner <[email protected]>
2011-03-02alpha: titan: Convert irq_chip functionsThomas Gleixner1-9/+12
Signed-off-by: Thomas Gleixner <[email protected]> Signed-off-by: Matt Turner <[email protected]>
2011-03-02alpha: takara: Convert irq_chip functionsThomas Gleixner1-6/+8
Signed-off-by: Thomas Gleixner <[email protected]> Signed-off-by: Matt Turner <[email protected]>
2011-03-02alpha: sable: Convert irq_chip functionsThomas Gleixner1-10/+10
Signed-off-by: Thomas Gleixner <[email protected]> Signed-off-by: Matt Turner <[email protected]>
2011-03-02alpha: rx164: Convert irq_chip functionsThomas Gleixner1-8/+8
Signed-off-by: Thomas Gleixner <[email protected]> Signed-off-by: Matt Turner <[email protected]>
2011-03-02alpha: noritake: Convert irq_chip functionsThomas Gleixner1-8/+8
Signed-off-by: Thomas Gleixner <[email protected]> Signed-off-by: Matt Turner <[email protected]>
2011-03-02alpha: rawhide: Convert irq_chip functionsThomas Gleixner1-7/+10
Signed-off-by: Matt Turner <[email protected]>
2011-03-02alpha: mikasa: Convert irq_chip functionsThomas Gleixner1-8/+8
Signed-off-by: Thomas Gleixner <[email protected]> Signed-off-by: Matt Turner <[email protected]>
2011-03-02alpha: marvel: Convert irq_chip functionsThomas Gleixner1-23/+19
Signed-off-by: Thomas Gleixner <[email protected]> Signed-off-by: Matt Turner <[email protected]>
2011-03-02alpha: eiger: Convert irq_chip functionsThomas Gleixner1-6/+8
Signed-off-by: Thomas Gleixner <[email protected]> Signed-off-by: Matt Turner <[email protected]>
2011-03-02alpha: eb64p: Convert irq_chip functionsThomas Gleixner1-9/+9
Signed-off-by: Thomas Gleixner <[email protected]> Signed-off-by: Matt Turner <[email protected]>
2011-03-02alpha: dp264: Convert irq_chip functionsThomas Gleixner1-25/+27
Signed-off-by: Thomas Gleixner <[email protected]> Signed-off-by: Matt Turner <[email protected]>
2011-03-02alpha: cabriolet: Convert irq_chip functionsThomas Gleixner1-8/+8
Signed-off-by: Thomas Gleixner <[email protected]> Signed-off-by: Matt Turner <[email protected]>
2011-03-02alpha: i8259, alcor, jensen wildfire: Convert irq_chipThomas Gleixner5-52/+58
Signed-off-by: Thomas Gleixner <[email protected]> Signed-off-by: Matt Turner <[email protected]>
2011-03-02alpha: srm: Convert irq_chip functionsThomas Gleixner1-8/+8
Signed-off-by: Thomas Gleixner <[email protected]> Signed-off-by: Matt Turner <[email protected]>
2011-03-02alpha: Pyxis convert irq_chip functionsThomas Gleixner1-10/+10
Signed-off-by: Thomas Gleixner <[email protected]> Signed-off-by: Matt Turner <[email protected]>
2011-03-02Fix typo in call to irq_to_desc()Morten Holst Larsen1-1/+1
Fix typo in call to irq_to_desc() Signed-off-by: Morten H. Larsen <[email protected]> Signed-off-by: Matt Turner <[email protected]>
2011-03-02Merge branch 'master' of ↵David S. Miller2-2/+6
git://git.kernel.org/pub/scm/linux/kernel/git/kaber/nf-2.6
2011-03-02[media] tda829x: fix regression in probe functionsJarod Wilson1-7/+7
In commit 567aba0b7997dad5fe3fb4aeb174ee9018df8c5b, the probe address for tda8290_probe and tda8295_probe was hard-coded to 0x4b, which is the default i2c address for those devices, but its possible for the device to be at an alternate address, 0x42, which is the case for the HVR-1950. If we probe the wrong address, probe fails and we have a non-working device. We have the actual address passed into the function by way of i2c_props, we just need to use it. Also fix up some copy/paste comment issues and streamline debug spew a touch. Verified to restore my HVR-1950 to full working order. Special thanks to Ken Bass for reporting the issue in the first place, and to both he and Gary Buhrmaster for aiding in debugging and analysis of the problem. Reported-by: Ken Bass <[email protected]> Tested-by: Jarod Wilson <[email protected]> Signed-off-by: Jarod Wilson <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2011-03-02[media] mceusb: don't claim multifunction device non-IR partsJarod Wilson1-12/+15
There's a Realtek combo card reader and IR receiver device with multiple usb interfaces on it. The mceusb driver is incorrectly grabbing all of them. This change should make it bind to only interface 2 (patch based on lsusb output on the linux-media list from Lucian Muresan). Tested regression-free with the six mceusb devices I have myself. Reported-by: Patrick Boettcher <[email protected]> Reported-by: Lucian Muresan <[email protected]> Signed-off-by: Jarod Wilson <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2011-03-02[media] nuvoton-cir: fix wake from suspendJarod Wilson2-4/+8
The CIR Wake FIFO is 67 bytes long, but the stock remote appears to only populate 65 of them. Limit comparison to 65 bytes, and wake from suspend works a whole lot better (it wasn't working at all for most folks). Fix based on comparison with the old lirc_wb677 driver from Nuvoton, debugging and testing done by Dave Treacy by way of the lirc mailing list. Reported-by: Dave Treacy <[email protected]> Signed-off-by: Jarod Wilson <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2011-03-02[media] cx18: Add support for Hauppauge HVR-1600 models with s5h1411Devin Heitmueller4-4/+112
The newest variants of the HVR-1600 have an s5h1411/tda18271 for the digital frontend. Add support for these boards. Thanks to Hauppauge Computer Works for providing sample hardware. [[email protected]: Changed an additional log message to clarify for the end user that the driver is defaulting to an original HVR-1600 for unknown model numbers.] Signed-off-by: Devin Heitmueller <[email protected]> Signed-off-by: Andy Walls <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2011-03-02[media] ivtv: Fix corrective action taken upon DMA ERR interrupt to avoid hangMichael1-7/+51
After upgrading the kernel from stock Ubuntu 7.10 to 10.04, with no hardware changes, I started getting the dreaded DMA TIMEOUT errors, followed by inability to encode until the machine was rebooted. I came across a post from Andy in March (http://www.gossamer-threads.com/lists/ivtv/users/40943#40943) where he speculates that perhaps the corrective actions being taken after a DMA ERROR are not sufficient to recover the situation. After some testing I suspect that this is indeed the case, and that in fact the corrective action may be what hangs the card's DMA engine, rather than the original error. Specifically these DMA ERROR IRQs seem to present with two different values in the IVTV_REG_DMASTATUS register: 0x11 and 0x13. The current corrective action is to clear that status register back to 0x01 or 0x03, and then issue the next DMA request. In the case of a 0x13 this seems to result in a minor glitch in the encoded stream due to the failed transfer that was not retried, but otherwise things continue OK. In the case of a 0x11 the card's DMA write engine is never heard from again, and a DMA TIMEOUT follows shortly after. 0x11 is the killer. I suspect that the two cases need to be handled differently. The difference is in bit 1 (0x02), which is set when the error is about to be successfully recovered, and clear when things are about to go bad. Bit 1 of DMASTATUS is described differently in different places either as a positive "write finished", or an inverted "write busy". If we take the first definition, then when an error arises with state 0x11, it means that the write did not complete. It makes sense to start a new transfer, as in the current code. But if we take the second definition, then 0x11 means "an error but the write engine is still busy". Trying to feed it a new transfer in this situation might not be a good idea. As an experiment, I added code to ignore the DMA ERROR IRQ if DMASTATUS is 0x11. I.e., don't start a new transfer, don't clear our flags, etc. The hope was that the card would complete the transfer and issue a ENC DMA COMPLETE, either successfully or with an error condition there. However the card still hung. The only remaining corrective action being taken with a 0x11 status was then the write back to the status register to clear the error, i.e. DMASTATUS = DMASTATUS & ~3. This would have the effect of clearing the error bit 4, while leaving the lower bits indicating DMA write busy. Strangely enough, removing this write to the status register solved the problem! If the DMA ERROR IRQ with DMASTATUS=0x11 is completely ignored, with no corrective action at all, then the card will complete the transfer and issue a new IRQ. If the status register is written to when it has the value 0x11, then the DMA engine hangs. Perhaps it's illegal to write to DMASTATUS while the read or write busy bit is set? At any rate, it appears that the current corrective action is indeed making things worse rather than better. I put together a patch that modifies ivtv_irq_dma_err to do the following: - Don't write back to IVTV_REG_DMASTATUS. - If write-busy is asserted, leave the card alone. Just extend the timeout slightly. - If write-busy is de-asserted, retry the current transfer. This has completely fixed my DMA TIMEOUT woes. DMA ERR events still occur, but now they seem to be correctly handled. 0x11 events no longer hang the card, and 0x13 events no longer result in a glitch in the stream, as the failed transfer is retried. I'm happy. I've inlined the patch below in case it is of interest. As described above, I have a theory about why it works (based on a different interpretation of bit 1 of DMASTATUS), but I can't guarantee that my theory is correct. There may be another explanation, or it may be a fluke. Maybe ignoring that IRQ entirely would be equally effective? Maybe the status register read/writeback sequence is race condition if the card changes it in the mean time? Also as I am using a PVR-150 only, I have not been able to test it on other cards, which may be especially relevant for 350s that support concurrent decoding. Hopefully the patch does not break the DMA READ path. Mike [[email protected]: Modified patch to add a verbose comment, make minor brace reformats, and clear the error flags in the IVTV_REG_DMASTATUS iff both read and write DMA were not in progress. Mike's conjecture about a race condition with the writeback is correct; it can confuse the DMA engine.] [Comment and analysis from the ML post by Michael <[email protected]>] Signed-off-by: Andy Walls <[email protected]> Cc: [email protected] Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2011-03-02[media] cx25840: fix probing of cx2583x chipsSven Barth1-1/+2
Fix the probing of cx2583x chips, because two controls were clustered that are not created for these chips. This regression was introduced in 2.6.36. Signed-off-by: Sven Barth <[email protected]> Signed-off-by: Andy Walls <[email protected]> Cc: [email protected] Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2011-03-02[media] cx23885: Remove unused 'err:' labels to quiet compiler warningAndy Walls1-2/+0
The previous revert-commit, that affected cx23885-i2c.c, left some unused labels that the compiler griped about. Clean them up. Signed-off-by: Andy Walls <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2011-03-02[media] cx23885: Revert "Check for slave nack on all transactions"Andy Walls1-8/+0
This reverts commit 44835f197bf1e3f57464f23dfb239fef06cf89be. With the CX23885 hardware I2C master, checking for I2C slave ACK/NAK is not valid when the I2C_EXTEND or I2C_NOSTOP bits are set. Revert the commit that checks for I2C slave ACK/NAK on all transactions, so that XC5000 tuners work with the CX23885 again. Thanks go to Mark Zimmerman for reporting and bisecting this problem. Bisected-by: Mark Zimmerman <[email protected]> Reported-by: Mark Zimmerman <[email protected]> Signed-off-by: Andy Walls <[email protected]> Cc: [email protected] Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2011-03-02[media] DiB7000M: add pid filteringOlivier Grenie3-2/+53
This patch adds the pid filtering for the dib7000M demod. It also corrects the pid filtering for the dib7700 based board. It should prevent an oops, when using dib7700p based board. References: https://bugzilla.novell.com/show_bug.cgi?id=644807 Signed-off-by: Olivier Grenie <[email protected]> Signed-off-by: Patrick Boettcher <[email protected]> Tested-by: Pavel SKARKA <[email protected]> Cc: [email protected] Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2011-03-02[media] Fix sysfs rc protocol lookup for rc-5-szAntti Seppälä1-1/+1
With the current matching rules the lookup for rc protocol named rc-5-sz matches with "rc-5" before finding "rc-5-sz". Thus one is able to never enable/disable the rc-5-sz protocol via sysfs. Fix the lookup to require an exact match which allows the manipulation of sz protocol. Signed-off-by: Antti Seppälä <[email protected]> Cc: [email protected] Signed-off-by: Mauro Carvalho Chehab <[email protected]>