<feed xmlns='http://www.w3.org/2005/Atom'>
<title>src/sys/opencrypto, 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>opencrypto: mark INVARIANTS variables as __diagused</title>
<updated>2022-08-29T13:06:03+00:00</updated>
<author>
<name>Ed Maste</name>
<email>emaste@FreeBSD.org</email>
</author>
<published>2022-08-09T23:23:19+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=c57ce1ab8704b567bb649d7edfa860e664192c84'/>
<id>c57ce1ab8704b567bb649d7edfa860e664192c84</id>
<content type='text'>
Fixes INVARIANTS build with Clang 15, which previously failed due to
set-but-not-used variable warnings.

MFC after:	1 week
Sponsored by:	The FreeBSD Foundation

(cherry picked from commit 3471fcf3a42d2a7b221215bfc772a6d1a170a059)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Fixes INVARIANTS build with Clang 15, which previously failed due to
set-but-not-used variable warnings.

MFC after:	1 week
Sponsored by:	The FreeBSD Foundation

(cherry picked from commit 3471fcf3a42d2a7b221215bfc772a6d1a170a059)
</pre>
</div>
</content>
</entry>
<entry>
<title>Unify zlib instances into one.</title>
<updated>2022-04-10T04:16:24+00:00</updated>
<author>
<name>Xin LI</name>
<email>delphij@FreeBSD.org</email>
</author>
<published>2019-08-25T17:13:00+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=254a1740cde85300587fcf4e3ad3b91453fa5d09'/>
<id>254a1740cde85300587fcf4e3ad3b91453fa5d09</id>
<content type='text'>
This is a cumulative update that consists 14 commits on main by
Yoshihiro Ota and myself to stable/12:

Remove gzip'ed a.out support.

(cherry picked from commit d4565741c6b4b256bd30aea8eb74e8a267cf6b60)

Delete unneeded #include &lt;sys/inflate.h&gt; from sys/mips.

(cherry picked from commit 880c6c1b06d203fd6b628d313b5b2658fb7135cb)

cryptodeflate: Drop z_stream zbuf.state-&gt;dummy from SDT probe.

(cherry picked from commit a49818787d7cff34b9ea9878e37c1c1ba221f081)

Remove kgzip and kgzldr.

(cherry picked from commit 5e86bd6073a2fb107318691aaa27b7e19bd45c24)

Separate kernel crc32() implementation to its own header (gsb_crc32.h) and
rename the source to gsb_crc32.c.

(cherry picked from commit f89d2072795407d7c3afff865b988e021c1451a2)

Allow Kernel to link in both legacy libkern/zlib and new sys/contrib/zlib.

(cherry picked from commit 0ed1d6fb00b8f22c82c3f9054c6dd16eb12469d2)

if_mxge: update zlib version 1.0.4 to 1.2.12.

(cherry picked from commit 1dbf944a91cfccba2c18fa273f69985cd15a5081)

Expose zlib's utility functions in Z_SOLO library when building kernel.
This allows kernel code to reuse zlib's implementation.

(cherry picked from commit a15cb219c6f2b8ed16179c2fce882a2ff327b753)

Update geom_uzip to use new zlib.

(cherry picked from commit 2b0cabbdaeac61bdb07909cb0ec995aba36e06b0)

Update bxe(4) to use new zlib.

(cherry picked from commit 92e9c0608bf161df04d14160084da2d50bcad30e)

Convert DDB_CTF to use newer version of ZLIB.

(cherry picked from commit 22bbc4b24270ec55c267a5b4ca4530991c3da408)

Convert ng_deflate to use new zlib.

(cherry picked from commit 34ff55b662d62adea206cb2b77bb064110f68e6d)

GZIO: Update to use zlib 1.2.12.

(cherry picked from commit 4e8671dd78cc77b31c598e83354fa6722acd4e3f)

Remove zlib 1.0.4 from kernel.

(cherry picked from commit 21aae72489aba9f1711c51672b3003cf8d54965d)

PR:		205822
PR:		229763
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This is a cumulative update that consists 14 commits on main by
Yoshihiro Ota and myself to stable/12:

Remove gzip'ed a.out support.

(cherry picked from commit d4565741c6b4b256bd30aea8eb74e8a267cf6b60)

Delete unneeded #include &lt;sys/inflate.h&gt; from sys/mips.

(cherry picked from commit 880c6c1b06d203fd6b628d313b5b2658fb7135cb)

cryptodeflate: Drop z_stream zbuf.state-&gt;dummy from SDT probe.

(cherry picked from commit a49818787d7cff34b9ea9878e37c1c1ba221f081)

Remove kgzip and kgzldr.

(cherry picked from commit 5e86bd6073a2fb107318691aaa27b7e19bd45c24)

Separate kernel crc32() implementation to its own header (gsb_crc32.h) and
rename the source to gsb_crc32.c.

(cherry picked from commit f89d2072795407d7c3afff865b988e021c1451a2)

Allow Kernel to link in both legacy libkern/zlib and new sys/contrib/zlib.

(cherry picked from commit 0ed1d6fb00b8f22c82c3f9054c6dd16eb12469d2)

if_mxge: update zlib version 1.0.4 to 1.2.12.

(cherry picked from commit 1dbf944a91cfccba2c18fa273f69985cd15a5081)

Expose zlib's utility functions in Z_SOLO library when building kernel.
This allows kernel code to reuse zlib's implementation.

(cherry picked from commit a15cb219c6f2b8ed16179c2fce882a2ff327b753)

Update geom_uzip to use new zlib.

(cherry picked from commit 2b0cabbdaeac61bdb07909cb0ec995aba36e06b0)

Update bxe(4) to use new zlib.

(cherry picked from commit 92e9c0608bf161df04d14160084da2d50bcad30e)

Convert DDB_CTF to use newer version of ZLIB.

(cherry picked from commit 22bbc4b24270ec55c267a5b4ca4530991c3da408)

Convert ng_deflate to use new zlib.

(cherry picked from commit 34ff55b662d62adea206cb2b77bb064110f68e6d)

GZIO: Update to use zlib 1.2.12.

(cherry picked from commit 4e8671dd78cc77b31c598e83354fa6722acd4e3f)

Remove zlib 1.0.4 from kernel.

(cherry picked from commit 21aae72489aba9f1711c51672b3003cf8d54965d)

PR:		205822
PR:		229763
</pre>
</div>
</content>
</entry>
<entry>
<title>Convert cryptostats to a counter_u64 array.</title>
<updated>2021-09-16T11:20:54+00:00</updated>
<author>
<name>Mark Johnston</name>
<email>markj@FreeBSD.org</email>
</author>
<published>2020-06-30T22:01:21+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=bef0c20ec74e0aaa4f08bc879efa1a5ee8fed0f1'/>
<id>bef0c20ec74e0aaa4f08bc879efa1a5ee8fed0f1</id>
<content type='text'>
The global counters were not SMP-friendly.  Use per-CPU counters
instead.

Reviewed by:	jhb
Sponsored by:	Rubicon Communications, LLC (Netgate)
Differential Revision:	https://reviews.freebsd.org/D25466

(cherry picked from commit 7290cb47fced28b5d0654cd1de7cc721e214ea32)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The global counters were not SMP-friendly.  Use per-CPU counters
instead.

Reviewed by:	jhb
Sponsored by:	Rubicon Communications, LLC (Netgate)
Differential Revision:	https://reviews.freebsd.org/D25466

(cherry picked from commit 7290cb47fced28b5d0654cd1de7cc721e214ea32)
</pre>
</div>
</content>
</entry>
<entry>
<title>Remove unused 32-bit compatibility structures from cryptodev.</title>
<updated>2021-09-16T11:20:48+00:00</updated>
<author>
<name>Mark Johnston</name>
<email>markj@FreeBSD.org</email>
</author>
<published>2020-06-30T15:57:11+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=2ed47b49b822f97901c3dd433384ec781c4df2cb'/>
<id>2ed47b49b822f97901c3dd433384ec781c4df2cb</id>
<content type='text'>
The counters are exported by a sysctl and have the same width on all
platforms anyway.

Reviewed by:	cem, delphij, jhb
Sponsored by:	Rubicon Communications, LLC (Netgate)
Differential Revision:	https://reviews.freebsd.org/D25465

(cherry picked from commit a5ae70f5a0554235c499016bec3a721adbb1043a)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The counters are exported by a sysctl and have the same width on all
platforms anyway.

Reviewed by:	cem, delphij, jhb
Sponsored by:	Rubicon Communications, LLC (Netgate)
Differential Revision:	https://reviews.freebsd.org/D25465

(cherry picked from commit a5ae70f5a0554235c499016bec3a721adbb1043a)
</pre>
</div>
</content>
</entry>
<entry>
<title>Remove CRYPTO_TIMING.</title>
<updated>2021-09-16T11:20:44+00:00</updated>
<author>
<name>Mark Johnston</name>
<email>markj@FreeBSD.org</email>
</author>
<published>2020-06-30T15:56:54+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=16ffd822c8236b2b0dae3fb43ffe55043985d0c8'/>
<id>16ffd822c8236b2b0dae3fb43ffe55043985d0c8</id>
<content type='text'>
It was added a very long time ago.  It is single-threaded, so only
really useful for basic measurements, and in the meantime we've gotten
some more sophisticated profiling tools.

Reviewed by:	cem, delphij, jhb
Sponsored by:	Rubicon Communications, LLC (Netgate)
Differential Revision:	https://reviews.freebsd.org/D25464

(cherry picked from commit a5c053f5a78ca68f9dcace37186142266787eaa0)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
It was added a very long time ago.  It is single-threaded, so only
really useful for basic measurements, and in the meantime we've gotten
some more sophisticated profiling tools.

Reviewed by:	cem, delphij, jhb
Sponsored by:	Rubicon Communications, LLC (Netgate)
Differential Revision:	https://reviews.freebsd.org/D25464

(cherry picked from commit a5c053f5a78ca68f9dcace37186142266787eaa0)
</pre>
</div>
</content>
</entry>
<entry>
<title>opencrypto: add kern.crypto sysctl node</title>
<updated>2021-09-16T11:20:35+00:00</updated>
<author>
<name>Mateusz Guzik</name>
<email>mjg@FreeBSD.org</email>
</author>
<published>2021-09-15T13:23:48+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=2fc0550ec438e35b9562104c0fd69ef765f459bd'/>
<id>2fc0550ec438e35b9562104c0fd69ef765f459bd</id>
<content type='text'>
This is a direct commit to facilitate upcoming merges.

Sponsored by:	Rubicon Communications, LLC ("Netgate")
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This is a direct commit to facilitate upcoming merges.

Sponsored by:	Rubicon Communications, LLC ("Netgate")
</pre>
</div>
</content>
</entry>
<entry>
<title>Revert "opencrypto: Fix assignment of crypto completions to worker threads"</title>
<updated>2021-02-04T14:44:53+00:00</updated>
<author>
<name>Mark Johnston</name>
<email>markj@FreeBSD.org</email>
</author>
<published>2021-02-04T14:43:10+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=40a37d24a8ed2d6e81919ed3c124494cbcf5c527'/>
<id>40a37d24a8ed2d6e81919ed3c124494cbcf5c527</id>
<content type='text'>
atomic_fetchadd_64 is not available on all platforms on stable/12.

This reverts commit 10ed8ab4ab9bd0239f2913ac2f35af9b9f76221d.

Reported by:	Mark Millard
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
atomic_fetchadd_64 is not available on all platforms on stable/12.

This reverts commit 10ed8ab4ab9bd0239f2913ac2f35af9b9f76221d.

Reported by:	Mark Millard
</pre>
</div>
</content>
</entry>
<entry>
<title>opencrypto: Fix assignment of crypto completions to worker threads</title>
<updated>2021-02-03T14:37:17+00:00</updated>
<author>
<name>Mark Johnston</name>
<email>markj@FreeBSD.org</email>
</author>
<published>2021-01-20T01:34:35+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=10ed8ab4ab9bd0239f2913ac2f35af9b9f76221d'/>
<id>10ed8ab4ab9bd0239f2913ac2f35af9b9f76221d</id>
<content type='text'>
Since r336439 we simply take the session pointer value mod the number of
worker threads (ncpu by default).  On small systems this ends up
funneling all completion work through a single thread, which becomes a
bottleneck when processing IPSec traffic using hardware crypto drivers.
(Software drivers such as aesni(4) are unaffected since they invoke
completion handlers synchonously.)

Instead, maintain an incrementing counter with a unique value per
session, and use that to distribute work to completion threads.

Reviewed by:	cem, jhb
Sponsored by:	Rubicon Communications, LLC ("Netgate")
Differential Revision:	https://reviews.freebsd.org/D28159

(cherry picked from commit 98d788c867b9e1d7a7e290254443b87ea77d8ab1)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Since r336439 we simply take the session pointer value mod the number of
worker threads (ncpu by default).  On small systems this ends up
funneling all completion work through a single thread, which becomes a
bottleneck when processing IPSec traffic using hardware crypto drivers.
(Software drivers such as aesni(4) are unaffected since they invoke
completion handlers synchonously.)

Instead, maintain an incrementing counter with a unique value per
session, and use that to distribute work to completion threads.

Reviewed by:	cem, jhb
Sponsored by:	Rubicon Communications, LLC ("Netgate")
Differential Revision:	https://reviews.freebsd.org/D28159

(cherry picked from commit 98d788c867b9e1d7a7e290254443b87ea77d8ab1)
</pre>
</div>
</content>
</entry>
<entry>
<title>MFC 366844: Mark asymmetric cryptography via OCF deprecated for 14.0.</title>
<updated>2020-12-04T01:09:51+00:00</updated>
<author>
<name>John Baldwin</name>
<email>jhb@FreeBSD.org</email>
</author>
<published>2020-12-04T01:09:51+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=52f7c6741464d96216f730eaa0ae11c8152274d6'/>
<id>52f7c6741464d96216f730eaa0ae11c8152274d6</id>
<content type='text'>
Only one MIPS-specific driver implements support for one of the
asymmetric operations.  There are no in-kernel users besides
/dev/crypto.  The only known user of the /dev/crypto interface was the
engine in OpenSSL releases before 1.1.0.  1.1.0 includes a rewritten
engine that does not use the asymmetric operations due to lack of
documentation.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Only one MIPS-specific driver implements support for one of the
asymmetric operations.  There are no in-kernel users besides
/dev/crypto.  The only known user of the /dev/crypto interface was the
engine in OpenSSL releases before 1.1.0.  1.1.0 includes a rewritten
engine that does not use the asymmetric operations due to lack of
documentation.
</pre>
</div>
</content>
</entry>
<entry>
<title>Add hmac_init_ipad() and hmac_init_opad()</title>
<updated>2020-11-09T14:15:06+00:00</updated>
<author>
<name>Mark Johnston</name>
<email>markj@FreeBSD.org</email>
</author>
<published>2020-11-09T14:15:06+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=a92dd5f9723882f422cb09e16d331e6723dd8461'/>
<id>a92dd5f9723882f422cb09e16d331e6723dd8461</id>
<content type='text'>
This is a merge of a small portion of r359374 which makes it easier
to maintain OpenCrypto drivers in stable/12.  No functional change
intended; this is a direct commit to stable/12.

Discussed with:	jhb
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This is a merge of a small portion of r359374 which makes it easier
to maintain OpenCrypto drivers in stable/12.  No functional change
intended; this is a direct commit to stable/12.

Discussed with:	jhb
</pre>
</div>
</content>
</entry>
</feed>
