History log of /freebsd-current/sys/dev/proto/proto_core.c
Revision Date Author Comments
# fdafd315 24-Nov-2023 Warner Losh <imp@FreeBSD.org>

sys: Automated cleanup of cdefs and other formatting

Apply the following automated changes to try to eliminate
no-longer-needed sys/cdefs.h includes as well as now-empty
blank lines in a row.

Remove /^#if.*\n#endif.*\n#include\s+<sys/cdefs.h>.*\n/
Remove /\n+#include\s+<sys/cdefs.h>.*\n+#if.*\n#endif.*\n+/
Remove /\n+#if.*\n#endif.*\n+/
Remove /^#if.*\n#endif.*\n/
Remove /\n+#include\s+<sys/cdefs.h>\n#include\s+<sys/types.h>/
Remove /\n+#include\s+<sys/cdefs.h>\n#include\s+<sys/param.h>/
Remove /\n+#include\s+<sys/cdefs.h>\n#include\s+<sys/capsicum.h>/

Sponsored by: Netflix


# 685dc743 16-Aug-2023 Warner Losh <imp@FreeBSD.org>

sys: Remove $FreeBSD$: one-line .c pattern

Remove /^[\s*]*__FBSDID\("\$FreeBSD\$"\);?\s*\n/


# 68781fb3 09-May-2022 John Baldwin <jhb@FreeBSD.org>

proto: Remove unused devclass arguments to DRIVER_MODULE.


# 58aa35d4 03-Feb-2020 Warner Losh <imp@FreeBSD.org>

Remove sparc64 kernel support

Remove all sparc64 specific files
Remove all sparc64 ifdefs
Removee indireeect sparc64 ifdefs


# 9f011bca 03-Jul-2019 Marcel Moolenaar <marcel@FreeBSD.org>

Lock busdma operations and serialize detach against open/close

Use sx to allow M_WAITOK allocations (suggested by markj).

admbugs: 782
Reviewed by: markj


# dc9874ea 22-Nov-2018 Ed Maste <emaste@FreeBSD.org>

proto: change device permissions to 0600

C Turt reports that the driver is not thread safe and may have
exploitable races.

Note that the proto device is intended for prototyping and development,
and is not for use on production systems. From the man page:

SECURITY CONSIDERATIONS
Because programs have direct access to the hardware, the proto
driver is inherently insecure. It is not advisable to use this
driver on a production machine.

The proto device is not included in any of FreeBSD's kernel config files
(although the module is built).

The issues in the proto device still need to be fixed, and the device is
inherently (and intentionally) insecure, but it might as well be limited
to root only.

admbugs: 782
Reported by: C Turt <ecturt@gmail.com>
MFC after: 3 days
Sponsored by: The FreeBSD Foundation


# be00e098 19-Jul-2015 Marcel Moolenaar <marcel@FreeBSD.org>

Check the hw.proto.attach environment variable for devices that
proto(4) should attach to instead of the normal driver.

Document the variable.


# 89abdea8 02-Jul-2015 Marcel Moolenaar <marcel@FreeBSD.org>

Add create, destroy and load of memory descriptors.


# 3a232946 02-Jul-2015 Marcel Moolenaar <marcel@FreeBSD.org>

Add an ISA/ACPI bus attachment to proto(4).


# cff0f135 08-Jun-2015 Marcel Moolenaar <marcel@FreeBSD.org>

Implement mmap(2) for the busdma resource.


# 5dcca8e8 07-Jun-2015 Marcel Moolenaar <marcel@FreeBSD.org>

Add DMA memory allocation and freeing.
Slightly rework the tag handling.


# 4f027abd 06-Jun-2015 Marcel Moolenaar <marcel@FreeBSD.org>

DMA support part 1: DMA tag create & destroy

Create a special resource (= device special file) for management
of tags and maps, as well as for mapping memory into the address
space. DMA resources are managed using the PROTO_IOC_BUSDMA ioctl.
Part 1 implements tag creation, derivation and destruction.


# 67fb10f3 28-Apr-2014 Marcel Moolenaar <marcel@FreeBSD.org>

Add proto(4): A driver for prototyping and diagnostics.
It exposes I/O resources to user space, so that programs can peek
and poke at the hardware. It does not itself have knowledge about
the hardware device it attaches to.

Sponsored by: Juniper Networks, Inc.