Messages in this thread | | | Date | Tue, 27 Jun 2006 12:58:19 -0400 | From | Dave Jones <> | Subject | Re: list corruption on removal of snd_seq_dummy |
| |
On Tue, Jun 27, 2006 at 02:38:39PM +0200, Takashi Iwai wrote: > > > No, list_move() can't move the whole elements without loop. > > > > > > A solution is > > > > > > list_add(B, A); > > > list_del_init(A); > > > > > > (although this introduces a bit more code :) > > > > Shouldn't it be like this? > > > > ports_list_first = client->ports_list_head.next; > > list_del_init(client->ports_list_head); > > list_splice(ports_list_first, &deleted_list); > > This requires INIT_LIST_HEAD(&deleted_list) first, so obviously > a longer code :)
This is hardly a speed/size critical function. I'd go for readability over cute hacks any day.
Dave
-- http://www.codemonkey.org.uk - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |