Commit: fc1909932c4e32e5966168ba9d42d1ab8b4699a3 Author: Adrian Bunk Mon, 18 Dec 2006 21:08:14 +0100 Linux 2.6.16.37-rc1 Commit: 1488da2060a943584163df47a51d25c708e88b1a Author: Trond Myklebust Mon, 18 Dec 2006 20:55:04 +0100 NFS: nfs_lookup - don't hash dentry when optimising away the lookup If the open intents tell us that a given lookup is going to result in a, exclusive create, we currently optimize away the lookup call itself. The reason is that the lookup would not be atomic with the create RPC call, so why do it in the first place? A problem occurs, however, if the VFS aborts the exclusive create operation after the lookup, but before the call to create the file/directory: in this case we will end up with a hashed negative dentry in the dcache that has never been looked up. Fix this by only actually hashing the dentry once the create operation has been successfully completed. Signed-off-by: Trond Myklebust Signed-off-by: Adrian Bunk Commit: e634599b5e6b766634a77b2e05a492c08b32a3a5 Author: Brian King Mon, 18 Dec 2006 20:53:26 +0100 [SCSI] DAC960: PCI id table fixup The PCI ID table in the DAC960 driver conflicts with some devices that use the ipr driver. All ipr adapters that use this chip have an IBM subvendor ID and all DAC960 adapters that use this chip have a Mylex subvendor id. Signed-off-by: Brian King Signed-off-by: Adrian Bunk Commit: d0354e3ba19cdf9acc2ca89bbb59b1e6292a4f44 Author: Stephen Hemminger Mon, 18 Dec 2006 20:51:43 +0100 bridge-netfilter: don't overwrite memory outside of skb The bridge netfilter code needs to check for space at the front of the skb before overwriting; otherwise if skb from device doesn't have headroom, then it will cause random memory corruption. Signed-off-by: Stephen Hemminger Signed-off-by: Adrian Bunk Commit: 17735bd9822900d82278842f6bbe7a0e1c64c3b1 Author: Andrew Morton Mon, 18 Dec 2006 00:39:11 +0100 hvc_console suspend fix Fix http://bugzilla.kernel.org/show_bug.cgi?id=7152 Signed-off-by: Andrew Morton Signed-off-by: Adrian Bunk Commit: 8132c7a57ae81db8f680ed4ef07a1a32fd5ee129 Author: Akinobu Mita Mon, 18 Dec 2006 00:23:42 +0100 [WATCHDOG] sc1200wdt.c pnp unregister fix. If no devices found or invalid parameter is specified, scl200wdt_pnp_driver is left unregistered. It breaks global list of pnp drivers. Signed-off-by: Akinobu Mita Signed-off-by: Adrian Bunk Commit: 18d16ac9bb3d73a8b1027fdf33e8dbc3cc592982 Author: Dave Jones Mon, 18 Dec 2006 00:13:47 +0100 [WATCHDOG] sc1200wdt.c printk fix Fix printk output. sc1200wdt: build 20020303<3>sc1200wdt: io parameter must be specified Signed-off-by: Dave Jones Signed-off-by: Adrian Bunk Commit: 99146a2190e4606aa6803f5995de885f178ebccd Author: Jeff Garzik Mon, 18 Dec 2006 00:07:43 +0100 ISDN: fix drivers, by handling errors thrown by ->readstat() This is a particularly ugly on-failure bug, possibly security, since the lack of error handling here is covering up another class of bug: failure to handle copy_to_user() return values. The I4L API function ->readstat() returns an integer, and by looking at several existing driver implementations, it is clear that a negative return value was meant to indicate an error. Given that several drivers already return a negative value indicating an errno-style error, the current code would blindly accept that [negative] value as a valid amount of bytes read. Obvious damage ensues. Correcting ->readstat() handling to properly notice errors fixes the existing code to work correctly on error, and enables future patches to more easily indicate errors during operation. Signed-off-by: Jeff Garzik Signed-off-by: Adrian Bunk Commit: 83eda202f1f04d5aa2297998fe44cf6641a03b1d Author: Francois Romieu Sun, 17 Dec 2006 22:14:09 +0100 r8169: tweak the PCI data parity error recovery The 8110SB based n2100 board signals a lot of what ought to be PCI data parity errors durint operation of the 8169 as target. Experiment proved that the driver can ignore the error and process the packet as if nothing had happened. Let's add an ad-hoc knob to enable users to fix their system while avoiding the risks of a wholesale change. Signed-off-by: Francois Romieu Signed-off-by: Adrian Bunk Commit: 1d244821fb562c763c0244f6823ced9aa73ec83a Author: Arnaud Patard Sun, 17 Dec 2006 22:12:09 +0100 r8169: fix infinite loop during hotplug Bug reported for PCMCIA. Signed-off-by: Arnaud Patard Signed-off-by: Francois Romieu Signed-off-by: Adrian Bunk Commit: 0263245a8ca0dd71240734d0e1da46fbd4fcab84 Author: Francois Romieu Sun, 17 Dec 2006 22:11:16 +0100 r8169: RX fifo overflow recovery Signed-off-by: Francois Romieu Signed-off-by: Adrian Bunk Commit: 5871db7738d0e2152c5ed35cef10029f2f26e05f Author: Arjan van de Ven Sun, 17 Dec 2006 21:49:57 +0100 x86-64: Mark rdtsc as sync only for netburst, not for core2 On the Core2 cpus, the rdtsc instruction is not serializing (as defined in the architecture reference since rdtsc exists) and due to the deep speculation of these cores, it's possible that you can observe time go backwards between cores due to this speculation. Since the kernel already deals with this with the SYNC_RDTSC flag, the solution is simple, only assume that the instruction is serializing on family 15... The price one pays for this is a slightly slower gettimeofday (by a dozen or two cycles), but that increase is quite small to pay for a really-going-forward tsc counter. Backport by Chris Wright. Signed-off-by: Arjan van de Ven Signed-off-by: Chris Wright Signed-off-by: Adrian Bunk Commit: 862c29977ccf45acc4dcbad952deef30d4013141 Author: David S. Miller Sun, 17 Dec 2006 21:37:17 +0100 [IPV4] ip_fragment: Always compute hash with ipfrag_lock held. Otherwise we could compute an inaccurate hash due to the random seed changing. Noticed by Zach Brown and patch is based upon some feedback from Herbert Xu. Signed-off-by: David S. Miller Signed-off-by: Adrian Bunk Commit: 4adf3c785f91eda9b5a9706200d2e1c9554a0318 Author: Robin Holt Sun, 17 Dec 2006 21:34:56 +0100 IA64: bte_unaligned_copy() transfers one extra cache line. When called to do a transfer that has a start offset within the cache line which is uneven between source and destination and a length which terminates the source of the copy exactly on a cache line, one extra line gets copied into a temporary buffer. This is normally not an issue since the buffer is a kernel buffer and only the requested information gets copied into the user buffer. The problem arises when the source ends at the very last physical page of memory. That last cache line does not exist and results in the SHUB chip raising an MCA. Signed-off-by: Robin Holt Signed-off-by: Tony Luck Signed-off-by: Adrian Bunk Commit: 961428b9aed2ee9cf631d16f1620640cd54a4557 Author: Tejun Heo Sun, 17 Dec 2006 21:32:00 +0100 scsi: clear garbage after CDBs on SG_IO ATAPI devices transfer fixed number of bytes for CDBs (12 or 16). Some ATAPI devices choke when shorter CDB is used and the left bytes contain garbage. Block SG_IO cleared left bytes but SCSI SG_IO didn't. This patch makes SCSI SG_IO clear it and simplify CDB clearing in block SG_IO. Signed-off-by: Tejun Heo Acked-by: Jens Axboe Signed-off-by: Adrian Bunk Commit: dcc6e343ff0463b005ca0488be90b8d0025de3e4 Author: Linus Torvalds Fri, 15 Dec 2006 01:56:30 +0100 AGP: Allocate AGP pages with GFP_DMA32 by default Not all graphic page remappers support physical addresses over the 4GB mark for remapping, so while some do (the AMD64 GART always did, and I just fixed the i965 to do so properly), we're safest off just forcing GFP_DMA32 allocations to make sure graphics pages get allocated in the low 32-bit address space by default. AGP sub-drivers that really care, and can do better, could just choose to implement their own allocator (or we could add another "64-bit safe" default allocator for their use), but quite frankly, you're not likely to care in practice. So for now, this trivial change means that we won't be allocating pages that we can't map correctly by mistake on x86-64. [ On traditional 32-bit x86, this could never happen, because GFP_KERNEL would never allocate any highmem memory anyway ] Signed-off-by: Linus Torvalds Signed-off-by: Adrian Bunk Commit: 75ba82c65d55099a0af5aba1075f8bdcaf566b56 Author: Neil Brown Fri, 15 Dec 2006 01:48:58 +0100 md: Fix md grow/size code to correctly find the maximum available space An md array can be asked to change the amount of each device that it is using, and in particular can be asked to use the maximum available space. This currently only works if the first device is not larger than the rest. As 'size' gets changed and so 'fit' becomes wrong. So check if a 'fit' is required early and don't corrupt it. Signed-off-by: Doug Ledford Signed-off-by: Neil Brown Signed-off-by: Adrian Bunk Commit: e89da8fc50c416abf4abab77d851e051df0edbec Author: Zachary Amsden Fri, 15 Dec 2006 01:38:04 +0100 softirq: remove BUG_ONs which can incorrectly trigger It is possible to have tasklets get scheduled before softirqd has had a chance to spawn on all CPUs. This is totally harmless; after success during action CPU_UP_PREPARE, action CPU_ONLINE will be called, which immediately wakes softirqd on the appropriate CPU to process the already pending tasklets. So there is no danger of having a missed wakeup for any tasklets that were already pending. In particular, i386 is affected by this during startup, and is visible when using a very large initrd; during the time it takes for the initrd to be decompressed, a timer IRQ can come in and schedule RCU callbacks. It is also possible that resending of a hardware IRQ via a softirq triggers the same bug. Because of different timing conditions, this shows up in all emulators and virtual machines tested, including Xen, VMware, Virtual PC, and Qemu. It is also possible to trigger on native hardware with a large enough initrd, although I don't have a reliable case demonstrating that. Signed-off-by: Zachary Amsden Signed-off-by: Adrian Bunk Commit: a26b7719f9bde7e74385bfa6ca3ea89d365efd77 Author: Christophe Saout Fri, 15 Dec 2006 01:21:59 +0100 dm crypt: Fix data corruption with dm-crypt over RAID5 Fix corruption issue with dm-crypt on top of software raid5. Cancelled readahead bio's that report no error, just have BIO_UPTODATE cleared were reported as successful reads to the higher layers (and leaving random content in the buffer cache). Already fixed in 2.6.19. Signed-off-by: Christophe Saout Signed-off-by: Adrian Bunk Commit: bbb978312500b3534a1515ca168597754647d96e Author: Christophe Saout Fri, 15 Dec 2006 01:20:35 +0100 Fix SUNRPC wakeup/execute race condition The sunrpc scheduler contains a race condition that can let an RPC task end up being neither running nor on any wait queue. The race takes place between rpc_make_runnable (called from rpc_wake_up_task) and __rpc_execute under the following condition: First __rpc_execute calls tk_action which puts the task on some wait queue. The task is dequeued by another process before __rpc_execute continues its execution. While executing rpc_make_runnable exactly after setting the task `running' bit and before clearing the `queued' bit __rpc_execute picks up execution, clears `running' and subsequently both functions fall through, both under the false assumption somebody else took the job. Swapping rpc_test_and_set_running with rpc_clear_queued in rpc_make_runnable fixes that hole. This introduces another possible race condition that can be handled by checking for `queued' after setting the `running' bit. Bug noticed on a 4-way x86_64 system under XEN with an NFSv4 server on the same physical machine, apparently one of the few ways to hit this race condition at all. Signed-off-by: Christophe Saout Acked-by: Trond Myklebust Signed-off-by: Adrian Bunk Commit: ea09f457941054d56297f94930020bcfbbd0b772 Author: Dave Jones Fri, 15 Dec 2006 00:40:39 +0100 [ALSA] fix usbmixer double kfree snd_ctl_add() kfree's the kcontrol already if we fail there, so this driver is currently doing a double kfree. Coverity bug #959 Signed-off-by: Dave Jones Signed-off-by: Adrian Bunk Commit: 7819bfbbad648b4f97a07932b9383eb3a2c3f39c Author: Dave Jones Fri, 15 Dec 2006 00:39:47 +0100 [ALSA] sound/isa/sb/sb_mixer.c double kfree snd_ctl_add() already does the free on error. Coverity bug #957 Signed-off-by: Dave Jones Signed-off-by: Adrian Bunk Commit: 6f6c1475b6083f4d3ae4e0325084ff6631389ca6 Author: Dave Jones Fri, 15 Dec 2006 00:39:00 +0100 [ALSA] Fix use after free in opl3_seq and opl3_oss Don't read from free'd memory. Also make use of the return value, and don't register the device if something went wrong creating the port. Coverity #954, #955 Signed-off-by: Dave Jones Signed-off-by: Adrian Bunk Commit: 79bb71477142dd104a27a37bef36c1b1c4bbba43 Author: Dave Jones Fri, 15 Dec 2006 00:37:55 +0100 [ALSA] ad1848 double free snd_ctl_add() already kfree's on error. Coverity #956 Signed-off-by: Dave Jones Signed-off-by: Adrian Bunk Commit: 5bee6f6221c2a1b414120b2d17678ac3421d2e8b Author: Adrian Bunk Fri, 15 Dec 2006 00:28:27 +0100 [ALSA] sound/pci/rme9652/hdspm.c: fix off-by-one errors This patch fixes off-by-one errors found by the Coverity checker. Signed-off-by: Adrian Bunk Commit: e2cde31279a1e6c0d3b6dbb9a8987c3c017ba4c6 Author: Adrian Bunk Fri, 15 Dec 2006 00:25:52 +0100 [ALSA] fix some memory leaks This patch fixes two memory leaks spotted by the Coverity checker. Signed-off-by: Adrian Bunk Commit: 2b12669873c4e2a5b2f9d4ccc84653832b06c2ff Author: Adrian Bunk Fri, 15 Dec 2006 00:24:31 +0100 [ALSA] sound/core/: fix 3 off-by-one errors This patch fixes three off-by-one errors found by the Coverity checker. Signed-off-by: Adrian Bunk Commit: bbd75502c59f723ef672861339aa80a1b5cdb658 Author: Peer Chen Thu, 14 Dec 2006 23:25:25 +0100 IDE: Add the support of nvidia PATA controllers of MCP67 to amd74xx.c Add support for PATA controllers of MCP67 to amd74xx.c. Signed-off-by: Peer Chen Signed-off-by: Adrian Bunk Commit: d84a90e3ce0840bfbb3a8313abe17f8ecb02c226 Author: Peer Chen Thu, 14 Dec 2006 23:23:11 +0100 pci_ids.h: Add NVIDIA PCI ID Signed-off-by: Adrian Bunk Commit: 88c9c162f23bb7bc565311dcc9ea401ad6138dc8 Author: Randy Dunlap Thu, 14 Dec 2006 23:21:30 +0100 amd74xx.c: add some NVIDIA chipset IDs Add some nVidia chipset ID's support. Signed-off-by: Adrian Bunk Commit: 2633840dae17c52bee3ea29d43e49b1d70347184 Author: Andrew Chew Thu, 14 Dec 2006 23:18:27 +0100 sata_nv/amd74xx: Add MCP61 support Added MCP61 support to sata_nv and amd74xx. Signed-off-by: Jeff Garzik Signed-off-by: Adrian Bunk Commit: 74e7ab115fbc5b3e1db3da258aa9b8559e63d4c4 Author: Jeff Garzik Thu, 14 Dec 2006 23:15:42 +0100 [libata] sata_nv: add PCI IDs Based on a patch contributed by Andrew Chew @ NVIDIA. Signed-off-by: Jeff Garzik Signed-off-by: Adrian Bunk Commit: 87b79ceffcfe322c55657051a948eb228e2c9a4d Author: Mark McLoughlin Thu, 14 Dec 2006 23:09:07 +0100 dm snapshot: fix metadata writing when suspending When suspending a device-mapper device, dm_suspend() sleeps until all necessary I/O is completed. This state is triggered by a callback from persistent_commit(). But some I/O can still be issued *after* the callback (to prepare the next metadata area for use if the current one is full). This patch delays the callback until after that I/O is complete. Signed-off-by: Mark McLoughlin Signed-off-by: Alasdair G Kergon Signed-off-by: Adrian Bunk Commit: 970d548af4b9b95b416c31607bbcc844984a1af4 Author: Daniel Kobras Thu, 14 Dec 2006 23:08:32 +0100 dm: Fix deadlock under high i/o load in raid1 setup. On an nForce4-equipped machine with two SATA disk in raid1 setup using dmraid, we experienced frequent deadlock of the system under high i/o load. 'cat /dev/zero > ~/zero' was the most reliable way to reproduce them: Randomly after a few GB, 'cp' would be left in 'D' state along with kjournald and kmirrord. The functions cp and kjournald were blocked in did vary, but kmirrord's wchan always pointed to 'mempool_alloc()'. We've seen this pattern on 2.6.15 and 2.6.17 kernels. http://lkml.org/lkml/2005/4/20/142 indicates that this problem has been around even before. So much for the facts, here's my interpretation: mempool_alloc() first tries to atomically allocate the requested memory, or falls back to hand out preallocated chunks from the mempool. If both fail, it puts the calling process (kmirrord in this case) on a private waitqueue until somebody refills the pool. Where the only 'somebody' is kmirrord itself, so we have a deadlock. I worked around this problem by falling back to a (blocking) kmalloc when before kmirrord would have ended up on the waitqueue. This defeats part of the benefits of using the mempool, but at least keeps the system running. And it could be done with a two-line change. Note that mempool_alloc() clears the GFP_NOIO flag internally, and only uses it to decide whether to wait or return an error if immediate allocation fails, so the attached patch doesn't change behaviour in the non-deadlocking case. Path is against current git (2.6.18-rc4), but should apply to earlier versions as well. I've tested on 2.6.15, where this patch makes the difference between random lockup and a stable system. Signed-off-by: Daniel Kobras Acked-by: Alasdair G Kergon Signed-off-by: Adrian Bunk Commit: b48a29e3c5bf9f2d2765e3dad81e367b09ccd882 Author: Neil Brown Thu, 14 Dec 2006 23:07:54 +0100 dm: mirror sector offset fix The device-mapper core does not perform any remapping of bios before passing them to the targets. If a particular mapping begins part-way into a device, targets obtain the sector relative to the start of the mapping by subtracting ti->begin. The dm-raid1 target didn't do this everywhere: this patch fixes it, taking care to subtract ti->begin exactly once for each bio. Signed-off-by: Neil Brown Signed-off-by: Alasdair G Kergon Signed-off-by: Adrian Bunk Commit: 2d22e81c67b9800c25801cccf75dd49ad5dd0bb3 Author: Jeff Mahoney Thu, 14 Dec 2006 23:07:12 +0100 dm: add module ref counting The reference counting on dm-mod is zero if no mapped devices are open. This is incorrect, and can lead to an oops if the module is unloaded while mapped devices exist. This patch claims a reference to the module whenever a device is created, and drops it again when the device is freed. Devices must be removed before dm-mod is unloaded. Signed-off-by: Jeff Mahoney Signed-off-by: Alasdair G Kergon Signed-off-by: Adrian Bunk Commit: 9d1b6de8ff144beea7408c6d2ca387e2a7bf76ef Author: Alasdair G Kergon Thu, 14 Dec 2006 23:04:35 +0100 dm snapshot: unify chunk_size Persistent snapshots currently store a private copy of the chunk size. Userspace also supplies the chunk size when loading a snapshot. Ensure consistency by only storing the chunk_size in one place instead of two. Currently the two sizes will differ if the chunk size supplied by userspace does not match the chunk size an existing snapshot actually uses. Amongst other problems, this causes an incorrect 'percentage full' to be reported. The patch ensures consistency by only storing the chunk_size in one place, removing it from struct pstore. Some initialisation is delayed until the correct chunk_size is known. If read_header() discovers that the wrong chun size was supplied, the 'area' buffer (which the header already got read into is reinitialised to the correct size. Signed-off-by: Alasdair G Kergon Signed-off-by: Adrian Bunk Commit: 9f822c56ba441b14abbc9e3060bc11e69ce3b721 Author: Michal Miroslaw Thu, 14 Dec 2006 23:02:33 +0100 dm: BUG/OOPS fix Fix BUG I tripped on while testing failover and multipathing. BUG shows up on error path in multipath_ctr() when parse_priority_group() fails after returning at least once without error. The fix is to initialize m->ti early - just after alloc()ing it. BUG: unable to handle kernel NULL pointer dereference at virtual address 0000000 0 printing eip: c027c3d2 *pde = 00000000 Oops: 0000 [#3] Modules linked in: qla2xxx ext3 jbd mbcache sg ide_cd cdrom floppy CPU: 0 EIP: 0060:[] Not tainted VLI EFLAGS: 00010202 (2.6.17.3 #1) EIP is at dm_put_device+0xf/0x3b eax: 00000001 ebx: ee4fcac0 ecx: 00000000 edx: ee4fcac0 esi: ee4fc4e0 edi: ee4fc4e0 ebp: 00000000 esp: c5db3e78 ds: 007b es: 007b ss: 0068 Process multipathd (pid: 15912, threadinfo=c5db2000 task=ef485a90) Stack: ec4eda40 c02816bd ee4fc4c0 00000000 f7e89498 f883e0bc c02816f6 f7e89480 f7e8948c c0281801 ffffffea f7e89480 f883e080 c0281ffe 00000001 00000000 00000004 dfe9cab8 f7a693c0 f883e080 f883e0c0 ca4b99c0 c027c6ee 01400000 Call Trace: free_pgpaths+0x31/0x45 free_priority_group+0x25/0x2e free_multipath+0x35/0x67 multipath_ctr+0x123/0x12d dm_table_add_target+0x11e/0x18b populate_table+0x8a/0xaf table_load+0x52/0xf9 ctl_ioctl+0xca/0xfc table_load+0x0/0xf9 do_ioctl+0x3e/0x43 vfs_ioctl+0x16c/0x178 sys_ioctl+0x48/0x60 syscall_call+0x7/0xb Code: 97 f0 00 00 00 89 c1 83 c9 01 80 e2 01 0f 44 c1 88 43 14 8b 04 24 59 5b 5e 5f 5d c3 53 89 c1 89 d3 ff 4a 08 0f 94 c0 84 c0 74 2a <8b> 01 8b 10 89 d8 e8 f6 fb ff ff 8b 03 8b 53 04 89 50 04 89 02 EIP: [] dm_put_device+0xf/0x3b SS:ESP 0068:c5db3e78 Signed-off-by: Michal Miroslaw Acked-by: Alasdair G Kergon Signed-off-by: Adrian Bunk Commit: b089ea69c5511584db9421348c3b17631d144c63 Author: Jean Delvare Thu, 14 Dec 2006 22:40:00 +0100 [SCSI] gdth: Fix && typos Fix uses of "&&" where "&" was obviously intended instead. Signed-off-by: Jean Delvare Signed-off-by: Adrian Bunk Commit: 2d3ecb5f57adf4aa9702086aa6727f3a0a255962 Author: Joerg Ahrens Thu, 14 Dec 2006 22:29:54 +0100 xirc2ps_cs: Cannot reset card in atomic context I am using a Xircom CEM33 pcmcia NIC which has occasional hardware problems. If the netdev watchdog detects a transmit timeout, do_reset is called which msleeps - this is illegal in atomic context. This patch schedules the timeout handling as a workqueue item. Signed-off-by: Adrian Bunk Commit: 2a9d7dbf7566a36221b4066e57f4c3212bff1ef0 Author: Alexey Kuznetsov Thu, 14 Dec 2006 22:28:51 +0100 [IPV4]: severe locking bug in fib_semantics.c Found in 2.4 by Yixin Pan . > When I read fib_semantics.c of Linux-2.4.32, write_lock(&fib_info_lock) = > is used in fib_release_info() instead of write_lock_bh(&fib_info_lock). = > Is the following case possible: a BH interrupts fib_release_info() while = > holding the write lock, and calls ip_check_fib_default() which calls = > read_lock(&fib_info_lock), and spin forever. Signed-off-by: Alexey Kuznetsov Signed-off-by: Adrian Bunk Commit: 594834bc754f243ddc3d16b9cac354702101c719 Author: Hans Verkuil Thu, 14 Dec 2006 22:26:40 +0100 V4L: Fix broken TUNER_LG_NTSC_TAPE radio support The TUNER_LG_NTSC_TAPE is identical in all respects to the TUNER_PHILIPS_FM1236_MK3. So use the params struct for the Philips tuner. Also add this LG_NTSC_TAPE tuner to the switches where radio specific parameters are set so it behaves like a TUNER_PHILIPS_FM1236_MK3. This change fixes the radio support for this tuner (the wrong bandswitch byte was used). Thanks to Andy Walls for finding this bug. Signed-off-by: Hans Verkuil Signed-off-by: Michael Krufky Signed-off-by: Adrian Bunk Commit: 5cc74eb82f9b9d1cf82be76a257388220af2ae2a Author: Michael Krufky Thu, 14 Dec 2006 22:25:04 +0100 DVB: lgdt330x: fix signal / lock status detection bug In some cases when using VSB, the AGC status register has been known to falsely report "no signal" when in fact there is a carrier lock. The datasheet labels these status flags as QAM only, yet the lgdt330x module is using these flags for both QAM and VSB. This patch allows for the carrier recovery lock status register to be tested, even if the agc signal status register falsely reports no signal. Thanks to jcrews from #linuxtv in irc, for initially reporting this bug. Signed-off-by: Michael Krufky Signed-off-by: Adrian Bunk Commit: 5f486864691e8875f32bd4b368eb654bbee9a697 Author: Herbert Xu Thu, 14 Dec 2006 21:27:09 +0100 [CRYPTO] sha512: Fix sha384 block size The SHA384 block size should be 128 bytes, not 96 bytes. This was spotted by Andrew Donofrio. This breaks HMAC which uses the block size during setup and the final calculation. Signed-off-by: Herbert Xu Signed-off-by: Adrian Bunk