Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 11 May 1998 18:36:04 -0700
From:      Julian Elischer <julian@whistle.com>
To:        Julian Assange <proff@iq.org>
Cc:        Garance A Drosihn <drosih@rpi.edu>, gibbs@FreeBSD.ORG, hackers@FreeBSD.ORG
Subject:   Re: more queue.h brokenness
Message-ID:  <3557A784.31D2DE92@whistle.com>
References:  <v04011708b17d46eba4db@[128.113.24.47]> <wxu36wb8de.fsf@polysynaptic.iq.org>

next in thread | previous in thread | raw e-mail | index | archive | help
Julian Assange wrote:
> 
> Garance A Drosihn <drosih@rpi.edu> 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.

Then the problem in in one of the inserts or removals..

probably someone 'optimising' something they didn't quite understand.

> 
> Cheers,
> Julian.
> 
> To Unsubscribe: send mail to majordomo@FreeBSD.org
> with "unsubscribe freebsd-hackers" in the body of the message

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-hackers" in the body of the message



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?3557A784.31D2DE92>