diff options
author | Thomas Gleixner <tglx@linutronix.de> | 2014-03-18 17:19:09 +0000 |
---|---|---|
committer | Marc Kleine-Budde <mkl@pengutronix.de> | 2014-04-01 11:54:58 +0200 |
commit | 640916db2bf7de7c5ac13a1f470fa959459ccf6d (patch) | |
tree | a2cc8b9df2cec515c2bb8f958d715cbd43cbb671 /drivers/net/plip | |
parent | 5bb9cbaa622a2bbde8e307d4e0528dd2c8212a6a (diff) |
can: c_can: Make it SMP safe
The hardware has two message control interfaces, but the code only uses the
first one. So on SMP the following can be observed:
CPU0 CPU1
rx_poll()
write IF1 xmit()
write IF1
write IF1
That results in corrupted message object configurations. The TX/RX is not
globally serialized it's only serialized on a core.
Simple solution: Let RX use IF1 and TX use IF2 and all is good.
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
Diffstat (limited to 'drivers/net/plip')
0 files changed, 0 insertions, 0 deletions