<feed xmlns='http://www.w3.org/2005/Atom'>
<title>src/sys/opencrypto, branch release/5.2.1</title>
<subtitle>FreeBSD source tree</subtitle>
<id>https://cgit-dev.freebsd.org/src/atom?h=release%2F5.2.1</id>
<link rel='self' href='https://cgit-dev.freebsd.org/src/atom?h=release%2F5.2.1'/>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/'/>
<updated>2003-11-19T22:42:34Z</updated>
<entry>
<title>eliminate an unnecessary 8Kbyte bzero that was being done for each</title>
<updated>2003-11-19T22:42:34Z</updated>
<author>
<name>Sam Leffler</name>
<email>sam@FreeBSD.org</email>
</author>
<published>2003-11-19T22:42:34Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=57053a10cfdbd854607162021200b886bfa4e0a0'/>
<id>urn:sha1:57053a10cfdbd854607162021200b886bfa4e0a0</id>
<content type='text'>
submitted operation

Submitted by:	Thor Lancelot Simon
Reviewed by:	jhb
Approved by:	re (jhb)
</content>
</entry>
<entry>
<title>falloc allocates a file structure and adds it to the file descriptor</title>
<updated>2003-10-19T20:41:07Z</updated>
<author>
<name>David Malone</name>
<email>dwmalone@FreeBSD.org</email>
</author>
<published>2003-10-19T20:41:07Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=e1419c08e2520d267e0a14e1bb10ae3bebbb12ae'/>
<id>urn:sha1:e1419c08e2520d267e0a14e1bb10ae3bebbb12ae</id>
<content type='text'>
table, acquiring the necessary locks as it works. It usually returns
two references to the new descriptor: one in the descriptor table
and one via a pointer argument.

As falloc releases the FILEDESC lock before returning, there is a
potential for a process to close the reference in the file descriptor
table before falloc's caller gets to use the file. I don't think this
can happen in practice at the moment, because Giant indirectly protects
closes.

To stop the file being completly closed in this situation, this change
makes falloc set the refcount to two when both references are returned.
This makes life easier for several of falloc's callers, because the
first thing they previously did was grab an extra reference on the
file.

Reviewed by:	iedowse
Idea run past:	jhb
</content>
</entry>
<entry>
<title>The present defaults for the open and close for device drivers which</title>
<updated>2003-09-27T12:01:01Z</updated>
<author>
<name>Poul-Henning Kamp</name>
<email>phk@FreeBSD.org</email>
</author>
<published>2003-09-27T12:01:01Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=70cd7713375b9351501f68831aea1c52a7b9be47'/>
<id>urn:sha1:70cd7713375b9351501f68831aea1c52a7b9be47</id>
<content type='text'>
provide no methods does not make any sense, and is not used by any
driver.

It is a pretty hard to come up with even a theoretical concept of
a device driver which would always fail open and close with ENODEV.

Change the defaults to be nullopen() and nullclose() which simply
does nothing.

Remove explicit initializations to these from the drivers which
already used them.
</content>
</entry>
<entry>
<title>consolidate callback optimization check in one location by adding a flag</title>
<updated>2003-06-30T05:09:32Z</updated>
<author>
<name>Sam Leffler</name>
<email>sam@FreeBSD.org</email>
</author>
<published>2003-06-30T05:09:32Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=d8409aaf6e683996e179b67ebb387777104595cb'/>
<id>urn:sha1:d8409aaf6e683996e179b67ebb387777104595cb</id>
<content type='text'>
for crypto operations that indicates the crypto code should do the check
in crypto_done

MFC after:	1 day
</content>
</entry>
<entry>
<title>Add support to eliminate a context switch per crypto op when using the</title>
<updated>2003-06-27T20:07:10Z</updated>
<author>
<name>Sam Leffler</name>
<email>sam@FreeBSD.org</email>
</author>
<published>2003-06-27T20:07:10Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=07d0c94a4621a47d1b967e5c7cc7c17f26812f95'/>
<id>urn:sha1:07d0c94a4621a47d1b967e5c7cc7c17f26812f95</id>
<content type='text'>
software crypto device:

o record crypto device capabilities in each session id
o add a capability that indicates if the crypto driver operates synchronously
o tag the software crypto driver as operating synchronously

This commit also introduces crypto session id macros that cleanup their
construction and querying.
</content>
</entry>
<entry>
<title>Initialize struct fileops with C99 sparse initialization.</title>
<updated>2003-06-18T18:16:40Z</updated>
<author>
<name>Poul-Henning Kamp</name>
<email>phk@FreeBSD.org</email>
</author>
<published>2003-06-18T18:16:40Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=7c2d2efd58fb9c7863ecacc59b3d05b6fd800962'/>
<id>urn:sha1:7c2d2efd58fb9c7863ecacc59b3d05b6fd800962</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Use __FBSDID().</title>
<updated>2003-06-11T05:57:50Z</updated>
<author>
<name>David E. O'Brien</name>
<email>obrien@FreeBSD.org</email>
</author>
<published>2003-06-11T05:57:50Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=2c44651495e3efe18815da86983b398b559bd4ee'/>
<id>urn:sha1:2c44651495e3efe18815da86983b398b559bd4ee</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Flush my local cache of cryto subsystem fixes:</title>
<updated>2003-06-02T23:28:06Z</updated>
<author>
<name>Sam Leffler</name>
<email>sam@FreeBSD.org</email>
</author>
<published>2003-06-02T23:28:06Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=3569ae7f667f89001ebda6fcb5dfd76253cd1cc4'/>
<id>urn:sha1:3569ae7f667f89001ebda6fcb5dfd76253cd1cc4</id>
<content type='text'>
o add a ``done'' flag for crypto operations; this is set when the operation
  completes and is intended for callers to check operations that may complete
  ``prematurely'' because of direct callbacks
o close a race for operations where the crypto driver returns ERESTART: we
  need to hold the q lock to insure the blocked state for the driver and any
  driver-private state is consistent; otherwise drivers may take an interrupt
  and notify the crypto subsystem that it can unblock the driver but operations
  will be left queued and never be processed
o close a race in /dev/crypto where operations can complete before the caller
  can sleep waiting for the callback: use a per-session mutex and the new done
  flag to handle this
o correct crypto_dispatch's handling of operations where the driver returns
  ERESTART: the return value must be zero and not ERESTART, otherwise the
  caller may free the crypto request despite it being queued for later handling
  (this typically results in a later panic)
o change crypto mutex ``names'' so witness printouts and the like are more
  meaningful
</content>
</entry>
<entry>
<title>Gigacommit to improve device-driver source compatibility between</title>
<updated>2003-03-03T12:15:54Z</updated>
<author>
<name>Poul-Henning Kamp</name>
<email>phk@FreeBSD.org</email>
</author>
<published>2003-03-03T12:15:54Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=7ac40f5f59dea6e9ab4869e974bdd4026274e921'/>
<id>urn:sha1:7ac40f5f59dea6e9ab4869e974bdd4026274e921</id>
<content type='text'>
branches:

Initialize struct cdevsw using C99 sparse initializtion and remove
all initializations to default values.

This patch is automatically generated and has been tested by compiling
LINT with all the fields in struct cdevsw in reverse order on alpha,
sparc64 and i386.

Approved by:    re(scottl)
</content>
</entry>
<entry>
<title>o add a CRYPTO_F_CBIMM flag to symmetric ops to indicate the callback</title>
<updated>2003-02-23T07:25:48Z</updated>
<author>
<name>Sam Leffler</name>
<email>sam@FreeBSD.org</email>
</author>
<published>2003-02-23T07:25:48Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=eb73a605cd2213db74496820092c4564ca4977c7'/>
<id>urn:sha1:eb73a605cd2213db74496820092c4564ca4977c7</id>
<content type='text'>
  should be done in crypto_done rather than in the callback thread
o use this flag to mark operations from /dev/crypto since the callback
  routine just does a wakeup; this eliminates the last unneeded ctx switch
o change CRYPTO_F_NODELAY to CRYPTO_F_BATCH with an inverted meaning
  so "0" becomes the default/desired setting (needed for user-mode
  compatibility with openbsd)
o change crypto_dispatch to honor CRYPTO_F_BATCH instead of always
  dispatching immediately
o remove uses of CRYPTO_F_NODELAY
o define COP_F_BATCH for ops submitted through /dev/crypto and pass
  this on to the op that is submitted

Similar changes and more eventually coming for asymmetric ops.

MFC if re gives approval.
</content>
</entry>
</feed>
