<feed xmlns='http://www.w3.org/2005/Atom'>
<title>src/include, branch release/12.4.0</title>
<subtitle>FreeBSD source tree</subtitle>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/'/>
<entry>
<title>Change the return value of _Unwind_GetCFA in include/unwind.h.</title>
<updated>2022-02-20T12:33:42+00:00</updated>
<author>
<name>John Baldwin</name>
<email>jhb@FreeBSD.org</email>
</author>
<published>2022-01-27T22:42:40+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=bd75df196d7e34a6d5e92185cc8c6dbe4f24a222'/>
<id>bd75df196d7e34a6d5e92185cc8c6dbe4f24a222</id>
<content type='text'>
I tested the original commit as part of a series that culminates in
removing this header and installing LLVM libunwind's unwind.h in its
place so missed updating this header as was done in b84693501af6.

Pointy hat to:	jhb
Reported by:	kevans
Fixes:		3a502289d316 Use uintptr_t for return type of _Unwind_GetCFA.

(cherry picked from commit 522f5383547a2b3980f097a647b25f12c15411af)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
I tested the original commit as part of a series that culminates in
removing this header and installing LLVM libunwind's unwind.h in its
place so missed updating this header as was done in b84693501af6.

Pointy hat to:	jhb
Reported by:	kevans
Fixes:		3a502289d316 Use uintptr_t for return type of _Unwind_GetCFA.

(cherry picked from commit 522f5383547a2b3980f097a647b25f12c15411af)
</pre>
</div>
</content>
</entry>
<entry>
<title>Use an unsigned 64-bit integer for exception class.</title>
<updated>2022-02-20T12:33:41+00:00</updated>
<author>
<name>John Baldwin</name>
<email>jhb@FreeBSD.org</email>
</author>
<published>2022-01-27T18:34:35+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=e9d6017dea4a92ae54e993bf85edaebf25b6b230'/>
<id>e9d6017dea4a92ae54e993bf85edaebf25b6b230</id>
<content type='text'>
This matches the type in other unwind headers (LLVM libunwind,
libcxxrt, glibc).

NB: include/unwind.h is not installed but is only used by libthr

Reviewed by:	imp, dim, emaste
Differential Revision:	https://reviews.freebsd.org/D34049

(cherry picked from commit b84693501af6521487327ec4eb7c6ae0097ac5d7)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This matches the type in other unwind headers (LLVM libunwind,
libcxxrt, glibc).

NB: include/unwind.h is not installed but is only used by libthr

Reviewed by:	imp, dim, emaste
Differential Revision:	https://reviews.freebsd.org/D34049

(cherry picked from commit b84693501af6521487327ec4eb7c6ae0097ac5d7)
</pre>
</div>
</content>
</entry>
<entry>
<title>ipfilter: Move kernel bits to netpfil</title>
<updated>2022-02-07T13:55:10+00:00</updated>
<author>
<name>Cy Schubert</name>
<email>cy@FreeBSD.org</email>
</author>
<published>2021-12-15T16:28:18+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=69ea7bffbe8e258aab127b2ae772c144695163e6'/>
<id>69ea7bffbe8e258aab127b2ae772c144695163e6</id>
<content type='text'>
Through fixes and improvements our ipfilter sources have diverged
enough to warrant move from contrib into sys/netpil. Now that I'm
planning on implementing MSS clamping as in iptables it makes more
sense to move ipfilter to netpfil.

This is the first of three commits the ipfilter move.

Suggested by glebius on two occaions.

Suggested by and discussed with:	glebius
Reviewed by:				glebius, kp (for #network)
Differential Revision:		https://reviews.freebsd.org/D33510

(cherry picked from commit 3b9b51fe464ebb91e894742a6a0e6417e256f03a)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Through fixes and improvements our ipfilter sources have diverged
enough to warrant move from contrib into sys/netpil. Now that I'm
planning on implementing MSS clamping as in iptables it makes more
sense to move ipfilter to netpfil.

This is the first of three commits the ipfilter move.

Suggested by glebius on two occaions.

Suggested by and discussed with:	glebius
Reviewed by:				glebius, kp (for #network)
Differential Revision:		https://reviews.freebsd.org/D33510

(cherry picked from commit 3b9b51fe464ebb91e894742a6a0e6417e256f03a)
</pre>
</div>
</content>
</entry>
<entry>
<title>Add tcgetwinsize(3) and tcsetwinsize(3) to termios</title>
<updated>2021-01-16T06:38:49+00:00</updated>
<author>
<name>Konstantin Belousov</name>
<email>kib@FreeBSD.org</email>
</author>
<published>2020-12-24T23:05:31+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=ecdc6d1ddde65a345904a9a805f9efd522da8eed'/>
<id>ecdc6d1ddde65a345904a9a805f9efd522da8eed</id>
<content type='text'>
(cherry picked from commit 7d7fad7bd969fb464f64d34932234060cee112af)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
(cherry picked from commit 7d7fad7bd969fb464f64d34932234060cee112af)
</pre>
</div>
</content>
</entry>
<entry>
<title>Implement strerror_l().</title>
<updated>2020-12-30T10:44:23+00:00</updated>
<author>
<name>Konstantin Belousov</name>
<email>kib@FreeBSD.org</email>
</author>
<published>2020-12-16T09:02:09+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=d3912bec58d0b82509a0973cae02f156986d88fa'/>
<id>d3912bec58d0b82509a0973cae02f156986d88fa</id>
<content type='text'>
PR: 251651

MFC of r368692, r368723
(cherry picked from commit 675079b1ea61b310f3a42cb0d352a49c1780f89a)
(cherry picked from commit 65bf3043365bd86fc5d4d387ad0c42217f11330b)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
PR: 251651

MFC of r368692, r368723
(cherry picked from commit 675079b1ea61b310f3a42cb0d352a49c1780f89a)
(cherry picked from commit 65bf3043365bd86fc5d4d387ad0c42217f11330b)
</pre>
</div>
</content>
</entry>
<entry>
<title>&lt;regex.h&gt;: reserve a regcomp field for REG_POSIX</title>
<updated>2020-12-28T04:20:26+00:00</updated>
<author>
<name>Kyle Evans</name>
<email>kevans@FreeBSD.org</email>
</author>
<published>2020-07-31T12:40:31+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=aaacbdb3993b7ba9b31c7f26412ffcc44ba94a52'/>
<id>aaacbdb3993b7ba9b31c7f26412ffcc44ba94a52</id>
<content type='text'>
For libc regcomp, this will be a nop. libregex will take this to mean that
it needs to turn off GNU extensions, effectively switching it back to the
POSIX-compliant libc implementation at runtime.

(cherry picked from commit 7c5ec5fe6afb50ba5c83ad0b3dab036f91b7dafe)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
For libc regcomp, this will be a nop. libregex will take this to mean that
it needs to turn off GNU extensions, effectively switching it back to the
POSIX-compliant libc implementation at runtime.

(cherry picked from commit 7c5ec5fe6afb50ba5c83ad0b3dab036f91b7dafe)
</pre>
</div>
</content>
</entry>
<entry>
<title>MFC r366781, r366866: Implement ptsname_r.</title>
<updated>2020-11-09T01:52:15+00:00</updated>
<author>
<name>Xin LI</name>
<email>delphij@FreeBSD.org</email>
</author>
<published>2020-11-09T01:52:15+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=6f9ff71eb7a0452cafc48f037f620f8ae9265dda'/>
<id>6f9ff71eb7a0452cafc48f037f620f8ae9265dda</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>MFC r365506 getlogin_r: fix the type of len</title>
<updated>2020-09-13T01:44:31+00:00</updated>
<author>
<name>Kyle Evans</name>
<email>kevans@FreeBSD.org</email>
</author>
<published>2020-09-13T01:44:31+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=43e28945fb6e5c5826a1e0c9b5a8381bff9f1cc5'/>
<id>43e28945fb6e5c5826a1e0c9b5a8381bff9f1cc5</id>
<content type='text'>
getlogin_r is specified by POSIX to to take a size_t len, not int. Fix our
version to do the same, bump the symbol version due to ABI change and
provide compat.

This was reported to break compilation of Ruby 2.8.

Some discussion about the necessity of the ABI compat did take place in the
review. While many 64-bit platforms would likely be passing it in a 64-bit
register and zero-extended and thus, not notice ABI breakage, some do
sign-extend (e.g. mips).

PR:		247102
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
getlogin_r is specified by POSIX to to take a size_t len, not int. Fix our
version to do the same, bump the symbol version due to ABI change and
provide compat.

This was reported to break compilation of Ruby 2.8.

Some discussion about the necessity of the ABI compat did take place in the
review. While many 64-bit platforms would likely be passing it in a 64-bit
register and zero-extended and thus, not notice ABI breakage, some do
sign-extend (e.g. mips).

PR:		247102
</pre>
</div>
</content>
</entry>
<entry>
<title>MFC r359836-r359837, r359891, r360236-r360237: close_range(2)</title>
<updated>2020-08-05T03:53:57+00:00</updated>
<author>
<name>Kyle Evans</name>
<email>kevans@FreeBSD.org</email>
</author>
<published>2020-08-05T03:53:57+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=a80adba5ab46ba6d44d5abfc9b7f3b6de8afda55'/>
<id>a80adba5ab46ba6d44d5abfc9b7f3b6de8afda55</id>
<content type='text'>
This commit diverges from our usual procedure of committing generated files
separately because the original commit, r359836, conflated userland use (in
tests) with the implementation.

__FreeBSD_version was already bumped ~15 hours prior to this MFC, 1201522
marks the introduction of close_range.

CPython will use this syscall for some pretty sizable performance gains.

r359836:
Implement a close_range(2) syscall

close_range(min, max, flags) allows for a range of descriptors to be
closed. The Python folk have indicated that they would much prefer this
interface to closefrom(2), as the case may be that they/someone have special
fds dup'd to higher in the range and they can't necessarily closefrom(min)
because they don't want to hit the upper range, but relocating them to lower
isn't necessarily feasible.

sys_closefrom has been rewritten to use kern_close_range() using ~0U to
indicate closing to the end of the range. This was chosen rather than
requiring callers of kern_close_range() to hold FILEDESC_SLOCK across the
call to kern_close_range for simplicity.

The flags argument of close_range(2) is currently unused, so any flags set
is currently EINVAL. It was added to the interface in Linux so that future
flags could be added for, e.g., "halt on first error" and things of this
nature.

This patch is based on a syscall of the same design that is expected to be
merged into Linux.

r359837:
sysent: re-roll after introduction of close_range in r359836

r359891:
close_range/closefrom: fix regression from close_range introduction

close_range will clamp the range between [0, fdp-&gt;fd_lastfile], but failed
to take into account that fdp-&gt;fd_lastfile can become -1 if all fds are
closed. =-( In this scenario, just return because there's nothing further we
can do at the moment.

Add a test case for this, fork() and simply closefrom(0) twice in the child;
on the second invocation, fdp-&gt;fd_lastfile == -1 and will trigger a panic
before this change.

r360236:
close_range(2): use newly assigned AUE_CLOSERANGE

r360237:
sysent: re-roll after 360236 (AUE_CLOSERANGE used)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This commit diverges from our usual procedure of committing generated files
separately because the original commit, r359836, conflated userland use (in
tests) with the implementation.

__FreeBSD_version was already bumped ~15 hours prior to this MFC, 1201522
marks the introduction of close_range.

CPython will use this syscall for some pretty sizable performance gains.

r359836:
Implement a close_range(2) syscall

close_range(min, max, flags) allows for a range of descriptors to be
closed. The Python folk have indicated that they would much prefer this
interface to closefrom(2), as the case may be that they/someone have special
fds dup'd to higher in the range and they can't necessarily closefrom(min)
because they don't want to hit the upper range, but relocating them to lower
isn't necessarily feasible.

sys_closefrom has been rewritten to use kern_close_range() using ~0U to
indicate closing to the end of the range. This was chosen rather than
requiring callers of kern_close_range() to hold FILEDESC_SLOCK across the
call to kern_close_range for simplicity.

The flags argument of close_range(2) is currently unused, so any flags set
is currently EINVAL. It was added to the interface in Linux so that future
flags could be added for, e.g., "halt on first error" and things of this
nature.

This patch is based on a syscall of the same design that is expected to be
merged into Linux.

r359837:
sysent: re-roll after introduction of close_range in r359836

r359891:
close_range/closefrom: fix regression from close_range introduction

close_range will clamp the range between [0, fdp-&gt;fd_lastfile], but failed
to take into account that fdp-&gt;fd_lastfile can become -1 if all fds are
closed. =-( In this scenario, just return because there's nothing further we
can do at the moment.

Add a test case for this, fork() and simply closefrom(0) twice in the child;
on the second invocation, fdp-&gt;fd_lastfile == -1 and will trigger a panic
before this change.

r360236:
close_range(2): use newly assigned AUE_CLOSERANGE

r360237:
sysent: re-roll after 360236 (AUE_CLOSERANGE used)
</pre>
</div>
</content>
</entry>
<entry>
<title>MFC r363193:</title>
<updated>2020-07-21T08:12:53+00:00</updated>
<author>
<name>Konstantin Belousov</name>
<email>kib@FreeBSD.org</email>
</author>
<published>2020-07-21T08:12:53+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=cd237bdea7700a0d134fe08cad8b18281df29261'/>
<id>cd237bdea7700a0d134fe08cad8b18281df29261</id>
<content type='text'>
Make CLOCK_REALTIME and TIMER_ABSTIME available for XOPEN_SOURCE &gt;= 500.

PR:	247701
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Make CLOCK_REALTIME and TIMER_ABSTIME available for XOPEN_SOURCE &gt;= 500.

PR:	247701
</pre>
</div>
</content>
</entry>
</feed>
