diff options
author | Tomas Winkler <tomas.winkler@intel.com> | 2014-08-21 14:29:15 +0300 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2014-09-23 22:57:48 -0700 |
commit | d880f3294d0576e79dfab4e2cd5a2eb62fe188f0 (patch) | |
tree | a36fc7837df60ae8d004524f42c3fd0924c5ee75 /drivers/misc/mei/nfc.c | |
parent | 25ca6472b590e87efba314892a76bd5629c8c989 (diff) | |
download | linux-d880f3294d0576e79dfab4e2cd5a2eb62fe188f0.tar.bz2 |
mei: add mei_me_cl_by_uuid_id function
When handling dynamic clients there might be a race
scenario in which two me clients with the same me
address would be linked in the me clients list,
therefore we need to search by both uuid and me address.
Signed-off-by: Tomas Winkler <tomas.winkler@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/misc/mei/nfc.c')
-rw-r--r-- | drivers/misc/mei/nfc.c | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/drivers/misc/mei/nfc.c b/drivers/misc/mei/nfc.c index 964b4c606646..e0e75d429fdf 100644 --- a/drivers/misc/mei/nfc.c +++ b/drivers/misc/mei/nfc.c @@ -507,12 +507,12 @@ int mei_nfc_host_init(struct mei_device *dev) } cl_info->me_client_id = me_cl->client_id; + cl_info->cl_uuid = me_cl->props.protocol_name; ret = mei_cl_link(cl_info, MEI_HOST_CLIENT_ID_ANY); if (ret) goto err; - cl_info->device_uuid = mei_nfc_info_guid; list_add_tail(&cl_info->device_link, &dev->device_list); @@ -525,14 +525,12 @@ int mei_nfc_host_init(struct mei_device *dev) } cl->me_client_id = me_cl->client_id; + cl->cl_uuid = me_cl->props.protocol_name; ret = mei_cl_link(cl, MEI_HOST_CLIENT_ID_ANY); if (ret) goto err; - cl->device_uuid = mei_nfc_guid; - - list_add_tail(&cl->device_link, &dev->device_list); ndev->req_id = 1; |