Commit Graph

392283 Commits

Author SHA1 Message Date
Mark Brown
368ce0bca4 Merge remote-tracking branch 'spi/topic/sh-msiof' into spi-next 2013-09-01 13:49:11 +01:00
Mark Brown
874915ed4b Merge remote-tracking branch 'spi/topic/sh-hspi' into spi-next 2013-09-01 13:49:10 +01:00
Mark Brown
2dc745b6ef Merge remote-tracking branch 'spi/topic/s3c64xx' into spi-next 2013-09-01 13:49:09 +01:00
Mark Brown
121a39661b Merge remote-tracking branch 'spi/topic/rspi' into spi-next 2013-09-01 13:49:08 +01:00
Mark Brown
278ac33bbd Merge remote-tracking branch 'spi/topic/quad' into spi-next 2013-09-01 13:49:07 +01:00
Mark Brown
85cac43132 Merge remote-tracking branch 'spi/topic/qspi' into spi-next 2013-09-01 13:49:06 +01:00
Mark Brown
793b3cb6ac Merge remote-tracking branch 'spi/topic/pxa' into spi-next 2013-09-01 13:49:05 +01:00
Mark Brown
720ed2d130 Merge remote-tracking branch 'spi/topic/pl022' into spi-next 2013-09-01 13:49:04 +01:00
Mark Brown
68aa4cb337 Merge remote-tracking branch 'spi/topic/pdata' into spi-next 2013-09-01 13:49:03 +01:00
Mark Brown
11c28cfc1e Merge remote-tracking branch 'spi/topic/orion' into spi-next 2013-09-01 13:49:02 +01:00
Mark Brown
4374f332d9 Merge remote-tracking branch 'spi/topic/omap-100k' into spi-next 2013-09-01 13:49:01 +01:00
Mark Brown
45bb5065e1 Merge remote-tracking branch 'spi/topic/octeon' into spi-next 2013-09-01 13:49:00 +01:00
Mark Brown
455765f02e Merge remote-tracking branch 'spi/topic/nuc900' into spi-next 2013-09-01 13:48:59 +01:00
Mark Brown
7c2fde9b1a Merge remote-tracking branch 'spi/topic/mxs' into spi-next 2013-09-01 13:48:59 +01:00
Mark Brown
9020b75467 Merge remote-tracking branch 'spi/topic/msglen' into spi-next 2013-09-01 13:48:58 +01:00
Mark Brown
84c86edab3 Merge remote-tracking branch 'spi/topic/mpc512x' into spi-next 2013-09-01 13:48:57 +01:00
Mark Brown
4faad26c27 Merge remote-tracking branch 'spi/topic/ioremap' into spi-next 2013-09-01 13:48:56 +01:00
Mark Brown
8e37befc5c Merge remote-tracking branch 'spi/topic/imx' into spi-next 2013-09-01 13:48:55 +01:00
Mark Brown
497cb4473a Merge remote-tracking branch 'spi/topic/ep93xx' into spi-next 2013-09-01 13:48:54 +01:00
Mark Brown
afa8f0cd6c Merge remote-tracking branch 'spi/topic/efm32' into spi-next 2013-09-01 13:48:53 +01:00
Mark Brown
2f2613b028 Merge remote-tracking branch 'spi/topic/dspi' into spi-next 2013-09-01 13:48:52 +01:00
Mark Brown
96b1a28d65 Merge remote-tracking branch 'spi/topic/doc' into spi-next 2013-09-01 13:48:51 +01:00
Mark Brown
b49247907d Merge remote-tracking branch 'spi/topic/davinci' into spi-next 2013-09-01 13:48:51 +01:00
Mark Brown
7e718b4bd2 Merge remote-tracking branch 'spi/topic/core' into spi-next 2013-09-01 13:48:50 +01:00
Mark Brown
1f54f94284 Merge remote-tracking branch 'spi/topic/clps711x' into spi-next 2013-09-01 13:48:49 +01:00
Mark Brown
db04e17055 Merge remote-tracking branch 'spi/topic/checks' into spi-next 2013-09-01 13:48:48 +01:00
Mark Brown
788a739676 Merge remote-tracking branch 'spi/topic/build' into spi-next 2013-09-01 13:48:47 +01:00
Mark Brown
8e28fb63a7 Merge remote-tracking branch 'spi/topic/bpw' into spi-next 2013-09-01 13:48:46 +01:00
Mark Brown
f1632c3278 Merge remote-tracking branch 'spi/topic/blackfin-v3' into spi-next 2013-09-01 13:48:45 +01:00
Mark Brown
b29bc3df37 Merge remote-tracking branch 'spi/topic/bitbang' into spi-next 2013-09-01 13:48:44 +01:00
Mark Brown
c3dbe2b76a Merge remote-tracking branch 'spi/topic/bcm2835' into spi-next 2013-09-01 13:48:44 +01:00
Mark Brown
5264af0ca6 Merge remote-tracking branch 'spi/topic/atmel' into spi-next 2013-09-01 13:48:43 +01:00
Wei Yongjun
b6460366fb spi/qspi: fix missing unlock on error in ti_qspi_start_transfer_one()
Add the missing unlock before return from function ti_qspi_start_transfer_one()
in the error handling case.

Signed-off-by: Wei Yongjun <yongjun_wei@trendmicro.com.cn>
Signed-off-by: Mark Brown <broonie@linaro.org>
2013-09-01 13:47:55 +01:00
wangyuhang
a110f93d8b spi: quad: fix the name of DT property
spi: quad: fix the name of DT property in patch

The previous property name spi-tx-nbits and spi-rx-nbits looks not
human-readable. To make it consistent with other devices, using property
name spi-tx-bus-width and spi-rx-bus-width instead of the previous one
specify the number of data wires that spi controller will work in.
Add the specification in spi-bus.txt.

Signed-off-by: wangyuhang <wangyuhang2014@gmail.com>
Signed-off-by: Mark Brown <broonie@linaro.org>
2013-09-01 13:45:14 +01:00
Axel Lin
632b3d62bc regulator: da9063: Statize da9063_ldo_lim_event
da9063_ldo_lim_event() is only referenced in this driver, make it static.

Signed-off-by: Axel Lin <axel.lin@ingics.com>
Signed-off-by: Mark Brown <broonie@linaro.org>
2013-09-01 13:44:18 +01:00
Nicholas Bellinger
c130480b12 target: Fix se_cmd->state_list leak regression during WRITE failure
This patch addresses a v3.11 specific regression where se_cmd->state_list
was being leaked during a fabric WRITE failure, when the fabric releases
an associated se_cmd descriptor before I/O submission occurs, and normal
fast path callbacks have a chance to call target_remove_from_state_list().

It was manifesting with Poison overwritten messages with iscsi-target
once an ImmediateData payload CRC32C failure occured.

This bug was originally introduced during v3.11-rc1 with the following
commit:

commit 0b66818ac6
Author: Nicholas Bellinger <nab@linux-iscsi.org>
Date:   Thu Jun 6 01:36:41 2013 -0700

    target: Drop unnecessary CMD_T_DEV_ACTIVE check from transport_lun_remove_cmd

Signed-off-by: Nicholas Bellinger <nab@linux-iscsi.org>
2013-08-31 15:19:12 -07:00
Paul E. McKenney
25f27ce4a6 Merge branches 'doc.2013.08.19a', 'fixes.2013.08.20a', 'sysidle.2013.08.31a' and 'torture.2013.08.20a' into HEAD
doc.2013.08.19a: Documentation updates
fixes.2013.08.20a: Miscellaneous fixes
sysidle.2013.08.31a: Detect system-wide idle state.
torture.2013.08.20a: rcutorture updates.
2013-08-31 14:44:45 -07:00
Paul E. McKenney
eb75767be0 nohz_full: Force RCU's grace-period kthreads onto timekeeping CPU
Because RCU's quiescent-state-forcing mechanism is used to drive the
full-system-idle state machine, and because this mechanism is executed
by RCU's grace-period kthreads, this commit forces these kthreads to
run on the timekeeping CPU (tick_do_timer_cpu).  To do otherwise would
mean that the RCU grace-period kthreads would force the system into
non-idle state every time they drove the state machine, which would
be just a bit on the futile side.

Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
Cc: Frederic Weisbecker <fweisbec@gmail.com>
Cc: Steven Rostedt <rostedt@goodmis.org>
Cc: Lai Jiangshan <laijs@cn.fujitsu.com>
Reviewed-by: Josh Triplett <josh@joshtriplett.org>
2013-08-31 14:44:02 -07:00
Paul E. McKenney
0edd1b1784 nohz_full: Add full-system-idle state machine
This commit adds the state machine that takes the per-CPU idle data
as input and produces a full-system-idle indication as output.  This
state machine is driven out of RCU's quiescent-state-forcing
mechanism, which invokes rcu_sysidle_check_cpu() to collect per-CPU
idle state and then rcu_sysidle_report() to drive the state machine.

The full-system-idle state is sampled using rcu_sys_is_idle(), which
also drives the state machine if RCU is idle (and does so by forcing
RCU to become non-idle).  This function returns true if all but the
timekeeping CPU (tick_do_timer_cpu) are idle and have been idle long
enough to avoid memory contention on the full_sysidle_state state
variable.  The rcu_sysidle_force_exit() may be called externally
to reset the state machine back into non-idle state.

For large systems the state machine is driven out of RCU's
force-quiescent-state logic, which provides good scalability at the price
of millisecond-scale latencies on the transition to full-system-idle
state.  This is not so good for battery-powered systems, which are usually
small enough that they don't need to care about scalability, but which
do care deeply about energy efficiency.  Small systems therefore drive
the state machine directly out of the idle-entry code.  The number of
CPUs in a "small" system is defined by a new NO_HZ_FULL_SYSIDLE_SMALL
Kconfig parameter, which defaults to 8.  Note that this is a build-time
definition.

Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
Cc: Frederic Weisbecker <fweisbec@gmail.com>
Cc: Steven Rostedt <rostedt@goodmis.org>
Cc: Lai Jiangshan <laijs@cn.fujitsu.com>
[ paulmck: Use true and false for boolean constants per Lai Jiangshan. ]
Reviewed-by: Josh Triplett <josh@joshtriplett.org>
[ paulmck: Simplify logic and provide better comments for memory barriers,
  based on review comments and questions by Lai Jiangshan. ]
2013-08-31 14:43:50 -07:00
Mark Brown
365c9ee073 Merge remote-tracking branch 'regmap/topic/sparse' into regmap-next 2013-08-31 19:25:16 +01:00
Mark Brown
4460d028d4 Merge remote-tracking branch 'regmap/topic/rbtree' into regmap-next 2013-08-31 19:25:15 +01:00
Mark Brown
db00cb9943 Merge remote-tracking branch 'regmap/topic/range' into regmap-next 2013-08-31 19:25:14 +01:00
Mark Brown
3dedb61ec7 Merge remote-tracking branch 'regmap/topic/patch' into regmap-next 2013-08-31 19:25:13 +01:00
Mark Brown
1801ceaf07 Merge remote-tracking branch 'regmap/topic/irq' into regmap-next 2013-08-31 19:25:12 +01:00
Mark Brown
4ff4eb9e8c Merge remote-tracking branch 'regmap/topic/cache' into regmap-next 2013-08-31 19:25:11 +01:00
Axel Lin
e93b07244d spi: core: Fix spi_register_master error handling
In the case spi_master_initialize_queue() fails, current code calls
device_unregister() before return error from spi_register_master().
However, all the drivers call spi_master_put() in the error path if
spi_register_master() fails. Thus we should call device_del() rather than
device_unregister() before return error from spi_register_master().

This also makes all the spi_register_master() error handling consistent,
because all other error paths of spi_register_master() expect drivers to
call spi_master_put() if spi_register_master() fails.

Signed-off-by: Axel Lin <axel.lin@ingics.com>
Signed-off-by: Mark Brown <broonie@linaro.org>
2013-08-31 17:51:06 +01:00
Axel Lin
d8851a0d4f spi: efm32: Fix build error
Obviously the of_device_id table name is wrong.

Fix below build error:

  CC [M]  drivers/spi/spi-efm32.o
drivers/spi/spi-efm32.c:499:1: error: '__mod_of_device_table' aliased to undefined symbol 'efm32_uart_dt_ids'
make[2]: *** [drivers/spi/spi-efm32.o] Error 1
make[1]: *** [drivers/spi] Error 2
make: *** [drivers] Error 2

Signed-off-by: Axel Lin <axel.lin@ingics.com>
Signed-off-by: Mark Brown <broonie@linaro.org>
2013-08-31 16:29:14 +01:00
Axel Lin
f073d37de0 spi: altera: Use DIV_ROUND_UP to calculate hw->bytes_per_word
The Altera SPI hardware can be configured to support data width from 1 to 32
since Quartus II 8.1. To avoid truncation by integer division, use DIV_ROUND_UP
to calculate hw->bytes_per_word.

Signed-off-by: Axel Lin <axel.lin@ingics.com>
Acked-by: Thomas Chou <thomas@wytron.com.tw>
Signed-off-by: Mark Brown <broonie@linaro.org>
2013-08-31 14:10:41 +01:00
Axel Lin
9d3405dbbb spi: rspi: Add spi_master_get() call to prevent use after free
In rspi_remove(), current code dereferences rspi after spi_unregister_master(),
thus add an extra spi_master_get() call is necessary to prevent use after free.

Current code already has an extra spi_master_put() call in rspi_remove(), so
this patch just adds a spi_master_get() call rather than a spi_master_get() with
spi_master_put() calls.

Signed-off-by: Axel Lin <axel.lin@ingics.com>
Signed-off-by: Mark Brown <broonie@linaro.org>
2013-08-31 12:58:53 +01:00
Ingo Molnar
ea79ca0de0 perf/core improvements and fixes:
. Tidy up sample parsing validation, from Adrian Hunter.
 
 . Make events stream always parsable by adding a new sample_type bit:
   PERF_SAMPLE_IDENTIFIER, that when requested will be always aat a fixed
   position in all PERF_RECORD_ records, from Adrian Hunter.
 
 . Add a sample parsing test, from Adrian Hunter.
 
 . Add option to 'perf trace' to analyze events in a file versus live,
   so that one can do:
 
  [root@zoo ~]# perf record -a -e raw_syscalls:* sleep 1
  [ perf record: Woken up 0 times to write data ]
  [ perf record: Captured and wrote 25.150 MB perf.data (~1098836 samples) ]
  [root@zoo ~]# perf trace -i perf.data -e futex --duration 1
     17.799 ( 1.020 ms): 7127 futex(uaddr: 0x7fff3f6c6674, op: 393, val: 1, utime: 0x7fff3f6c6470, ua
    113.344 (95.429 ms): 7127 futex(uaddr: 0x7fff3f6c6674, op: 393, val: 1, utime: 0x7fff3f6c6470, uaddr2: 0x7fff3f6c6648, val3: 4294967
    133.778 ( 1.042 ms): 18004 futex(uaddr: 0x7fff3f6c6674, op: 393, val: 1, utime: 0x7fff3f6c6470, uaddr2: 0x7fff3f6c6648, val3: 429496
  [root@zoo ~]#
 
  From David Ahern.
 
 . Honor target pid / tid options in 'perf trace' when analyzing a file,
   from David Ahern.
 
 . Handle missing HUGEPAGE defines in the mmap beautifier in 'perf trace',
   from David Ahern.
 
 Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.14 (GNU/Linux)
 
 iQIcBAABAgAGBQJSIOp5AAoJENZQFvNTUqpAV5IQAJmBo4Sj87jRWD4e6FoPMemJ
 d7F2rgbIHtgnO3xackKxScKiU5xjQTyV/CMLx0ZJOdBxg9T2icMeJFuSbD+XETIE
 BI1u5PmMAntAOC2v/FEZx5kKLQUZvuxjK4c7t6FXlFEcKER5H8DDBlqYAdLoFETl
 I9/K4x9+SGyUldwBSXxXeA1SWOYodsLYrhLjMlvL0NLd5qQgocRExS8Lk6oVZu7F
 UtrtCRpSfD8DONcVfQpKitT3bKIlHBCk4EQAklR7BZbxo9wm3DhtL9l0EVwhbBvz
 knfF/bZn8B/XaN7w0lQxkEwlTXXIKp0gkAkASAJ3kst7OHJFP41xP/Srz3B0uY5E
 MgU/E7UYazuusL8MYt9TLmN6xtGLWSe2CE0u/5+FMXzTIXO9v1ik6Ip9//0pj/NF
 rPojZsCzIqVnwUUDlQTW1WY8S1/l6kS3THLCX6Cz16RKyj5JC0uXKyPiN3vuI/RS
 bDLYEi2vlSFvi9lg9A9FSJW8+vROdiuovO4LPtGMzjICZhC0PnvRudv8QqPlAV4X
 eaR7393Qt9k1BMcdUoWEjU/pU9pFFq7SsLns0ktPd7naDeUdo1wb5kuYqbjKrwTg
 Ciii9/X4hZ1wx4OvYK5m41ayiIdEG+77T7gR+UAfvDK8ni31Aguf52sinYvZOXv+
 NVkpsSX2r735Gq5JTKt5
 =iYNr
 -----END PGP SIGNATURE-----

Merge tag 'perf-core-for-mingo' of git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux into perf/core

Pull perf/core improvements and fixes from Arnaldo Carvalho de Melo:

 * Tidy up sample parsing validation, from Adrian Hunter.

 * Make events stream always parsable by adding a new sample_type bit:
   PERF_SAMPLE_IDENTIFIER, that when requested will be always aat a fixed
   position in all PERF_RECORD_ records, from Adrian Hunter.

 * Add a sample parsing test, from Adrian Hunter.

 * Add option to 'perf trace' to analyze events in a file versus live,
   so that one can do:

   [root@zoo ~]# perf record -a -e raw_syscalls:* sleep 1
   [ perf record: Woken up 0 times to write data ]
   [ perf record: Captured and wrote 25.150 MB perf.data (~1098836 samples) ]
   [root@zoo ~]# perf trace -i perf.data -e futex --duration 1
      17.799 ( 1.020 ms): 7127 futex(uaddr: 0x7fff3f6c6674, op: 393, val: 1, utime: 0x7fff3f6c6470, ua
     113.344 (95.429 ms): 7127 futex(uaddr: 0x7fff3f6c6674, op: 393, val: 1, utime: 0x7fff3f6c6470, uaddr2: 0x7fff3f6c6648, val3: 4294967
     133.778 ( 1.042 ms): 18004 futex(uaddr: 0x7fff3f6c6674, op: 393, val: 1, utime: 0x7fff3f6c6470, uaddr2: 0x7fff3f6c6648, val3: 429496
   [root@zoo ~]#

   From David Ahern.

 * Honor target pid / tid options in 'perf trace' when analyzing a file,
   from David Ahern.

 * Handle missing HUGEPAGE defines in the mmap beautifier in 'perf trace',
   from David Ahern.

Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Signed-off-by: Ingo Molnar <mingo@kernel.org>
2013-08-31 10:05:48 +02:00