History log of /src/sys/dev/podulebus/hcsc.c |
Revision | | Date | Author | Comments |
1.23 |
| 19-May-2025 |
andvar | spelling and grammar fixes in comments.
|
1.22 |
| 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.21 |
| 27-Oct-2012 |
chs | branches: 1.21.36; 1.21.38; split device_t/softc for all remaining drivers. replace "struct device *" with "device_t". use device_xname(), device_unit(), etc.
|
1.20 |
| 18-Oct-2009 |
snj | branches: 1.20.12; 1.20.22; Move Matthias Pfaller's files to 2-clause license. OK matthias@.
|
1.19 |
| 28-Apr-2008 |
martin | Remove clause 3 and 4 from TNF licenses
|
1.18 |
| 04-Apr-2008 |
tsutsui | branches: 1.18.2; 1.18.4; Split devict_t/softc for ncr5380sbc SCSI, and misc cosmetic changes.
|
1.17 |
| 29-Mar-2006 |
thorpej | branches: 1.17.58; Use device_private().
|
1.16 |
| 24-Dec-2005 |
perry | branches: 1.16.4; 1.16.6; 1.16.8; 1.16.10; 1.16.12; Remove leading __ from __(const|inline|signed|volatile) -- it is obsolete.
|
1.15 |
| 11-Dec-2005 |
christos | merge ktrace-lwp.
|
1.14 |
| 27-Feb-2005 |
perry | branches: 1.14.4; nuke trailing whitespace
|
1.13 |
| 22-Apr-2004 |
itojun | branches: 1.13.4; 1.13.6; sprintf -> snprintf
|
1.12 |
| 02-Oct-2002 |
thorpej | branches: 1.12.6; Add trailing ; to CFATTACH_DECL.
|
1.11 |
| 30-Sep-2002 |
thorpej | Use CFATTACH_DECL().
|
1.10 |
| 27-Sep-2002 |
thorpej | Declare all cfattach structures const.
|
1.9 |
| 24-Mar-2002 |
bjh21 | Avoid "unused variable" warnings in the NCR5380_USE_BUS_SPACE case.
|
1.8 |
| 13-Nov-2001 |
lukem | branches: 1.8.2; cleanup RCSID (to be consistent with use in rest of kernel)
|
1.7 |
| 04-Jul-2001 |
bjh21 | branches: 1.7.2; Add support for Oak and HCCS SCSI cards fitted with PowerROMs. Since this depends on podloader support, it won't work on arm32 yet.
|
1.6 |
| 12-Jun-2001 |
bjh21 | Mention where I got the information for writing the driver.
|
1.5 |
| 02-Jun-2001 |
bjh21 | Create hcscreg.h, and put a couple of magic numbers in there.
|
1.4 |
| 02-Jun-2001 |
bjh21 | Clean up hcsc_match: Don't check the manufacturer ID, since podule IDs are unique anyway. Do check whether the description starts with "SCSI", since HCCS used the same ID for their IDE podule.
|
1.3 |
| 02-Jun-2001 |
bjh21 | Enable disconnect/reselect (now that it works) and parity checking.
|
1.2 |
| 28-May-2001 |
bjh21 | Use the pseudo-DMA facilities of the HCCS SCSI podule. Code largely derived from the pc532 "ncr" driver.
This gets me up to 300 KB/s from /dev/rsd0a on my A310. I think bus_space_{read,write}_multi_1 and copy{in,out} are the bottlenecks now.
|
1.1 |
| 26-May-2001 |
bjh21 | Quick hack of a driver for the HCCS 8-bit SCSI podule, based on the Oak driver. Tested to the extent that it finds my disc.
|
1.7.2.3 |
| 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.7.2.2 |
| 23-Jun-2002 |
jdolecek | catch up with -current on kqueue branch
|
1.7.2.1 |
| 10-Jan-2002 |
thorpej | Sync kqueue branch with -current.
|
1.8.2.3 |
| 18-Oct-2002 |
nathanw | Catch up to -current.
|
1.8.2.2 |
| 01-Apr-2002 |
nathanw | Catch up to -current. (CVS: It's not just a program. It's an adventure!)
|
1.8.2.1 |
| 13-Nov-2001 |
nathanw | file hcsc.c was added on branch nathanw_sa on 2002-04-01 07:46:59 +0000
|
1.12.6.4 |
| 04-Mar-2005 |
skrll | Sync with HEAD.
Hi Perry!
|
1.12.6.3 |
| 21-Sep-2004 |
skrll | Fix the sync with head I botched.
|
1.12.6.2 |
| 18-Sep-2004 |
skrll | Sync with HEAD.
|
1.12.6.1 |
| 03-Aug-2004 |
skrll | Sync with HEAD
|
1.13.6.1 |
| 19-Mar-2005 |
yamt | sync with head. xen and whitespace. xen part is not finished.
|
1.13.4.1 |
| 29-Apr-2005 |
kent | sync with -current
|
1.14.4.1 |
| 21-Jun-2006 |
yamt | sync with head.
|
1.16.12.1 |
| 31-Mar-2006 |
tron | Merge 2006-03-31 NetBSD-current into the "peter-altq" branch.
|
1.16.10.1 |
| 19-Apr-2006 |
elad | sync with head.
|
1.16.8.1 |
| 01-Apr-2006 |
yamt | sync with head.
|
1.16.6.1 |
| 22-Apr-2006 |
simonb | Sync with head.
|
1.16.4.1 |
| 09-Sep-2006 |
rpaulo | sync with head
|
1.17.58.1 |
| 02-Jun-2008 |
mjf | Sync with HEAD.
|
1.18.4.2 |
| 11-Mar-2010 |
yamt | sync with head
|
1.18.4.1 |
| 16-May-2008 |
yamt | sync with head.
|
1.18.2.1 |
| 18-May-2008 |
yamt | sync with head.
|
1.20.22.1 |
| 20-Nov-2012 |
tls | Resync to 2012-11-19 00:00:00 UTC
|
1.20.12.1 |
| 30-Oct-2012 |
yamt | sync with head
|
1.21.38.1 |
| 10-Jun-2019 |
christos | Sync with HEAD
|
1.21.36.1 |
| 06-Sep-2018 |
pgoyette | Sync with HEAD
Resolve a couple of conflicts (result of the uimin/uimax changes)
|