Commit Graph

7 Commits

Author SHA1 Message Date
gehenna 77a6b82b27 Merge the gehenna-devsw branch into the trunk.
This merge changes the device switch tables from static array to
dynamically generated by config(8).

- All device switches is defined as a constant structure in device drivers.

- The new grammer ``device-major'' is introduced to ``files''.

	device-major <prefix> char <num> [block <num>] [<rules>]

- All device major numbers must be listed up in port dependent majors.<arch>
  by using this grammer.

- Added the new naming convention.
  The name of the device switch must be <prefix>_[bc]devsw for auto-generation
  of device switch tables.

- The backward compatibility of loading block/character device
  switch by LKM framework is broken. This is necessary to convert
  from block/character device major to device name in runtime and vice versa.

- The restriction to assign device major by LKM is completely removed.
  We don't need to reserve LKM entries for dynamic loading of device switch.

- In compile time, device major numbers list is packed into the kernel and
  the LKM framework will refer it to assign device major number dynamically.
2002-09-06 13:18:43 +00:00
thorpej 16003abd0f Add standard names for 5-, 6-, 7-, and 8-way XOR. 2002-08-04 02:17:06 +00:00
thorpej 4c1506f740 *Actually return* EINVAL when the output stream UIO's I/O is larger
than SSIZE_MAX.
2002-08-04 01:52:00 +00:00
thorpej 32ff91814a Add "xor2", "xor3", and "xor4" function names, which perform an
XOR on 2, 3, and 4 input streams, respectively.
2002-08-02 06:45:40 +00:00
thorpej add44d0f41 Fix a signed/unsigned botch that broke an error recovery path.
(I could have sworn I fixed this bug over a week ago...)
2002-08-02 06:35:59 +00:00
thorpej ff8c9fb45c Grr, fix typo in RCS ID tag. 2002-08-02 00:31:35 +00:00
thorpej 5d06c0e812 dmover(9) -- an interface to hardware-assisted data movers. This allows
clients to use a hardware-assisted data mover to clear a region of memory,
fill a region of memory with a specific value, copy a region of memory,
and perform simple boolean operations such as XOR on multiple regions
of memory.

Included here is a software back-end which can serve as an example of
how to write a back-end (and also provides a fall-back in case hardware
for a given function is not available), as well as a dmoverio(4) pseudo-
device which provides access to dmover(9) to userland via a message
passing interface.

dmover(9) is still a work-in-progress -- a few minor changes to the
interface are expected.
2002-08-02 00:30:37 +00:00