History log of /src/sys/dev/i2o/dpti.c |
Revision | | Date | Author | Comments |
1.51 |
| 07-Sep-2023 |
ad | Make the I2O management cdevs MPSAFE.
|
1.50 |
| 03-Sep-2018 |
riastradh | Rename min/max -> uimin/uimax for better honesty.
These functions are defined on unsigned int. The generic name min/max should not silently truncate to 32 bits on 64-bit systems. This is purely a name change -- no functional change intended.
HOWEVER! Some subsystems have
#define min(a, b) ((a) < (b) ? (a) : (b)) #define max(a, b) ((a) > (b) ? (a) : (b))
even though our standard name for that is MIN/MAX. Although these may invite multiple evaluation bugs, these do _not_ cause integer truncation.
To avoid `fixing' these cases, I first changed the name in libkern, and then compile-tested every file where min/max occurred in order to confirm that it failed -- and thus confirm that nothing shadowed min/max -- before changing it.
I have left a handful of bootloaders that are too annoying to compile-test, and some dead code:
cobalt ews4800mips hp300 hppa ia64 luna68k vax acorn32/if_ie.c (not included in any kernels) macppc/if_gm.c (superseded by gem(4))
It should be easy to fix the fallout once identified -- this way of doing things fails safe, and the goal here, after all, is to _avoid_ silent integer truncations, not introduce them.
Maybe one day we can reintroduce min/max as type-generic things that never silently truncate. But we should avoid doing that for a while, so that existing code has a chance to be detected by the compiler for conversion to uimin/uimax without changing the semantics until we can properly audit it all. (Who knows, maybe in some cases integer truncation is actually intended!)
|
1.49 |
| 28-Oct-2017 |
riastradh | branches: 1.49.2; 1.49.4; Kill some more extern struct cfdriver declarations.
Down with externs in .c!
|
1.48 |
| 25-Jul-2014 |
dholland | Add d_discard to all struct cdevsw instances I could find.
All have been set to "nodiscard"; some should get a real implementation.
|
1.47 |
| 20-Mar-2014 |
christos | branches: 1.47.2; make this compile again. XXX: 32 bit pointer issues.
|
1.46 |
| 16-Mar-2014 |
dholland | Change (mostly mechanically) every cdevsw/bdevsw I can find to use designated initializers.
I have not built every extant kernel so I have probably broken at least one build; however I've also found and fixed some wrong cdevsw/bdevsw entries so even if so I think we come out ahead.
|
1.45 |
| 27-Oct-2012 |
chs | branches: 1.45.2; split device_t/softc for all remaining drivers. replace "struct device *" with "device_t". use device_xname(), device_unit(), etc.
|
1.44 |
| 07-Aug-2011 |
rmind | branches: 1.44.2; 1.44.12; Replace some wakeup_one(9) uses with mutex(9) or plain wakeup(9).
|
1.43 |
| 13-Nov-2010 |
uebayasi | Don't pull in the whole uvm(9) API to access only PAGE_SIZE and some other constants. These are provided by sys/param.h now.
|
1.42 |
| 12-May-2009 |
cegger | branches: 1.42.4; struct device * -> device_t, no functional changes intended.
|
1.41 |
| 12-May-2009 |
cegger | struct cfdata * -> cfdata_t, no functional changes intended.
|
1.40 |
| 08-Sep-2008 |
gmcgarry | branches: 1.40.8; Replace most gcc-specific __attribute__ uses with BSD-style sys/cdef.h preprocessor macros.
|
1.39 |
| 08-Jun-2008 |
tsutsui | branches: 1.39.4; Replace device_lookup() with device_lookup_private() on getting softc for future device_t/softc spilt.
|
1.38 |
| 11-May-2008 |
ad | Include machine/cputypes.h explicitly.
|
1.37 |
| 28-Apr-2008 |
martin | branches: 1.37.2; Remove clause 3 and 4 from TNF licenses
|
1.36 |
| 06-Apr-2008 |
cegger | branches: 1.36.2; 1.36.4; use aprint_*_dev and device_xname
|
1.35 |
| 19-Oct-2007 |
ad | branches: 1.35.16; machine/{bus,cpu,intr}.h -> sys/{bus,cpu,intr}.h
|
1.34 |
| 16-Jun-2007 |
ad | branches: 1.34.6; 1.34.8; 1.34.12; - Merge changes from the vmlocking branch. - Eliminate opt_i2o.h, since I2OVERBOSE is gone.
|
1.33 |
| 04-Mar-2007 |
christos | branches: 1.33.2; 1.33.4; Kill caddr_t; there will be some MI fallout, but it will be fixed shortly.
|
1.32 |
| 15-Feb-2007 |
ad | branches: 1.32.2; Replace some uses of lockmgr() / simplelocks.
|
1.31 |
| 02-Dec-2006 |
elad | Change kauth(9) KPI for kauth_authorize_device_passthru() to add another argument, u_long, serving as a bit-mask of generic requests for the passthru request.
Discussed on tech-security@ and tech-kern@. Okay tls@.
|
1.30 |
| 16-Nov-2006 |
christos | branches: 1.30.2; __unused removal on arguments; approved by core.
|
1.29 |
| 08-Nov-2006 |
elad | Replace securelevel checks with kauth(9) calls.
|
1.28 |
| 12-Oct-2006 |
christos | - sprinkle __unused on function decls. - fix a couple of unused bugs - no more -Wno-unused for i386
|
1.27 |
| 04-Oct-2006 |
christos | fix empty if
|
1.26 |
| 30-Aug-2006 |
christos | branches: 1.26.2; 1.26.4; fix incomplete initializers.
|
1.25 |
| 23-Aug-2006 |
christos | Acting as Elad's keyboard:
Place the securelevel checks in their logical locations. This will be clearer in the future when code changes to use kauth(9) calls.
input and okay ad@
|
1.24 |
| 29-Mar-2006 |
thorpej | Use device_private().
|
1.23 |
| 28-Mar-2006 |
thorpej | Use device_unit().
|
1.22 |
| 25-Mar-2006 |
thorpej | Use device_parent().
|
1.21 |
| 11-Dec-2005 |
christos | branches: 1.21.4; 1.21.6; 1.21.8; 1.21.10; 1.21.12; merge ktrace-lwp.
|
1.20 |
| 24-Nov-2005 |
fredb | Initialize "mapped" before any of the "goto"'s, so we're not testing an uninitialized variable at "bad:".
|
1.19 |
| 27-Feb-2005 |
perry | branches: 1.19.4; 1.19.10; nuke trailing whitespace
|
1.18 |
| 22-Apr-2004 |
itojun | branches: 1.18.4; 1.18.6; sprintf -> snprintf
|
1.17 |
| 09-Dec-2003 |
ad | Grab the configuration lock when handling I2ORESCANCMD.
|
1.16 |
| 30-Oct-2003 |
simonb | Remove some assigned-to but otherwise unused variables.
|
1.15 |
| 29-Oct-2003 |
mycroft | Reorder, eliminating a bogus initializer.
|
1.14 |
| 25-Oct-2003 |
christos | Fix uninitialized variable warnings
|
1.13 |
| 29-Jun-2003 |
fvdl | branches: 1.13.2; Back out the lwp/ktrace changes. They contained a lot of colateral damage, and need to be examined and discussed more.
|
1.12 |
| 28-Jun-2003 |
darrenr | Pass lwp pointers throughtout the kernel, as required, so that the lwpid can be inserted into ktrace records. The general change has been to replace "struct proc *" with "struct lwp *" in various function prototypes, pass the lwp through and use l_proc to get the process pointer when needed.
Bump the kernel rev up to 1.6V
|
1.11 |
| 14-Feb-2003 |
thorpej | __'ify MACHINE_ARCH names.
|
1.10 |
| 06-Dec-2002 |
ad | - Handle DPT ioctls from native NetBSD binaries. - SCSI targets could disapper mid-way through autoconfig if the board notifed us of a changed LCT at the wrong time. Fix that.
|
1.9 |
| 23-Oct-2002 |
jdolecek | merge kqueue branch into -current
kqueue provides a stateful and efficient event notification framework currently supported events include socket, file, directory, fifo, pipe, tty and device changes, and monitoring of processes and signals
kqueue is supported by all writable filesystems in NetBSD tree (with exception of Coda) and all device drivers supporting poll(2)
based on work done by Jonathan Lemon for FreeBSD initial NetBSD port done by Luke Mewburn and Jason Thorpe
|
1.8 |
| 02-Oct-2002 |
thorpej | Add trailing ; to CFATTACH_DECL.
|
1.7 |
| 30-Sep-2002 |
thorpej | Use CFATTACH_DECL().
|
1.6 |
| 27-Sep-2002 |
thorpej | Declare all cfattach structures const.
|
1.5 |
| 06-Sep-2002 |
gehenna | 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.
|
1.4 |
| 31-May-2002 |
thorpej | Use __mips__ instead of mips.
|
1.3 |
| 13-Nov-2001 |
lukem | branches: 1.3.2; 1.3.4; 1.3.12; 1.3.14; add RCSID
|
1.2 |
| 27-Sep-2001 |
ad | branches: 1.2.2; Make firmware updates work with dpti.
|
1.1 |
| 21-Sep-2001 |
ad | branches: 1.1.2; Add `dpti', which is an I2O vendor extension implementing the DPT/Adaptec control interface. This makes it possible to run the Linux versions of dptmgr, raidutil, dptelog and other tools under NetBSD.
|
1.1.2.9 |
| 11-Dec-2002 |
thorpej | Sync with HEAD.
|
1.1.2.8 |
| 11-Nov-2002 |
nathanw | Catch up to -current
|
1.1.2.7 |
| 18-Oct-2002 |
nathanw | Catch up to -current.
|
1.1.2.6 |
| 17-Sep-2002 |
nathanw | Catch up to -current.
|
1.1.2.5 |
| 20-Jun-2002 |
nathanw | Catch up to -current.
|
1.1.2.4 |
| 14-Nov-2001 |
nathanw | Catch up to -current.
|
1.1.2.3 |
| 08-Oct-2001 |
nathanw | Catch up to -current.
|
1.1.2.2 |
| 26-Sep-2001 |
nathanw | Catch up to -current. Again.
|
1.1.2.1 |
| 21-Sep-2001 |
nathanw | file dpti.c was added on branch nathanw_sa on 2001-09-26 19:54:50 +0000
|
1.2.2.2 |
| 01-Oct-2001 |
fvdl | Catch up with -current.
|
1.2.2.1 |
| 27-Sep-2001 |
fvdl | file dpti.c was added on branch thorpej-devvp on 2001-10-01 12:45:23 +0000
|
1.3.14.1 |
| 12-Dec-2002 |
he | Pull up revision 1.10 (requested by ad in ticket #1030): Add support for Adaptec 2005S. Handle DPT ioctls() from native binaries. Fix SCSI probe problem.
|
1.3.12.2 |
| 20-Jun-2002 |
gehenna | catch up with -current.
|
1.3.12.1 |
| 16-May-2002 |
gehenna | Add the character device switch.
|
1.3.4.4 |
| 10-Oct-2002 |
jdolecek | sync kqueue with -current; this includes merge of gehenna-devsw branch, merge of i386 MP branch, and part of autoconf rototil work
|
1.3.4.3 |
| 23-Jun-2002 |
jdolecek | catch up with -current on kqueue branch
|
1.3.4.2 |
| 10-Jan-2002 |
thorpej | Sync kqueue branch with -current.
|
1.3.4.1 |
| 13-Nov-2001 |
thorpej | file dpti.c was added on branch kqueue on 2002-01-10 19:53:59 +0000
|
1.3.2.2 |
| 09-Dec-2001 |
he | Pull up revisions 1.1-1.3 (new, via patch, requested by ad): Add driver for DPT/Adaptec I2O RAID management interface.
|
1.3.2.1 |
| 13-Nov-2001 |
he | file dpti.c was added on branch netbsd-1-5 on 2001-12-09 19:12:13 +0000
|
1.13.2.6 |
| 11-Dec-2005 |
christos | Sync with head.
|
1.13.2.5 |
| 04-Mar-2005 |
skrll | Sync with HEAD.
Hi Perry!
|
1.13.2.4 |
| 21-Sep-2004 |
skrll | Fix the sync with head I botched.
|
1.13.2.3 |
| 18-Sep-2004 |
skrll | Sync with HEAD.
|
1.13.2.2 |
| 03-Aug-2004 |
skrll | Sync with HEAD
|
1.13.2.1 |
| 02-Jul-2003 |
darrenr | Apply the aborted ktrace-lwp changes to a specific branch. This is just for others to review, I'm concerned that patch fuziness may have resulted in some errant code being generated but I'll look at that later by comparing the diff from the base to the branch with the file I attempt to apply to it. This will, at the very least, put the changes in a better context for others to review them and attempt to tinker with removing passing of 'struct lwp' through the kernel.
|
1.18.6.1 |
| 19-Mar-2005 |
yamt | sync with head. xen and whitespace. xen part is not finished.
|
1.18.4.1 |
| 29-Apr-2005 |
kent | sync with -current
|
1.19.10.1 |
| 29-Nov-2005 |
yamt | sync with head.
|
1.19.4.5 |
| 27-Oct-2007 |
yamt | sync with head.
|
1.19.4.4 |
| 03-Sep-2007 |
yamt | sync with head.
|
1.19.4.3 |
| 26-Feb-2007 |
yamt | sync with head.
|
1.19.4.2 |
| 30-Dec-2006 |
yamt | sync with head.
|
1.19.4.1 |
| 21-Jun-2006 |
yamt | sync with head.
|
1.21.12.2 |
| 31-Mar-2006 |
tron | Merge 2006-03-31 NetBSD-current into the "peter-altq" branch.
|
1.21.12.1 |
| 28-Mar-2006 |
tron | Merge 2006-03-28 NetBSD-current into the "peter-altq" branch.
|
1.21.10.1 |
| 19-Apr-2006 |
elad | sync with head.
|
1.21.8.2 |
| 03-Sep-2006 |
yamt | sync with head.
|
1.21.8.1 |
| 01-Apr-2006 |
yamt | sync with head.
|
1.21.6.1 |
| 22-Apr-2006 |
simonb | Sync with head.
|
1.21.4.1 |
| 09-Sep-2006 |
rpaulo | sync with head
|
1.26.4.2 |
| 10-Dec-2006 |
yamt | sync with head.
|
1.26.4.1 |
| 22-Oct-2006 |
yamt | sync with head
|
1.26.2.2 |
| 12-Jan-2007 |
ad | Sync with head.
|
1.26.2.1 |
| 18-Nov-2006 |
ad | Sync with head.
|
1.30.2.1 |
| 04-Dec-2006 |
tron | Pull up following revision(s) (requested by elad in ticket #247): sys/dev/ic/dpt.c: revision 1.55 sys/dev/pci/amr.c: revision 1.43 sys/secmodel/bsd44/secmodel_bsd44_securelevel.c: revision 1.19 sys/dev/pci/mly.c: revision 1.33 share/man/man9/kauth.9: revision 1.37 sys/dev/ic/mlx.c: revision 1.49 sys/dev/ic/icp_ioctl.c: revision 1.14 sys/dev/i2o/iop.c: revision 1.62 sys/dev/pci/twe.c: revision 1.82 sys/sys/kauth.h: revision 1.25 sys/dev/i2o/dpti.c: revision 1.31 sys/kern/kern_auth.c: revision 1.33 sys/dev/tc/stic.c: revision 1.37 Change kauth(9) KPI for kauth_authorize_device_passthru() to add another argument, u_long, serving as a bit-mask of generic requests for the passthru request. Discussed on tech-security@ and tech-kern@. Okay tls@.
|
1.32.2.1 |
| 12-Mar-2007 |
rmind | Sync with HEAD.
|
1.33.4.1 |
| 11-Jul-2007 |
mjf | Sync with head.
|
1.33.2.2 |
| 23-Oct-2007 |
ad | Sync with head.
|
1.33.2.1 |
| 15-Jul-2007 |
ad | Sync with head.
|
1.34.12.1 |
| 25-Oct-2007 |
bouyer | Sync with HEAD.
|
1.34.8.1 |
| 06-Nov-2007 |
matt | sync with HEAD
|
1.34.6.1 |
| 26-Oct-2007 |
joerg | Sync with HEAD.
Follow the merge of pmap.c on i386 and amd64 and move pmap_init_tmp_pgtbl into arch/x86/x86/pmap.c. Modify the ACPI wakeup code to restore CR4 before jumping back into kernel space as the large page option might cover that.
|
1.35.16.4 |
| 28-Sep-2008 |
mjf | Sync with HEAD.
|
1.35.16.3 |
| 29-Jun-2008 |
mjf | Sync with HEAD.
|
1.35.16.2 |
| 02-Jun-2008 |
mjf | Sync with HEAD.
|
1.35.16.1 |
| 05-Apr-2008 |
mjf | - add "file-system DEVFS" and "pseudo-device devfsctl" to conf/std seeing as these are always needed.
- convert many, many drivers over to the New Devfs World Order. For a list of device drivers yet to be converted see, http://www.netbsd.org/~mjf/devfs-todo.html.
- add a new device_unregister_all(device_t) function to remove all device names associated with a device_t, which saves us having to construct device names when the driver is detached.
- add a DEV_AUDIO type for devices.
|
1.36.4.3 |
| 16-May-2009 |
yamt | sync with head
|
1.36.4.2 |
| 04-May-2009 |
yamt | sync with head.
|
1.36.4.1 |
| 16-May-2008 |
yamt | sync with head.
|
1.36.2.2 |
| 17-Jun-2008 |
yamt | sync with head.
|
1.36.2.1 |
| 18-May-2008 |
yamt | sync with head.
|
1.37.2.2 |
| 24-Sep-2008 |
wrstuden | Merge in changes between wrstuden-revivesa-base-2 and wrstuden-revivesa-base-3.
|
1.37.2.1 |
| 23-Jun-2008 |
wrstuden | Sync w/ -current. 34 merge conflicts to follow.
|
1.39.4.1 |
| 19-Oct-2008 |
haad | Sync with HEAD.
|
1.40.8.1 |
| 13-May-2009 |
jym | Sync with HEAD.
Commit is split, to avoid a "too many arguments" protocol error.
|
1.42.4.1 |
| 05-Mar-2011 |
rmind | sync with head
|
1.44.12.3 |
| 03-Dec-2017 |
jdolecek | update from HEAD
|
1.44.12.2 |
| 20-Aug-2014 |
tls | Rebase to HEAD as of a few days ago.
|
1.44.12.1 |
| 20-Nov-2012 |
tls | Resync to 2012-11-19 00:00:00 UTC
|
1.44.2.2 |
| 22-May-2014 |
yamt | sync with head.
for a reference, the tree before this commit was tagged as yamt-pagecache-tag8.
this commit was splitted into small chunks to avoid a limitation of cvs. ("Protocol error: too many arguments")
|
1.44.2.1 |
| 30-Oct-2012 |
yamt | sync with head
|
1.45.2.1 |
| 18-May-2014 |
rmind | sync with head
|
1.47.2.1 |
| 10-Aug-2014 |
tls | Rebase.
|
1.49.4.1 |
| 10-Jun-2019 |
christos | Sync with HEAD
|
1.49.2.1 |
| 06-Sep-2018 |
pgoyette | Sync with HEAD
Resolve a couple of conflicts (result of the uimin/uimax changes)
|