diff options
| author | Dave Airlie <airlied@redhat.com> | 2017-04-11 07:40:42 +1000 |
|---|---|---|
| committer | Dave Airlie <airlied@redhat.com> | 2017-04-11 07:40:42 +1000 |
| commit | b769fefb68cd70385d68220ae341e5a10723fbc0 (patch) | |
| tree | a2881410c9dc5a3474619d155fac981cfbd4ee8f /kernel/padata.c | |
| parent | 1420f63b8207e966f54caec26d08abdc2ff37193 (diff) | |
| parent | 39da7c509acff13fc8cb12ec1bb20337c988ed36 (diff) | |
Backmerge tag 'v4.11-rc6' into drm-next
Linux 4.11-rc6
drm-misc needs 4.11-rc5, may as well fix conflicts with rc6.
Diffstat (limited to 'kernel/padata.c')
| -rw-r--r-- | kernel/padata.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/kernel/padata.c b/kernel/padata.c index 05316c9f32da..3202aa17492c 100644 --- a/kernel/padata.c +++ b/kernel/padata.c @@ -186,19 +186,20 @@ static struct padata_priv *padata_get_next(struct parallel_data *pd) reorder = &next_queue->reorder; + spin_lock(&reorder->lock); if (!list_empty(&reorder->list)) { padata = list_entry(reorder->list.next, struct padata_priv, list); - spin_lock(&reorder->lock); list_del_init(&padata->list); atomic_dec(&pd->reorder_objects); - spin_unlock(&reorder->lock); pd->processed++; + spin_unlock(&reorder->lock); goto out; } + spin_unlock(&reorder->lock); if (__this_cpu_read(pd->pqueue->cpu_index) == next_queue->cpu_index) { padata = ERR_PTR(-ENODATA); |
