diff options
Diffstat (limited to 'arch/sparc64/kernel/ds.c')
-rw-r--r-- | arch/sparc64/kernel/ds.c | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/arch/sparc64/kernel/ds.c b/arch/sparc64/kernel/ds.c index bd76482077be..edb74f5a1186 100644 --- a/arch/sparc64/kernel/ds.c +++ b/arch/sparc64/kernel/ds.c | |||
@@ -972,8 +972,7 @@ static void process_ds_work(void) | |||
972 | LIST_HEAD(todo); | 972 | LIST_HEAD(todo); |
973 | 973 | ||
974 | spin_lock_irqsave(&ds_lock, flags); | 974 | spin_lock_irqsave(&ds_lock, flags); |
975 | list_splice(&ds_work_list, &todo); | 975 | list_splice_init(&ds_work_list, &todo); |
976 | INIT_LIST_HEAD(&ds_work_list); | ||
977 | spin_unlock_irqrestore(&ds_lock, flags); | 976 | spin_unlock_irqrestore(&ds_lock, flags); |
978 | 977 | ||
979 | list_for_each_entry_safe(qp, tmp, &todo, list) { | 978 | list_for_each_entry_safe(qp, tmp, &todo, list) { |