#
857fcb57 |
| 14-Oct-2023 |
Matthew Dillon <dillon@apollo.backplane.com> |
kernel - Disable various dev accesses for RESTRICTEDROOT environments
* Do not allow CAM (e.g. /dev/sg0 and so forth) to be accessed if RESTRICTEDROOT is active. Note that RESTRICTEDROOT is autom
kernel - Disable various dev accesses for RESTRICTEDROOT environments
* Do not allow CAM (e.g. /dev/sg0 and so forth) to be accessed if RESTRICTEDROOT is active. Note that RESTRICTEDROOT is automatically set for jails.
* Restrict writes to /dev/random and /dev/urandom
* Also restrict evdev, kbd, syscons, pci, console, devctl
show more ...
|
Revision tags: v6.4.0, v6.4.0rc1, v6.5.0, v6.2.2, v6.2.1, v6.2.0, v6.3.0, v6.0.1, v6.0.0, v6.0.0rc1, v6.1.0, v5.8.3, v5.8.2, v5.8.1, v5.8.0, v5.9.0, v5.8.0rc1, v5.6.3, v5.6.2, v5.6.1, v5.6.0, v5.6.0rc1, v5.7.0, v5.4.3, v5.4.2 |
|
#
cec957e9 |
| 04-Mar-2019 |
Matthew Dillon <dillon@apollo.backplane.com> |
kernel - Change callout in struct ccb_hdr
* Change the callout declaration in struct ccb_hdr from an embedded structure to a pointer, add padding to get the whole structure to its original size
kernel - Change callout in struct ccb_hdr
* Change the callout declaration in struct ccb_hdr from an embedded structure to a pointer, add padding to get the whole structure to its original size (prior to the recent callout patch).
* This removes an improper ABI dependency on the kernel struct callout structure which was causing 'camcontrol', and 'smartctl' (from smartmontools) to fail.
Testing: dillon, tuxillo
show more ...
|
#
fcf6efef |
| 02-Mar-2019 |
Sascha Wildner <saw@online.de> |
kernel: Remove numerous #include <sys/thread2.h>.
Most of them were added when we converted spl*() calls to crit_enter()/crit_exit(), almost 14 years ago. We can now remove a good chunk of them agai
kernel: Remove numerous #include <sys/thread2.h>.
Most of them were added when we converted spl*() calls to crit_enter()/crit_exit(), almost 14 years ago. We can now remove a good chunk of them again for where crit_*() are no longer used.
I had to adjust some files that were relying on thread2.h or headers that it includes coming in via other headers that it was removed from.
show more ...
|
Revision tags: v5.4.1, v5.4.0, v5.5.0, v5.4.0rc1, v5.2.2, v5.2.1, v5.2.0, v5.3.0, v5.2.0rc |
|
#
a9f09b75 |
| 04-Feb-2018 |
Matthew Dillon <dillon@apollo.backplane.com> |
kernel - Fix CAM peripheral error handling
* cam_periph.c was bcopy()ing the *ENTIRE* saved ccb back to the original when working through certain error results. This completely destroys linked
kernel - Fix CAM peripheral error handling
* cam_periph.c was bcopy()ing the *ENTIRE* saved ccb back to the original when working through certain error results. This completely destroys linked list entry fields.
* Refactor by hacking a restore_ccb() function which does not copy over the link list entry fields or the callout structure.
* Fixes panics with CDs, particularly audio CDs, and can also fix other panics.
Panics are related to situations where an AHCI error or errors occur while multiple CCBs are queued.
* Also always initialize the state tracking field for various scsi periphals to ensure that stale data does not result in improper processing in scsi/*.c's *done() functions.
Reported-by: htse
show more ...
|
Revision tags: v5.0.2, v5.0.1, v5.0.0, v5.0.0rc2, v5.1.0, v5.0.0rc1, v4.8.1, v4.8.0, v4.6.2, v4.9.0, v4.8.0rc |
|
#
0c4341b9 |
| 09-Jan-2017 |
Matthew Dillon <dillon@apollo.backplane.com> |
buf - Remove B_ORDERED, Incidental CAM MPSAFE
* Remove support for B_ORDERED. Most drivers ignore it, and it is basically unusable.
* The CAM "xpt", "pass", and "sg" devices are MPSAFE, flag the
buf - Remove B_ORDERED, Incidental CAM MPSAFE
* Remove support for B_ORDERED. Most drivers ignore it, and it is basically unusable.
* The CAM "xpt", "pass", and "sg" devices are MPSAFE, flag them appropriately.
show more ...
|
Revision tags: v4.6.1 |
|
#
d1ee0e77 |
| 04-Sep-2016 |
zrj <rimvydas.jasinskas@gmail.com> |
kernel/scsi: Do not announce pass/sg in bootverbose.
At least on one machine it causes reprobe of da0 that ends up with strange geometry, stuck boot and other weirdness. TBI.
For now disable these,
kernel/scsi: Do not announce pass/sg in bootverbose.
At least on one machine it causes reprobe of da0 that ends up with strange geometry, stuck boot and other weirdness. TBI.
For now disable these, cause acpica update is comming.
show more ...
|
Revision tags: v4.6.0, v4.6.0rc2, v4.6.0rc, v4.7.0, v4.4.3, v4.4.2, v4.4.1, v4.4.0, v4.5.0, v4.4.0rc, v4.2.4, v4.3.1, v4.2.3, v4.2.1, v4.2.0, v4.0.6, v4.3.0, v4.2.0rc, v4.0.5, v4.0.4, v4.0.3 |
|
#
fdafe89c |
| 11-Jan-2015 |
Sascha Wildner <saw@online.de> |
kernel/cam: Remove unneeded dev_ops assignments.
compile_dev_ops() takes care of assigning no*() to uninitialized ops.
|
Revision tags: v4.0.2, v4.0.1, v4.0.0, v4.0.0rc3, v4.0.0rc2, v4.0.0rc, v4.1.0, v3.8.2, v3.8.1, v3.6.3, v3.8.0, v3.8.0rc2, v3.9.0, v3.8.0rc, v3.6.2, v3.6.1, v3.6.0, v3.7.1, v3.6.0rc, v3.7.0, v3.4.3, v3.4.2, v3.4.0, v3.4.1, v3.4.0rc, v3.5.0 |
|
#
21023f7a |
| 08-Jan-2013 |
Sascha Wildner <saw@online.de> |
kernel/bus: Remove some unused variables and put others in #ifdef...
|
Revision tags: v3.2.2, v3.2.1, v3.2.0, v3.3.0, v3.0.3, v3.0.2, v3.0.1, v3.1.0, v3.0.0 |
|
#
86d7f5d3 |
| 26-Nov-2011 |
John Marino <draco@marino.st> |
Initial import of binutils 2.22 on the new vendor branch
Future versions of binutils will also reside on this branch rather than continuing to create new binutils branches for each new version.
|
Revision tags: v2.12.0, v2.13.0, v2.10.1, v2.11.0, v2.10.0, v2.9.1, v2.8.2, v2.8.1, v2.8.0, v2.9.0, v2.6.3, v2.7.3, v2.6.2, v2.7.2, v2.7.1, v2.6.1, v2.7.0, v2.6.0, v2.5.1, v2.4.1, v2.5.0, v2.4.0 |
|
#
3e82b46c |
| 01-Aug-2009 |
Matthew Dillon <dillon@apollo.backplane.com> |
DEVFS - remove dev_ops_add(), dev_ops_get(), and get_dev()
|
#
cd29885a |
| 01-Aug-2009 |
Matthew Dillon <dillon@apollo.backplane.com> |
DEVFS - Bring in Alex's GSOC kernel adjustments.
This is a rollup commit bringing in Alex Hornung's GSOC adjustments to the main kernel codebase for DEVFS.
Submitted-by: Alex Hornung <ahornung@gmai
DEVFS - Bring in Alex's GSOC kernel adjustments.
This is a rollup commit bringing in Alex Hornung's GSOC adjustments to the main kernel codebase for DEVFS.
Submitted-by: Alex Hornung <ahornung@gmail.com>
show more ...
|
Revision tags: v2.3.2 |
|
#
87993e5a |
| 12-Jun-2009 |
Matthew Dillon <dillon@apollo.backplane.com> |
CAM - Silence console spew on bus-rescan
Silence the console spew that occurs when rescanning a SCSI bus. This is primarily so the AHCI driver can just have CAM re-test all the targets when new tar
CAM - Silence console spew on bus-rescan
Silence the console spew that occurs when rescanning a SCSI bus. This is primarily so the AHCI driver can just have CAM re-test all the targets when new targets are added or deleted.
show more ...
|
Revision tags: v2.3.1, v2.2.1, v2.2.0, v2.3.0, v2.1.1, v2.0.1 |
|
#
1c8b7a9a |
| 18-May-2008 |
Peter Avalos <pavalos@dragonflybsd.org> |
Sync CAM with FreeBSD using lockmgr locks instead of mutexes. Note: This is mostly a code sync with FreeBSD which improves stability in addition to the items listed below. This provides a framework
Sync CAM with FreeBSD using lockmgr locks instead of mutexes. Note: This is mostly a code sync with FreeBSD which improves stability in addition to the items listed below. This provides a framework for releasing the mplock, but for now it's still there.
Add an xpt_print function to reduce most of the xpt_print_path/printf pairs. Convert the core code to use it.
Initial cut at Basic Domain Validation.
Make cam_xpt's pronouncements match camcontrol (Tagged -> Command) Queueing.
Pay attention to return value from xpt_bus_register in xpt_init.
Add an xpt_rescan function and a thread that will field rescan requests. The purpose of this is to allow a SIM (or other entities) to request a bus rescan and have it then fielded in a different (process) context from the caller.
Check the return value from cam_periph_acquire.
Drop the periph/sim lock when calling disk_destroy().
Drop the topology lock before calling the periph oninvalidate and dtor vectors.
For the XPT_SASYNC_CB operation, only decouple the broadcast to the bus and device lists instead of decoupling the whole operation. This avoids problems with SIMs going away.
Split the camisr into per-SIM done queues. This optimizes the locking a little bit and allows for direct dispatch of the doneq from certain contexts that would otherwise face recursive locking problems.
Zero the CCBs when mallocing them.
Only schedule the xpt_finishconfig_task once.
Eliminate the use of M_TEMP.
Add a helper function for registering async callbacks.
Release the bus reference that is acquired when doing a CAMIOCOMMAND ioctl.
Zero scsi_readcapacity allocations so we can really tell if there has been data returned.
Remove duplicate includes and fix typos.
Add a bunch of definitions and structures to support newer drivers.
When probing a newly found device, don't automatically assume that the device supports retrieving a serial number. Instead, first query the list of VPD pages it does support, and only query the serial number if it's supported, else silently move on. This eliminates a lot of noise during verbose booting, and will likely eliminate the need for most NOSERIAL quirks.
Reduce diffs from FreeBSD.
Obtained-from: FreeBSD
show more ...
|
#
f98dbbc6 |
| 02-Dec-2007 |
Peter Avalos <pavalos@dragonflybsd.org> |
Spelling fix.
Obtained-from: FreeBSD
|
#
6b8f2c81 |
| 22-Nov-2007 |
Peter Avalos <pavalos@dragonflybsd.org> |
Fix typo in comment.
Obtained-from: FreeBSD
|
#
e9936c96 |
| 21-Nov-2007 |
Peter Avalos <pavalos@dragonflybsd.org> |
Check the void * argument in the AC_FOUND_DEV case against NULL.
Obtained-from: FreeBSD
|
#
b05e84c9 |
| 18-Nov-2007 |
Peter Avalos <pavalos@dragonflybsd.org> |
Rewrite of the CAM error recovery code.
Some of the major changes include:
- The SCSI error handling portion of cam_periph_error() has been broken out into a number of subfunctions to better
Rewrite of the CAM error recovery code.
Some of the major changes include:
- The SCSI error handling portion of cam_periph_error() has been broken out into a number of subfunctions to better modularize the code that handles the hierarchy of SCSI errors. As a result, the code is now much easier to read.
- String handling and error printing has been significantly revamped. We now use sbufs to do string formatting instead of using printfs (for the kernel) and snprintf/strncat (for userland) as before.
There is a new catchall error printing routine, cam_error_print() and its string-based counterpart, cam_error_string() that allow the kernel and userland applications to pass in a CCB and have errors printed out properly, whether or not they're SCSI errors. Among other things, this helped eliminate a fair amount of duplicate code in camcontrol.
We now print out more information than before, including the CAM status and SCSI status and the error recovery action taken to remedy the problem.
Obtained-from: FreeBSD
show more ...
|
#
2ad14cb5 |
| 17-Nov-2007 |
Peter Avalos <pavalos@dragonflybsd.org> |
Change the peripheral driver list from a linker set to module driven driver registration. This should allow things like da, sa, cd etc to be in seperate KLD's to the cam core and make them preloadab
Change the peripheral driver list from a linker set to module driven driver registration. This should allow things like da, sa, cd etc to be in seperate KLD's to the cam core and make them preloadable.
Obtained-from: FreeBSD
show more ...
|
#
b68dad28 |
| 12-Nov-2007 |
Peter Avalos <pavalos@dragonflybsd.org> |
Remove duplicate sys/proc.h.
|
#
1cece6de |
| 11-Nov-2007 |
Peter Avalos <pavalos@dragonflybsd.org> |
Don't include <sys/buf.h> twice.
|
#
85f8e2ea |
| 22-Dec-2006 |
Sascha Wildner <swildner@dragonflybsd.org> |
Rename printf -> kprintf in sys/ and add some defines where necessary (files which are used in userland, too).
|
#
b13267a5 |
| 10-Sep-2006 |
Matthew Dillon <dillon@dragonflybsd.org> |
Change the kernel dev_t, representing a pointer to a specinfo structure, to cdev_t. Change struct specinfo to struct cdev. The name 'cdev' was taken from FreeBSD. Remove the dev_t shim for the ker
Change the kernel dev_t, representing a pointer to a specinfo structure, to cdev_t. Change struct specinfo to struct cdev. The name 'cdev' was taken from FreeBSD. Remove the dev_t shim for the kernel.
This commit generally removes the overloading of 'dev_t' between userland and the kernel.
Also fix a bug in libkvm where a kernel dev_t (now cdev_t) was not being properly converted to a userland dev_t.
show more ...
|
#
efda3bd0 |
| 05-Sep-2006 |
Matthew Dillon <dillon@dragonflybsd.org> |
Rename malloc->kmalloc, free->kfree, and realloc->krealloc. Pass 1
|
#
fef8985e |
| 28-Jul-2006 |
Matthew Dillon <dillon@dragonflybsd.org> |
MASSIVE reorganization of the device operations vector. Change cdevsw to dev_ops. dev_ops is a syslink-compatible operations vector structure similar to the vop_ops structure used by vnodes.
Remov
MASSIVE reorganization of the device operations vector. Change cdevsw to dev_ops. dev_ops is a syslink-compatible operations vector structure similar to the vop_ops structure used by vnodes.
Remove a huge number of instances where a thread pointer is still being passed as an argument to various device ops and other related routines. The device OPEN and IOCTL calls now take a ucred instead of a thread pointer, and the CLOSE call no longer takes a thread pointer.
show more ...
|
#
54078292 |
| 24-Mar-2006 |
Matthew Dillon <dillon@dragonflybsd.org> |
Major BUF/BIO work commit. Make I/O BIO-centric and specify the disk or file location with a 64 bit offset instead of a 32 bit block number.
* All I/O is now BIO-centric instead of BUF-centric.
*
Major BUF/BIO work commit. Make I/O BIO-centric and specify the disk or file location with a 64 bit offset instead of a 32 bit block number.
* All I/O is now BIO-centric instead of BUF-centric.
* File/Disk addresses universally use a 64 bit bio_offset now. bio_blkno no longer exists.
* Stackable BIO's hold disk offset translations. Translations are no longer overloaded onto a single structure (BUF or BIO).
* bio_offset == NOOFFSET is now universally used to indicate that a translation has not been made. The old (blkno == lblkno) junk has all been removed.
* There is no longer a distinction between logical I/O and physical I/O.
* All driver BUFQs have been converted to BIOQs.
* BMAP, FREEBLKS, getblk, bread, breadn, bwrite, inmem, cluster_*, and findblk all now take and/or return 64 bit byte offsets instead of block numbers. Note that BMAP now returns a byte range for the before and after variables.
show more ...
|