tech-kern archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: [PATCH 0/2] Delete CIRCLEQ



Everything relatively modern that uses sys/queue.h directly was
already switched a long time ago to TAILQ.

Christos Zoulas changed most users of CIRCLEQ in the src tree 6 years
ago. The last leftover is handled in this patchset.

I was able to find some 3rd projects using CIRCLEQ, but probably all
of them are both: 1. old 2. ship with a  local copy of sys/queue.h.
There is not much working code using CIRCLEQ left and NetBSD is pretty
much the last one to deliver it.

It's also broken for modern compilers and we need to launder pointers
to workaround the pointer aliasing design flaw.

Kamil Rytarowski
CTO, Moritz Systems
www.moritz.systems

pon., 12 paź 2020 o 04:23 matthew green <mrg%eterna.com.au@localhost> napisał(a):
>
> Kamil Rytarowski writes:
> > Switch the last user (ypserv) from CIRCLEQ to TAILQ.
> > This is inspired by analogous refactoring from OpenBSD:
> > https://github.com/openbsd/src/commit/d53c0cf4d32fdbd8b42debfba068f1b0efa423dc#diff-8d0a4fbb89658213ebf314ff188581d7
> >
> > Remove the CIRCLEQ API completely from the system headers and document
> > this fact in the QUEUE(3) man-page.
>
> why?  queue.h may be used by more than src.
>
> i don't see any benefit except forcing working code to
> be changed, possibly introducing bugs.
>
> please leave it alone.
>
>
> .mrg.


Home | Main Index | Thread Index | Old Index