History log of /src/sys/dev/tc/asc_tcds.c |
Revision | | Date | Author | Comments |
1.26 |
| 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.25 |
| 13-Nov-2010 |
uebayasi | branches: 1.25.58; 1.25.60; 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.24 |
| 28-Apr-2008 |
martin | branches: 1.24.22; Remove clause 3 and 4 from TNF licenses
|
1.23 |
| 13-Apr-2008 |
tsutsui | branches: 1.23.2; 1.23.4; Split device_t/softc for MI ncr53c9x and some related devices, with various cleanup.
|
1.22 |
| 20-Feb-2008 |
matt | branches: 1.22.6; Use the VAX_PHYS_TO_S0 macro from vax/tc_machdep.h
|
1.21 |
| 19-Feb-2008 |
matt | Fix TC on VAX. (missed committing these earlier)
|
1.20 |
| 19-Oct-2007 |
ad | machine/{bus,cpu,intr}.h -> sys/{bus,cpu,intr}.h
|
1.19 |
| 04-Mar-2007 |
yamt | branches: 1.19.2; 1.19.14; 1.19.16; 1.19.20; fix fallout from caddr_t changes.
XXX what "volatile caddr_t" in if_le_ioasic.c was for?
|
1.18 |
| 04-Mar-2007 |
christos | Kill caddr_t; there will be some MI fallout, but it will be fixed shortly.
|
1.17 |
| 14-May-2006 |
elad | branches: 1.17.14; integrate kauth.
|
1.16 |
| 31-Mar-2006 |
thorpej | Use ANSI function decls, apply static.
|
1.15 |
| 30-Mar-2006 |
thorpej | Use device_private().
|
1.14 |
| 11-Dec-2005 |
christos | branches: 1.14.4; 1.14.6; 1.14.8; 1.14.10; 1.14.12; merge ktrace-lwp.
|
1.13 |
| 22-May-2005 |
christos | branches: 1.13.2; No 0x in front of %p...
|
1.12 |
| 04-Feb-2005 |
perry | de-__P
|
1.11 |
| 03-May-2003 |
wiz | branches: 1.11.2; 1.11.10; 1.11.12; DMA, not dma nor Dma.
|
1.10 |
| 01-Apr-2003 |
thorpej | Use PAGE_SIZE rather than NBPG.
|
1.9 |
| 22-Feb-2003 |
tsutsui | hz -> Hz
|
1.8 |
| 02-Oct-2002 |
thorpej | Add trailing ; to CFATTACH_DECL.
|
1.7 |
| 01-Oct-2002 |
thorpej | Use CFATTACH_DECL().
|
1.6 |
| 27-Sep-2002 |
thorpej | Declare all cfattach structures const.
|
1.5 |
| 15-Nov-2001 |
lukem | don't need <sys/types.h> when including <sys/param.h>
|
1.4 |
| 13-Nov-2001 |
lukem | add/cleanup RCSIDs
|
1.3 |
| 19-Jul-2001 |
thorpej | Use BUS_DMA_READ and BUS_DMA_WRITE in some obvious places.
|
1.2 |
| 25-Apr-2001 |
bouyer | branches: 1.2.2; Pull up the thorpej_scsipi branch to main branch. This is a completely rewritten scsipi_xfer execution engine, and the associated changes to HBA drivers. Overview of changes & features: - All xfers are queued in the mid-layer, rather than doing so in an ad-hoc fashion in individual adapter drivers. - Adapter/channel resource management in the mid-layer, avoids even trying to start running an xfer if the adapter/channel doesn't have the resources. - Better communication between the mid-layer and the adapters. - Asynchronous event notification mechanism from adapter to mid-layer and peripherals. - Better peripheral queue management: freeze/thaw, sorted requeueing during recovery, etc. - Clean separation of peripherals, adapters, and adapter channels (no more scsipi_link). - Kernel thread for each scsipi_channel makes error recovery much easier (no more dealing with interrupt context when recovering from an error). - Mid-layer support for tagged queueing: commands can have the tag type set explicitly, tag IDs are allocated in the mid-layer (thus eliminating the need to use buggy tag ID allocation schemes in many adapter drivers). - support for QUEUE FULL and CHECK CONDITION status in mid-layer; the command will be requeued, or a REQUEST SENSE will be sent as appropriate.
Just before the merge syssrc has been tagged with thorpej_scsipi_beforemerge
|
1.1 |
| 04-Jul-2000 |
nisimura | branches: 1.1.2; 1.1.4; Repopulate TCDS dual channel SCSI adapter to MI dev/tc, squashing internals for better layering between TCDS DMA ASIC and ASC SCSI controller.
|
1.1.4.5 |
| 18-Oct-2002 |
nathanw | Catch up to -current.
|
1.1.4.4 |
| 08-Jan-2002 |
nathanw | Catch up to -current.
|
1.1.4.3 |
| 14-Nov-2001 |
nathanw | Catch up to -current.
|
1.1.4.2 |
| 24-Aug-2001 |
nathanw | Catch up with -current.
|
1.1.4.1 |
| 21-Jun-2001 |
nathanw | Catch up to -current.
|
1.1.2.3 |
| 28-Mar-2001 |
bouyer | Make this compile.
|
1.1.2.2 |
| 20-Nov-2000 |
bouyer | Update thorpej_scsipi to -current as of a month ago A i386 GENERIC kernel compiles without the siop, ahc and bha drivers (will be updated later). i386 IDE/ATAPI and ncr work, as well as sparc/esp_sbus. alpha should work as well (untested yet). siop, ahc and bha will be updated once I've updated the branch to current -current, as well as machine-dependant code.
|
1.1.2.1 |
| 04-Jul-2000 |
bouyer | file asc_tcds.c was added on branch thorpej_scsipi on 2000-11-20 11:43:13 +0000
|
1.2.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.2.2.2 |
| 10-Jan-2002 |
thorpej | Sync kqueue branch with -current.
|
1.2.2.1 |
| 03-Aug-2001 |
lukem | update to -current
|
1.11.12.1 |
| 12-Feb-2005 |
yamt | sync with head.
|
1.11.10.1 |
| 29-Apr-2005 |
kent | sync with -current
|
1.11.2.2 |
| 10-Nov-2005 |
skrll | Sync with HEAD. Here we go again...
|
1.11.2.1 |
| 04-Feb-2005 |
skrll | Sync with HEAD.
|
1.13.2.4 |
| 27-Feb-2008 |
yamt | sync with head.
|
1.13.2.3 |
| 27-Oct-2007 |
yamt | sync with head.
|
1.13.2.2 |
| 03-Sep-2007 |
yamt | sync with head.
|
1.13.2.1 |
| 21-Jun-2006 |
yamt | sync with head.
|
1.14.12.2 |
| 24-May-2006 |
tron | Merge 2006-05-24 NetBSD-current into the "peter-altq" branch.
|
1.14.12.1 |
| 31-Mar-2006 |
tron | Merge 2006-03-31 NetBSD-current into the "peter-altq" branch.
|
1.14.10.1 |
| 19-Apr-2006 |
elad | sync with head.
|
1.14.8.1 |
| 01-Apr-2006 |
yamt | sync with head.
|
1.14.6.1 |
| 22-Apr-2006 |
simonb | Sync with head.
|
1.14.4.1 |
| 09-Sep-2006 |
rpaulo | sync with head
|
1.17.14.1 |
| 12-Mar-2007 |
rmind | Sync with HEAD.
|
1.19.20.1 |
| 25-Oct-2007 |
bouyer | Sync with HEAD.
|
1.19.16.2 |
| 23-Mar-2008 |
matt | sync with HEAD
|
1.19.16.1 |
| 06-Nov-2007 |
matt | sync with HEAD
|
1.19.14.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.19.2.1 |
| 23-Oct-2007 |
ad | Sync with head.
|
1.22.6.1 |
| 02-Jun-2008 |
mjf | Sync with HEAD.
|
1.23.4.1 |
| 16-May-2008 |
yamt | sync with head.
|
1.23.2.1 |
| 18-May-2008 |
yamt | sync with head.
|
1.24.22.1 |
| 05-Mar-2011 |
rmind | sync with head
|
1.25.60.1 |
| 10-Jun-2019 |
christos | Sync with HEAD
|
1.25.58.1 |
| 06-Sep-2018 |
pgoyette | Sync with HEAD
Resolve a couple of conflicts (result of the uimin/uimax changes)
|