summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2011-10-23ARM: 7133/1: SMP: fix per cpu timer setup before the cpu is marked onlineThomas Gleinxer
The problem is related to the early enabling of interrupts and the per cpu timer setup before the cpu is marked online. This doesn't need to be done in order to call calibrate_delay(). calibrate_delay() monitors jiffies, which are updated from the CPU which is waiting for the new CPU to set the online bit. So simply calibrate_delay() can be called on the new CPU just from the interrupt disabled region and move the local timer setup after stored the cpu data and before enabling interrupts. This solves both the cpu_online vs. cpu_active problem and the affinity setting of the per cpu timers. Signed-off-by: Thomas Gleinxer <tglx@linutronix.de> Signed-off-by: Kukjin Kim <kgene.kim@samsung.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2011-10-23dm kcopyd: fix job_pool leakAlasdair G Kergon
Fix memory leak introduced by commit a6e50b409d3f9e0833e69c3c9cca822e8fa4adbb (dm snapshot: skip reading origin when overwriting complete chunk). When allocating a set of jobs from kc->job_pool, job->master_job must be set (to point to itself) so that the mempool item gets freed when the master_job completes. master_job was introduced by commit c6ea41fbbe08f270a8edef99dc369faf809d1bd6 (dm kcopyd: preallocate sub jobs to avoid deadlock) Reported-by: Michael Leun <ml@newton.leun.net> Cc: Mikulas Patocka <mpatocka@redhat.com> Signed-off-by: Alasdair G Kergon <agk@redhat.com>
2011-10-23staging: et131x: Remove redundant check and return statementMark Einon
In nic_send_packet(), by the time 'frag' is checked to be zero, it never is - the for loop has been entered (as nr_frags is always > 0) and frag has been incremented at least once. Remove the check and associated error return. Signed-off-by: Mark Einon <mark.einon@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-10-23staging: et131x: Mainly whitespace changes to appease checkpatchMark Einon
- Whitespace changes to appease checkpatch warnings - Removed unneeded braces around single line if/else Signed-off-by: Mark Einon <mark.einon@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-10-23staging: et131x: Remove last of the forward declarationsMark Einon
Moved functions in et131x.c file to remove the forward declarations of: et131x_rx_dma_disable et131x_rx_dma_enable et131x_init_send et131x_tx_dma_enable Signed-off-by: Mark Einon <mark.einon@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-10-23staging: et131x: Remove even more forward declarationsMark Einon
Moved functions in et131x.c file to remove the forward declarations of: et1310_in_phy_coma et1310_phy_access_mii_bit et131x_phy_mii_read et131x_mii_write et131x_rx_dma_memory_free Signed-off-by: Mark Einon <mark.einon@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-10-23staging: et131x: Remove yet more forward declarationsMark Einon
Moved functions in et131x.c file to remove the forward declarations of: et1310_setup_device_for_multicast et1310_setup_device_for_unicast et131x_up et131x_down et131x_enable_txrx et131x_disable_txrx Signed-off-by: Mark Einon <mark.einon@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-10-23staging: et131x: Remove more forward declarationsMark Einon
Moved functions in et131x.c file to remove the following forward declarations: et131x_soft_reset et131x_isr_handler et131x_device_alloc Signed-off-by: Mark Einon <mark.einon@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-10-23staging: et131x: Remove forward declaration of et131x_adapter_setupMark Einon
Also associated function movements within et131x.c file Signed-off-by: Mark Einon <mark.einon@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-10-23staging: et131x: Remove some forward declarationsMark Einon
Moved functions in et131x.c file to remove the following forward declarations: et131x_align_allocated_memory et131x_disable_interrupts et131x_enable_interrupts et131x_error_timer_handler Signed-off-by: Mark Einon <mark.einon@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-10-23staging: et131x: Remove unused rx_ring.recv_packet_poolMark Einon
tx_ring.recv_packet_pool is unused, even in the original driver code. Removed. Signed-off-by: Mark Einon <mark.einon@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-10-23staging: et131x: Remove call to find pci pm capabilityMark Einon
pci_find_capability is called, but not used and is now redundant as power management is handled elsewhere. Removed. Signed-off-by: Mark Einon <mark.einon@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-10-23staging: et131x: Remove redundant et131x_reset_recv() callMark Einon
This call doesn't do anything useful - only warns on the receive list being empty, so removed it. Signed-off-by: Mark Einon <mark.einon@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-10-23staging: et131x: Remove unused rx_ring.recv_buffer_poolMark Einon
rx_ring.recv_buffer_pool is unused, even in the original driver code. Remove from stuct, and also remove some comments regarding it. Signed-off-by: Mark Einon <mark.einon@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-10-23Staging: bcm: Fix three initialization errors in InterfaceDld.cKevin McKinney
This patch fixes three initialization errors. One is an incorrect initialization of a static variable. The other two are incorrect initializations in an if statement. These errors were found by checkpatch.pl. Signed-off-by: Kevin McKinney <klmckinney1@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-10-23Staging: bcm: Fix coding style issues in InterfaceDld.cKevin McKinney
This patch fixes multiple coding style issues in file, InterfaceDld.c, found by checkpatch.pl. Signed-off-by: Kevin McKinney <klmckinney1@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-10-23staging:iio:dac: Add AD5360 driverLars-Peter Clausen
This patch adds support for the Analog Devices AD5360, AD5361, AD5362, AD5363, AD5370, AD5371, AD5372, AD5373 multi-channel digital-to-analog converters. Signed-off-by: Lars-Peter Clausen <lars@metafoo.de> Acked-by: Jonathan Cameron <jic23@cam.ac.uk> Acked-by: Michael Hennerich <michael.hennerich@analog.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-10-23staging:iio:trigger:bfin-timer: Fix compile errorLars-Peter Clausen
Signed-off-by: Lars-Peter Clausen <lars@metafoo.de> Acked-by: Jonathan Cameron <jic23@cam.ac.uk> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-10-23Staging: vt6655: add some range checks before memcpy()Dan Carpenter
There were no range checks in the original code so the user could write past the end of the array. Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-10-23Staging: vt6655: whitespace fixes to iotcl.cDan Carpenter
The indents didn't line up at all in the original code. I also fixed a bunch of other white issues as I went along. I changed the comment style and removed some commented out code. Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-10-23Staging: vt6656: add some range checks before memcpy()Dan Carpenter
We need to verify that we're not writing past the end of the array. Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-10-23Staging: vt6656: whitespace cleanups in ioctl.cDan Carpenter
The indents on this file didn't line up so it was hard to work with. I changed other white space issues as I came across them. I also deleted or changed some couple comments and the comment style. Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-10-23staging: et131x: Remove unused definesMark Einon
Some defines are no longer referenced in the code, so removed them. Signed-off-by: Mark Einon <mark.einon@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-10-23staging: et131x: Convert rest of pci memory management to dma apiMark Einon
Replaced pci map/unmap and set_mask calls with their dma equivalents. Also updated comments to reflect this. Signed-off-by: Mark Einon <mark.einon@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-10-23staging: et131x: on transmit, stop the queue if the next packet will failMark Einon
* Currently the tx queue is only stopped when the current packet fails. Check if the next packet will fail, and stop the queue if so. * Removed associated item from TODO list in the README. * Also minor fixup as adapter was being declared as null and immediately set to a value. Signed-off-by: Mark Einon <mark.einon@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-10-23staging: et131x: Tidy up PCI device table definitionMark Einon
Used the convenience macros DEFINE_PCI_DEVICE_TABLE and PCI_VDEVICE to tidy up the device table definition. Also remove the corresponding TODO item from the README. Signed-off-by: Mark Einon <mark.einon@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-10-23staging: et131x: Match dma_alloc_ calls with dma_free_ callsMark Einon
Previous update was to replace pci_alloc with dma_alloc calls. I missed replacing the corresponding pci_free_ calls with the dma versions. Now done. Thanks to Denis Kirjanov <kirjanov@gmail.com> for pointing this out. Signed-off-by: Mark Einon <mark.einon@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-10-23staging: et131x: use dma_alloc... instead of pci_alloc...Mark Einon
Use dma_allocs instead of pci_allocs, so we can use GFP_KERNEL allocations. Also removed this item from the TODO list Signed-off-by: Mark Einon <mark.einon@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-10-23staging: et131x: Fix issues when USE_FBR0 is not definedMark Einon
* Following on from making rx_ring.fbr use a common structure - reversed the fbr[] array indicies so that index 1 = FBR0 and index 0 = FBR1, which allows USE_FBR0 define to work. * Also fixed up minor issues where indexes into the array were out of bounds in some places. * Removed rx_ring.fbr common stuct TODO item from README Signed-off-by: Mark Einon <mark.einon@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-10-23staging: et131x: Make rx_ring.fbr{0,1} share a common structureMark Einon
Sharing a common structure by moving common structure items into fbr_lookup. TODO - Currently will not work if USE_FBR0 = 0 as FBR1 uses fbr[1] which is removed in this case Signed-off-by: Mark Einon <mark.einon@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-10-23staging: et131x: Moving two extern inline functions to .c fileMark Einon
Two helper functions for adding 10bit/12bit umbers with wrapping are defined in the header. Moved them to the driver .c file. Signed-off-by: Mark Einon <mark.einon@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-10-23staging: et131x: Update TODO list - remove 'put driver into single file'Mark Einon
Driver now resides in a single file with a separate header with registers, updated the README TODO list. Signed-off-by: Mark Einon <mark.einon@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-10-23staging: et131x: move et1310_tx.h contents into et131x.cMark Einon
Move et1310_tx.h contents into et131x.c and delete et1310_tx.h Signed-off-by: Mark Einon <mark.einon@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-10-23staging: et131x: move et1310_rx.h contents into et131x.cMark Einon
Move et1310_rx.h contents into et131x.c and delete et1310_rx.h Signed-off-by: Mark Einon <mark.einon@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-10-23staging: et131x: move et131x_defs.h contents into et131x.cMark Einon
Move et131x_defs.h contents into et131x.c and delete et131x_defs.h Signed-off-by: Mark Einon <mark.einon@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-10-23staging: et131x: move et131x_adapter.h contents into et131x.cMark Einon
Move et131x_adapter.h contents into et131x.c and delete et131x_adapter.h Signed-off-by: Mark Einon <mark.einon@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-10-23staging: et131x: move et1310_phy.h contents into et131x.hMark Einon
Move et1310_phy.h register defines into et131x.h and delete et1310_phy.h Signed-off-by: Mark Einon <mark.einon@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-10-23staging: et131x: move et1310_address_map.h contents into et131x.hMark Einon
Move et1310_address_map.h register defines into et131x.h and delete et1310_address_map.h Signed-off-by: Mark Einon <mark.einon@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-10-23staging: et131x: Move non-register defines from et131x.h to et131x.cMark Einon
Header file should only have register defines, moved non-register defines to et131x.c Signed-off-by: Mark Einon <mark.einon@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-10-23staging: et131x: Move function declarations from et131x.h to et131x.cMark Einon
The function declarations in et131x.h are no longer used now all functions are in one file. Removed declarations from et131x.h and added any required forward declarations to et131x.c. Signed-off-by: Mark Einon <mark.einon@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-10-23staging: et131x: Put all .c files into one big fileMark Einon
Created one big .c file for the driver, moving the contents of all driver .c files into it. Signed-off-by: Mark Einon <mark.einon@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-10-23Merge branch 'samsung-fixes-4' of git://github.com/kgene/linux-samsungLinus Torvalds
* 'samsung-fixes-4' of git://github.com/kgene/linux-samsung: ARM: S3C24XX: Fix s3c24xx build errors if !CONFIG_PM ARM: S5P: fix offset calculation on gpio-interrupt
2011-10-23Merge branch 'hwmon-for-linus' of ↵Linus Torvalds
git://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging * 'hwmon-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging: hwmon: (w83627ehf) Fix negative 8-bit temperature values
2011-10-22ARM: 7129/1: Add __arm_ioremap_exec for mapping external memory as MT_MEMORYTony Lindgren
This allows mapping external memory such as SRAM for use. This is needed for some small chunks of code, such as reprogramming SDRAM memory source clocks that can't be executed in SDRAM. Other use cases include some PM related code. Acked-by: Nicolas Pitre <nicolas.pitre@linaro.org> Acked-by: Andres Salomon <dilinger@queued.net> Signed-off-by: Tony Lindgren <tony@atomide.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2011-10-22ARM: 7136/1: pl330: Fix a race conditionJavi Merino
If two requests have been submitted and one of them is running, if you call pl330_chan_ctrl(ch_id, PL330_OP_START), there's a window of time between the spin_lock_irqsave() and the _state() check in which the running transaction may finish. In that case, we don't receive the interrupt (because they are disabled), but _start() sees that the DMA is stopped, so it starts it. The problem is that it sends the transaction that has just finished again, because pl330_update() hasn't mark it as done yet. This patch fixes this race condition by not calling _start() if the DMA is already executing transactions. When interrupts are reenabled, pl330_update() will call _start(). Reference: <1317892206-3600-1-git-send-email-javi.merino@arm.com> Signed-off-by: Javi Merino <javi.merino@arm.com> Acked-by: Jassi Brar <jassi.brar@samsung.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2011-10-22Merge branch 'master' of git://gitorious.org/smack-next/kernel into nextJames Morris
2011-10-22TOMOYO: Fix incomplete read after seek.Tetsuo Handa
Commit f23571e8 "TOMOYO: Copy directly to userspace buffer." introduced tomoyo_flush() that flushes data to be read as soon as possible. tomoyo_select_domain() (which is called by write()) enqueues data which meant to be read by next read(), but previous read()'s read buffer's size was not cleared. As a result, since 2.6.36, sequence like char *cp = "select global-pid=1\n"; read(fd, buf1, sizeof(buf1)); write(fd, cp, strlen(cp)); read(fd, buf2, sizeof(buf2)); causes enqueued data to be flushed to buf1 rather than buf2. Fix this bug by clearing read buffer's size upon write() request. Signed-off-by: Tetsuo Handa <penguin-kernel@I-love.SAKURA.ne.jp> Signed-off-by: James Morris <jmorris@namei.org>
2011-10-22bonding: Add a forgetten sysfs_attr_init on class_attr_bonding_mastersEric W. Biederman
When I made class_attr_bonding_matters per network namespace and dynamically allocated I overlooked the need for calling sysfs_attr_init. Oops. This fixes the following lockdep splat: [ 5.749651] bonding: Ethernet Channel Bonding Driver: v3.7.1 (April 27, 2011) [ 5.749655] bonding: MII link monitoring set to 100 ms [ 5.749676] BUG: key f49a831c not in .data! [ 5.749677] ------------[ cut here ]------------ [ 5.749752] WARNING: at kernel/lockdep.c:2897 lockdep_init_map+0x1c3/0x460() [ 5.749809] Hardware name: ProLiant BL460c G1 [ 5.749862] Modules linked in: bonding(+) [ 5.749978] Pid: 3177, comm: modprobe Not tainted 3.1.0-rc9-02177-gf2d1a4e-dirty #1157 [ 5.750066] Call Trace: [ 5.750120] [<c1352c2f>] ? printk+0x18/0x21 [ 5.750176] [<c103112d>] warn_slowpath_common+0x6d/0xa0 [ 5.750231] [<c1060133>] ? lockdep_init_map+0x1c3/0x460 [ 5.750287] [<c1060133>] ? lockdep_init_map+0x1c3/0x460 [ 5.750342] [<c103117d>] warn_slowpath_null+0x1d/0x20 [ 5.750398] [<c1060133>] lockdep_init_map+0x1c3/0x460 [ 5.750453] [<c1355ddd>] ? _raw_spin_unlock+0x1d/0x20 [ 5.750510] [<c11255c8>] ? sysfs_new_dirent+0x68/0x110 [ 5.750565] [<c1124d4b>] sysfs_add_file_mode+0x8b/0xe0 [ 5.750621] [<c1124db3>] sysfs_add_file+0x13/0x20 [ 5.750675] [<c1124e7c>] sysfs_create_file+0x1c/0x20 [ 5.750737] [<c1208f09>] class_create_file+0x19/0x20 [ 5.750794] [<c12c186f>] netdev_class_create_file+0xf/0x20 [ 5.750853] [<f85deaf4>] bond_create_sysfs+0x44/0x90 [bonding] [ 5.750911] [<f8410947>] ? bond_create_proc_dir+0x1e/0x3e [bonding] [ 5.750970] [<f841007e>] bond_net_init+0x7e/0x87 [bonding] [ 5.751026] [<f8410000>] ? 0xf840ffff [ 5.751080] [<c12abc7a>] ops_init.clone.4+0xba/0x100 [ 5.751135] [<c12abdb2>] ? register_pernet_subsys+0x12/0x30 [ 5.751191] [<c12abd03>] register_pernet_operations.clone.3+0x43/0x80 [ 5.751249] [<c12abdb9>] register_pernet_subsys+0x19/0x30 [ 5.751306] [<f84108b9>] bonding_init+0x832/0x8a2 [bonding] [ 5.751363] [<c10011f0>] do_one_initcall+0x30/0x160 [ 5.751420] [<f8410087>] ? bond_net_init+0x87/0x87 [bonding] [ 5.751477] [<c106d5cf>] sys_init_module+0xef/0x1890 [ 5.751533] [<c1356490>] sysenter_do_call+0x12/0x36 [ 5.751588] ---[ end trace 89f492d83a7f5006 ]--- Signed-off-by: Eric W. Biederman <ebiederm@xmission.com> Reported-by: Eric Dumazet <eric.dumazet@gmail.com> Tested-by: Eric Dumazet <eric.dumazet@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2011-10-22tg3: fix tigon3_dma_hwbug_workaround()Eric Dumazet
Ari got kernel panics using tg3 NIC, and bisected to 2669069aacc9 "tg3: enable transmit time stamping." This is because tigon3_dma_hwbug_workaround() might alloc a new skb and free the original. We panic when skb_tx_timestamp() is called on freed skb. Reported-by: Ari Savolainen <ari.m.savolainen@gmail.com> Signed-off-by: Eric Dumazet <eric.dumazet@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2011-10-22inet: add rfc 3168 extract in front of INET_ECN_encapsulate()Eric Dumazet
INET_ECN_encapsulate() is better understood if we can read the official statement. Signed-off-by: Eric Dumazet <eric.dumazet@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>