- feed GUIDs of FireWire nodes to the random pool

- more complete quirk handling of a TI S400B phy
   - avoid holding a core lock while calling into highlevel drivers
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v2.0.19 (GNU/Linux)
 
 iQIcBAABAgAGBQJQbHWfAAoJEHnzb7JUXXnQxI0QALiRUV1jJtT3eZXTFJoyCI/x
 TEf9FHzeEoVt/VhEmky05mi55IG5H4uakZRq3d3qruXfALOvRbXG9Tgbpu/nybR9
 oAXlnvwDs7DxK7WoZtS9k+iK9f0XMJKmyG++qtrKR9CXrV0bQsfbzIpIoapbL8Xl
 pMchiuPKomXP51yvZvEb4Q0EDp2VrQtogba/CYHby1J9KdHFqOf1V2KBVb/NTA9t
 9VK7HGmteT8rbKl/A9Ybnxh1wsDklZn5Ewuq4msYmw9/4vwOXZEloT+5bV8re2sN
 VsaZE87vLfxuOJHDtK/bB71RJUvtAYequGyNcEaObvdQK30Htgpc+PZBWAaOw2M3
 3ZRAchJjtnztLU8cKs0HH/znnRPpyZSlqjbcRgErDPdr2dhLPTk2JUWbVoqy0n7U
 wujDr7jJxb1lO6oFYf8fcaf4rzWETwdQymP6ydLoFpAfdGB54BpjkEIaNimJJes4
 uWD8cyGuELKUBuDl6qYDwUCz233Ap1snD0oGDptmIuSEhQcVd1A8pTubCQa4YsIT
 X5z33totIVfyPRoW+BOqFHpmJCAXoA9roA+PcJh4ww/+GLiBiTmz8x9ohqO/6DjU
 KPQt9QRZfFlKKVFdz4EHWHQ7jU0OUdATwDk4q8J2adfnxQv6yrYC1pzyh6HcThdA
 HiAoQT++TBQoEhJltymx
 =Im0p
 -----END PGP SIGNATURE-----

Merge tag 'firewire-updates' of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394

Pull firewire updates from Stefan Richter:
  - feed GUIDs of FireWire nodes to the random pool
  - more complete quirk handling of a TI S400B phy
  - avoid holding a core lock while calling into highlevel drivers

* tag 'firewire-updates' of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394:
  firewire: addendum to address handler RCU conversion
  firewire: remove global lock around address handlers, convert to RCU
  firewire: ohci: get IR bit from TSB41BA3D phy
  firewire: core: feed /dev/random with devices' GUIDs
This commit is contained in:
Linus Torvalds 2012-10-03 13:55:12 -07:00
commit df5a2a1fbc
4 changed files with 59 additions and 17 deletions

View file

@ -265,8 +265,16 @@ typedef void (*fw_transaction_callback_t)(struct fw_card *card, int rcode,
void *data, size_t length,
void *callback_data);
/*
* Important note: Except for the FCP registers, the callback must guarantee
* that either fw_send_response() or kfree() is called on the @request.
* This callback handles an inbound request subaction. It is called in
* RCU read-side context, therefore must not sleep.
*
* The callback should not initiate outbound request subactions directly.
* Otherwise there is a danger of recursion of inbound and outbound
* transactions from and to the local node.
*
* The callback is responsible that either fw_send_response() or kfree()
* is called on the @request, except for FCP registers for which the core
* takes care of that.
*/
typedef void (*fw_address_callback_t)(struct fw_card *card,
struct fw_request *request,