Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id ; Thu, 26 Sep 2002 17:07:42 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id ; Thu, 26 Sep 2002 17:07:42 -0400 Received: from pD9E23892.dip.t-dialin.net ([217.226.56.146]:2282 "EHLO hawkeye.luckynet.adm") by vger.kernel.org with ESMTP id ; Thu, 26 Sep 2002 17:07:41 -0400 Date: Thu, 26 Sep 2002 15:13:35 -0600 (MDT) From: Thunder from the hill X-X-Sender: thunder@hawkeye.luckynet.adm To: Rik van Riel cc: Thunder from the hill , Linux Kernel Mailing List Subject: Re: [PATCH][2.5] Single linked lists for Linux, overly complicated v2 In-Reply-To: Message-ID: X-Location: Dorndorf/Steudnitz; Germany MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: linux-kernel-owner@vger.kernel.org X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 860 Lines: 34 Hi, On Thu, 26 Sep 2002, Rik van Riel wrote: > > > In the case of slist_del() you HAVE to know it. What about /** * slist_del - remove an entry from list * @buf: a storage area, just as long as the entry * @entry: entry to be removed */ #define slist_del(_entry_in,_buf) \ do { \ typeof(_entry_in) _entry = (_entry_in), \ _head = (_buf), _free; \ memcpy(_head, _entry, sizeof(_entry)); \ _free = _entry; \ _entry = _entry->next; \ _head->next = NULL; \ (_buf) = _head; \ } while (0) ? Thunder -- assert(typeof((fool)->next) == typeof(fool)); /* wrong */ - 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/