summaryrefslogtreecommitdiffstats
path: root/drivers/macintosh
diff options
context:
space:
mode:
authorJakub Kicinski2019-06-11 06:40:05 +0200
committerDavid S. Miller2019-06-11 21:22:27 +0200
commite2c7114a12363eef7c3104ce223a0084d1800458 (patch)
treed102f6667eb44ca335afd468b0947beef210edab /drivers/macintosh
parentnfp: rename nfp_ccm_mbox_alloc() (diff)
downloadkernel-qcow2-linux-e2c7114a12363eef7c3104ce223a0084d1800458.tar.gz
kernel-qcow2-linux-e2c7114a12363eef7c3104ce223a0084d1800458.tar.xz
kernel-qcow2-linux-e2c7114a12363eef7c3104ce223a0084d1800458.zip
nfp: add async version of mailbox communication
Some control messages must be sent from atomic context. The mailbox takes sleeping locks and uses a waitqueue so add a "posted" version of communication. Trylock the semaphore and if that's successful kick of the device communication. The device communication will be completed from a workqueue, which will also release the semaphore. If locks are taken queue the message and return. Schedule a different workqueue to take the semaphore and run the communication. Note that the there are currently no atomic users which would actually need the return value, so all replies to posted messages are just freed. Signed-off-by: Jakub Kicinski <jakub.kicinski@netronome.com> Reviewed-by: Dirk van der Merwe <dirk.vandermerwe@netronome.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/macintosh')
0 files changed, 0 insertions, 0 deletions