From owner-freebsd-hackers Mon May 11 18:12:24 1998 Return-Path: Received: (from majordom@localhost) by hub.freebsd.org (8.8.8/8.8.8) id SAA00965 for freebsd-hackers-outgoing; Mon, 11 May 1998 18:12:24 -0700 (PDT) (envelope-from owner-freebsd-hackers@FreeBSD.ORG) Received: from iq.org (proff@polysynaptic.iq.org [203.4.184.222]) by hub.freebsd.org (8.8.8/8.8.8) with SMTP id SAA00946 for ; Mon, 11 May 1998 18:12:12 -0700 (PDT) (envelope-from proff@iq.org) Received: (qmail 3076 invoked by uid 110); 12 May 1998 01:11:57 -0000 To: Garance A Drosihn Cc: gibbs@FreeBSD.ORG, hackers@FreeBSD.ORG Subject: Re: more queue.h brokenness References: From: Julian Assange Date: 12 May 1998 11:11:57 +1000 In-Reply-To: Garance A Drosihn's message of "Mon, 11 May 1998 20:37:39 -0400" Message-ID: Lines: 28 X-Mailer: Gnus v5.5/XEmacs 20.4 - "Emerald" Sender: owner-freebsd-hackers@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG Garance A Drosihn writes: > At 10:22 PM +0000 5/11/98, Julian Assange wrote: > > I notice someone (gibbs?) has updated sys/queue.h > [skipping] > > the other queue.h types (where defined) also have this problem. > > > > TAILQ_PREV is only used in vm/vm_object.c, which, presumably, > > is why no-one has noticed the problem before (and why I've > > cc'd dyson). > > Not sure what you mean by "the other" queue.h types, but I thought > I'd mention that the newer version of lpr also uses sys/queue.h > for some things. It seems to use TAILQ_{ENTRY,HEAD,INIT,REMOVE}, > in case those are among the other types which have the problem... No, by other types I meant the other queue types, e.g STAILQ/LIST. The definitions for TAILQ_LAST and TAILQ_PREV have changed; I'm not sure if these new definitions have fixed the problem or not (the code path is complex). The symptoms were that after a certain combination of inserts and removes, TAILQ_PREV on the first element returned the first member, rather than NULL (meaning a backwards loop through the TAILQ never ended). When there was only one member left, TAILQ_LAST returned NULL, rather than the first member. Cheers, Julian. To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-hackers" in the body of the message