Maxim Dounin
January 24, 2019 10:00AM
Hello!

On Thu, Jan 24, 2019 at 10:07:57AM +0800, Sepherosa Ziehau wrote:

> On Tue, Jan 22, 2019 at 10:54 PM Maxim Dounin <mdounin@mdounin.ru> wrote:
> > This needs to be extended with some background information -
> > notably why it used to be sigval_ptr, and why to switch to
> > sival_ptr.
>
> I am not sure why it used to be sigval_ptr; seems to be a miss name in
> FreeBSD. And the code seems to assume having KQUEUE == having sigval_ptr.
>
> As about why the switching:
> - It's POSIX standard.
> - It was noticed recently in DragonFly, since we removed this compat
> field (sigval_ptr), since after scanning the source code in ports
> system, nginx seems to be the only one using sigval_ptr.

Yes, Sergey have details on hand. It was renamed (likely by
accident) in 1999 (FreeBSD 4.0) when introducing SA_SIGINFO
support[1]. Standard-complaint name was restored in 2005 (first
released in FreeBSD 7.0 in 2008), retaining compatibility with
previous versions[2][3]. Similar changes were committed in
DragonFly in 2009[4].

Since initial AIO support in nginx was introduced in 2003[5], it
used the only name available at the moment.

Switching to a standard name now is fine, especially giving that
we can easily retain compatibility with previous versions.

But at least some of these details need to be preserved in the
commit log, and that's what I was asking Sergey about.

[1] https://github.com/freebsd/freebsd/commit/53573bf465904188986e8c982e8019835628d6b2
[2] https://github.com/freebsd/freebsd/commit/ae161ac2394e00bb3afca0667a13243d7963dfe2
[3] https://github.com/freebsd/freebsd/commit/54f35995c2ce65f23beb667de4ccf3d68139a81a
[4] https://gitweb.dragonflybsd.org/dragonfly.git/commit/36934016eeaca3abd418acb1c68bd391d3b54aa7
[5] http://hg.nginx.org/nginx/rev/738fe44c70d5

--
Maxim Dounin
http://mdounin.ru/
_______________________________________________
nginx-devel mailing list
nginx-devel@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-devel
Subject Author Views Posted

aio/unix: Use signal.sival which is standard

Sepherosa Ziehau 429 January 07, 2019 10:38PM

Re: aio/unix: Use signal.sival which is standard

Sergey Kandaurov 257 January 09, 2019 06:54AM

Re: aio/unix: Use signal.sival which is standard

Sepherosa Ziehau 143 January 17, 2019 12:46AM

Re: aio/unix: Use signal.sival which is standard

Sergey Kandaurov 239 January 17, 2019 05:30AM

Re: aio/unix: Use signal.sival which is standard

Maxim Dounin 176 January 17, 2019 08:24AM

Re: aio/unix: Use signal.sival which is standard

Sergey Kandaurov 182 January 17, 2019 10:20AM

Re: aio/unix: Use signal.sival which is standard

Sepherosa Ziehau 171 January 18, 2019 02:40AM

Re: aio/unix: Use signal.sival which is standard

Sergey Kandaurov 179 January 18, 2019 05:24AM

Re: aio/unix: Use signal.sival which is standard

Sepherosa Ziehau 177 January 23, 2019 09:06PM

Re: aio/unix: Use signal.sival which is standard

Maxim Dounin 174 January 22, 2019 09:56AM

Re: aio/unix: Use signal.sival which is standard

Sepherosa Ziehau 183 January 23, 2019 09:10PM

Re: aio/unix: Use signal.sival which is standard

Maxim Dounin 183 January 24, 2019 10:00AM

Re: aio/unix: Use signal.sival which is standard

Sepherosa Ziehau 175 January 28, 2019 04:08AM

Re: aio/unix: Use signal.sival which is standard

Sergey Kandaurov 181 January 28, 2019 12:34PM

Re: aio/unix: Use signal.sival which is standard

Sepherosa Ziehau 194 January 29, 2019 10:18PM



Sorry, you do not have permission to post/reply in this forum.

Online Users

Guests: 178
Record Number of Users: 8 on April 13, 2023
Record Number of Guests: 421 on December 02, 2018
Powered by nginx      Powered by FreeBSD      PHP Powered      Powered by MariaDB      ipv6 ready