diff options
| author | Jiri Kosina <jkosina@suse.cz> | 2015-04-02 14:09:09 +0200 |
|---|---|---|
| committer | Jiri Kosina <jkosina@suse.cz> | 2015-04-02 14:09:09 +0200 |
| commit | 1fd29be5cede285e673d3ed73d9ed9db59536b33 (patch) | |
| tree | 47d64b98c24c08ac49975a5a37ab821b7c4ad4e5 /drivers/hid/hid-sensor-hub.c | |
| parent | 5fcad167315f224eaf6750b0fb85ee6c92f087cd (diff) | |
| parent | b70b82580248b5393241c986082842ec05a2b7d7 (diff) | |
Merge branch 'for-4.0/upstream-fixes' into for-4.1/wacom
Conflicts:
drivers/hid/wacom_wac.c
Need to fetch the 4.0 fixes to apply 4.1 patches based on top
of those.
Signed-off-by: Jiri Kosina <jkosina@suse.cz>
Diffstat (limited to 'drivers/hid/hid-sensor-hub.c')
| -rw-r--r-- | drivers/hid/hid-sensor-hub.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/drivers/hid/hid-sensor-hub.c b/drivers/hid/hid-sensor-hub.c index 6a58b6c723aa..e54ce1097e2c 100644 --- a/drivers/hid/hid-sensor-hub.c +++ b/drivers/hid/hid-sensor-hub.c @@ -135,8 +135,9 @@ static struct hid_sensor_hub_callbacks *sensor_hub_get_callback( { struct hid_sensor_hub_callbacks_list *callback; struct sensor_hub_data *pdata = hid_get_drvdata(hdev); + unsigned long flags; - spin_lock(&pdata->dyn_callback_lock); + spin_lock_irqsave(&pdata->dyn_callback_lock, flags); list_for_each_entry(callback, &pdata->dyn_callback_list, list) if (callback->usage_id == usage_id && (collection_index >= @@ -145,10 +146,11 @@ static struct hid_sensor_hub_callbacks *sensor_hub_get_callback( callback->hsdev->end_collection_index)) { *priv = callback->priv; *hsdev = callback->hsdev; - spin_unlock(&pdata->dyn_callback_lock); + spin_unlock_irqrestore(&pdata->dyn_callback_lock, + flags); return callback->usage_callback; } - spin_unlock(&pdata->dyn_callback_lock); + spin_unlock_irqrestore(&pdata->dyn_callback_lock, flags); return NULL; } |
