aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Use some macro evil to create the functions for using sysctl(3) to get eachJuli Mallett2002-09-231-81/+36
| | | | | | | | | | | variable natively. It should allow you to use any sysctl mib set, but due to limitations of what I can do with macros, right now it's limited to two, which is all this program used anyway. Sponsored by: Bright Path Solutions Notes: svn path=/head/; revision=103846
* Alfred got me thinking. Provide stubs for lint, and let the compilersPeter Wemm2002-09-231-5/+11
| | | | | | | | | | themselves cause a failure if it is told to use a __widget that there is no implementation for them. missing an implementation for __unused etc is harmless. But not having a __packed implementation when the kernel code really needs it is a big deal. Notes: svn path=/head/; revision=103845
* use __packed/__aligned rather than GCC-specific __attribute__.Alfred Perlstein2002-09-233-16/+16
| | | | Notes: svn path=/head/; revision=103844
* White space commit...Julian Elischer2002-09-231-58/+58
| | | | | | | get prompted by Peter's commit to fix spaces that should be tabs in #defines Notes: svn path=/head/; revision=103843
* s/__attribute__((__packed__))/__packed/gAlfred Perlstein2002-09-239-50/+50
| | | | Notes: svn path=/head/; revision=103842
* I cannot win. I still managed to use #define<space> twice instead ofPeter Wemm2002-09-231-2/+2
| | | | | | | #define<tab> in spite of trying to make sure I didn't do this. Notes: svn path=/head/; revision=103841
* Add ability to make threads that run on > 1 cpuJulian Elischer2002-09-232-41/+191
| | | | | | | | | this DOES NOT WORK YET. (well it kind-of-does but it's unsafe) Submitted by: davidxu Notes: svn path=/head/; revision=103840
* Don't use compatability syscall wrappers in emulation code.Jonathan Mini2002-09-237-25/+64
| | | | | | | | | This is needed for the COMPAT_FREEBSD3 option split. Reviewed by: alfred, jake Notes: svn path=/head/; revision=103839
* slightly clean up the thread_userret() and thread_consider_upcall() calls.Julian Elischer2002-09-234-29/+53
| | | | | | | | | | also some slight changes for TDF_BOUND testing and small style changes Should ONLY affect KSE programs Submitted by: davidxu Notes: svn path=/head/; revision=103838
* Check to see if we should print a space, rather than using the annoyingJuli Mallett2002-09-231-12/+12
| | | | | | | | | prefix methodology. Adjust nearby style. Sponsored by: Bright Path Solutions Notes: svn path=/head/; revision=103837
* Add a __section(x) macro as well. Use this in linker_set.h. ie:Peter Wemm2002-09-232-4/+7
| | | | | | | | | | | | | | | | | static void const * const __set_##set##_sym_##sym __attribute__((__section__("set_" #set),__unused__)) = &sym becomes: static void const * const __set_##set##_sym_##sym __section("set_" #set) __unused = &sym Like the other macros, these #define away for unrecognized compilers or lint. Also, fix the argments in the previous commit for the non-gcc case. lint might be a bit happier about that. Note that the gcc <= 2.6 case needs some research. Notes: svn path=/head/; revision=103836
* Add code to create > 1 KSe per process.Julian Elischer2002-09-231-16/+39
| | | | | | | | | (support code not yet complete) Submitted by: davidxu Notes: svn path=/head/; revision=103835
* At great personal risk, add a __packed and __aligned(x) define thatPeter Wemm2002-09-239-8/+14
| | | | | | | | | | | | | expand to __attribute__((packed)) and __attribute__((aligned(x))) respectively. Replace the handful of gcc-ism's that use __attribute__((aligned(16))) etc around the kernel with __aligned(16). There are over 400 __attribute__((packed)) to deal with, that can come later. I just want to use __packed in new code rather than add more gcc-ism's. Notes: svn path=/head/; revision=103834
* - Automatically generate and insert KTR points in all VOPs.Jeff Roberson2002-09-231-0/+24
| | | | Notes: svn path=/head/; revision=103833
* Indentation does not define a block.. you need breces {} as well..Julian Elischer2002-09-231-1/+3
| | | | | | | | | also add a mutex assert. (threaded path only) Submitted by: davidxu Notes: svn path=/head/; revision=103832
* Wads more cleanup...Matt Jacob2002-09-231-176/+233
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In mpttimeout, call mpt_intr just on the offchance that we missed an interrupt. We can check to see whether or not the command that is timing out got completed. When we *do* decide to timeout a command, set the command state to REQ_TIMEOUT and then invoke another timeout (hz/10)- mpttimeout2. This allows us to catch a couple cases we've seen where the command we timed out on in fact is ready to be completed by the firmware. In any case, it's only after mpttimeout2 is called that we actually take down the private state and free the request itself. CAM has been notified in mpttimeout anyway. This whole area should be redone, but that will take 105% of my available game time for this month. Fix a couple of missing (and not useful, at presnet) CAMLOCK_2_MPTLOCK and MPTLOCK_2_CAMLOCK locations. Split mpt_notify into mpt_ctlop, which handles all reply completions that have 0x800000000 or'd into the ContextID. This function can, in fact, call mpt_event_notify_reply, which handles the traditional async event notifications. While we're at it, put in the extremely important (but currently untested) code that send back an Ack to an Event Notification (if the Event Notification is marked with AckRequired). Note that an Ack also generates another ctlop completion, tra la. Fix up mpt_done substantially to try and get how we plug into CAM correctly done. Remove bogus CAM_RELEASE_SIMQ settings. Do some cleanups in mpt_action that are related to speed negotiation for Ultra4 cards. This is an area that is still quite fragile and worrisome as config data being read back often doesn't make sense or jibe with the documentation. At any rate, after these changes were done, I was finally able to get Lars Eggert's dual 320M disk system to stay up under load all weekend- hopefully we're in good enough for now shape. MFC after: 1 week Notes: svn path=/head/; revision=103831
* - Hold the credential of the caller and use it in all subsequent vn ops.Jeff Roberson2002-09-231-6/+7
| | | | | | | | | - Get rid of the ill conceived aq_td field. Suggested by: rwatson Notes: svn path=/head/; revision=103830
* Recognize the single channel 2Gb card (FC919)- thanks to LSI Logic forMatt Jacob2002-09-231-2/+14
| | | | | | | | | | | | pointing this out. In mpt_intr, don't try and pop a reply queue element out *unless* the interrupt status says you might have one. MFC after: 1 week Notes: svn path=/head/; revision=103829
* We do not need to expose mpt_notify outside of mpt_freebsd.c.Matt Jacob2002-09-231-1/+0
| | | | | | | MFC after: 1 week Notes: svn path=/head/; revision=103828
* When freeing a request, zero out the sequence number.Matt Jacob2002-09-231-2/+3
| | | | | | | | | | | | | | | Define the CFG_DAGA_OFF offset as 128 bytes instead of 40- gives us a more reasonable headroom. When reading a config page, zero out the entire request area- not just the length of the request. This is because we cleverly (cheezily) return configuration data back into the allocated request area, so it's nice to make sure we start with a clean area to write on. MFC after: 1 week Notes: svn path=/head/; revision=103827
* Remove ISP_DMA_ADDR_T definition.Matt Jacob2002-09-231-10/+17
| | | | | | | | | | | Instead, based upon whether ISP_DAC_SUPPORTED is defined, typedef isp_dma_addr_t appropriately. If ISP_DAC_SUPPORTRED is defined, the DMA_WD2/DMA_WD3 macros do something useful, else they define to '0'. Notes: svn path=/head/; revision=103826
* Add MBOX_INIT_REQ_QUEUE_A64/MBOX_INIT_RES_QUEUE_A64 definitions.Matt Jacob2002-09-231-0/+6
| | | | | | | Define ispreq64_t to be the same as ispreqt3_t. Notes: svn path=/head/; revision=103825
* Delete a whole bunch of compatability defines that we dont use anymore.Peter Wemm2002-09-232-12/+0
| | | | Notes: svn path=/head/; revision=103824
* Redo dma tag creation to correctly reflect the boundary and segmentMatt Jacob2002-09-231-8/+7
| | | | | | | limitations inherent to the isp1000 on SBus cards. Notes: svn path=/head/; revision=103823
* Re-specify the bus space creation such that if we have ISP_DAC_SUPPORTEDMatt Jacob2002-09-231-8/+12
| | | | | | | | | | | | | | defined, we set the address space limitation to BUS_SPACE_UNRESTRICTED, otherwise to BUS_SPACE_MAXADDR_32BIT. If we have a 1240, ULTRA2 or better, or an FC card, the boundary limit is BUS_SPACE_UNRESTRICTED and segment limit is BUS_SPACE_MAXADDR_32BIT. The older 1020/1040 cards have boundary and segment limits of BUS_SPACE_MAXADDR_24BIT. Notes: svn path=/head/; revision=103822
* Fix buglet in A64 CTIO3 structure copy.Matt Jacob2002-09-231-1/+1
| | | | Notes: svn path=/head/; revision=103821
* Remove ISP_DMA_ADDR_T define (see ispvar.h)Matt Jacob2002-09-231-1/+4
| | | | | | | | | Add in commented out: +/* #define ISP_DAC_SUPPORTED 1 */ Notes: svn path=/head/; revision=103820
* If we have a 1240 or an ULTRA2 or better card, use MBOX_INIT_RES_QUEUE_A64Matt Jacob2002-09-231-22/+49
| | | | | | | (preparation for DAC/A64 support) Notes: svn path=/head/; revision=103819
* A SCSI_DELAY of zero is a legitimate value to have.Matt Jacob2002-09-231-2/+4
| | | | | | | The notion that you must "always" have a delay is at best misinformed. Notes: svn path=/head/; revision=103818
* Note that the large Hitachi's are also CAM_QUIRK_HILUNSMatt Jacob2002-09-231-0/+8
| | | | Notes: svn path=/head/; revision=103817
* Be careful not to define GCC-specific optimizations in the non-GCCMike Barcroft2002-09-236-12/+66
| | | | | | | case. Notes: svn path=/head/; revision=103814
* Use the system pselect(3).Mike Barcroft2002-09-231-1/+1
| | | | Notes: svn path=/head/; revision=103813
* - Correct the name in the header guards.Jeff Roberson2002-09-231-3/+3
| | | | | | | Spotted by: rwatson Notes: svn path=/head/; revision=103812
* The ahc driver should only have one devclass, not one for each busScott Long2002-09-224-9/+10
| | | | | | | | | | attachment. Submitted by: too many people to count MFC after: 3 days Notes: svn path=/head/; revision=103811
* Fix a couple of longstanding typos which would have made aJohn Polstra2002-09-221-1/+2
| | | | | | | | | | | statement fail to compile if it weren't inside "#ifdef __brokenalpha__". Submitted by: Birger Toedtmann <birger@takatukaland.de> MFC after: 2 weeks Notes: svn path=/head/; revision=103808
* Follow the lead of recent changes in the 3com Linux driver byJohn Polstra2002-09-221-46/+3
| | | | | | | | | | | | disabling memory write invalidate unconditionally. It looks like they've decided that MWI just doesn't work with these devices. Also, remove now-irrelevant code that set PCI write boundary values based on the cache line size. MFC after: 2 weeks Notes: svn path=/head/; revision=103807
* Set up the BCM570x chip's DMA Read/Write Control register moreJohn Polstra2002-09-221-2/+10
| | | | | | | | | | correctly. This fixes the "watchdog timeout -- resetting" errors seen on Dell 2650 systems. MFC after: 1 month Notes: svn path=/head/; revision=103806
* Attempt to fix the error reported by the alpha tinderbox. A pointerIan Dowse2002-09-222-4/+4
| | | | | | | | was being cast to an integer as part of a hash function, so just add an intptr_t cast to silence the warning. Notes: svn path=/head/; revision=103804
* o Fix a typo.Maxim Konovalov2002-09-221-3/+3
| | | | | | | | | | | o Remove EOL spaces. Submitted by: Harold Gutch <logix@foobar.franken.de> (typo patch) Approved by: luigi MFC after: 3 days Notes: svn path=/head/; revision=103802
* cp -p could report success even if a file copy failed. This was due toStephen McKay2002-09-221-3/+4
| | | | | | | | | | | | | | the cumulative exit status being overwritten when directory permissions were being set. This was particularly bad when called from mv(1) to perform a cross-device move as the original files were deleted even if the copy failed. Reported by: Slaven Rezic <slaven.rezic@berlin.de> Patch by: bde PR: 42789 Notes: svn path=/head/; revision=103801
* Initialize fwsectors/fwheads to allow the DIOCGFWSECTORS andPeter Grehan2002-09-221-2/+2
| | | | | | | | | DIOCGFWHEADS ioctls to return meaningful values to disklabel/newfs Approved by: phk Notes: svn path=/head/; revision=103800
* Use mdmfs(8) rather than rolling our own RAM-disks.Poul-Henning Kamp2002-09-226-24/+6
| | | | | | | Sponsored by: DARPA & NAI Labs. Notes: svn path=/head/; revision=103799
* Don't disklabel(8) the md(4) device, it is not needed, and we don't wantPoul-Henning Kamp2002-09-223-22/+3
| | | | | | | | | to propagete BSD disklabels to architectures not already so polluted. Sponsored by: DARPA & NAI Labs. Notes: svn path=/head/; revision=103798
* Failure to rewrite the disklabel should not be fatal.Poul-Henning Kamp2002-09-221-4/+2
| | | | | | | Sponsored by: DARPA & NAI Labs. Notes: svn path=/head/; revision=103797
* Fix misspellings, capitalization, and punctuation in comments. MinorDon Lewis2002-09-223-90/+95
| | | | | | | comment phrasing and style changes. Notes: svn path=/head/; revision=103796
* Move the com_scr register address definition over with the other seven.Poul-Henning Kamp2002-09-222-2/+1
| | | | | | | Approved by: bde Notes: svn path=/head/; revision=103795
* Modify vm_map_clean() (and thus the msync(2) system call) to supportMatthew N. Dodd2002-09-221-7/+10
| | | | | | | | | | invalidation of cached pages for objects of type OBJT_DEVICE. Submitted by: Christian Zander <zander@minion.de> Approved by: alc Notes: svn path=/head/; revision=103794
* Add the remaining C99 wide character string to integer conversion functions.Tim J. Robbins2002-09-228-26/+558
| | | | | | | | Restrict qualifiers were added to the existing prototypes in <inttypes.h> and the typedef for wchar_t was removed. Notes: svn path=/head/; revision=103793
* Turn off the "-O2 flag TRIGGERS KNOWN OPTIMIZER BUGS" warning.David E. O'Brien2002-09-221-1/+1
| | | | | | | | | | | | | | | From current testsuite results, the optimizer bugs don't appear to exist anymore. RTH@cygnus.com did a lot of work on the Alpha ELF code generator for GCC 3.2[.0]. A recent FreeBSD/AXP GCC bootstrap is at http://gcc.gnu.org/ml/gcc-testresults/2002-09/msg00604.html In this bootstraps, all gcc libraries are built with -O2 and c-torture gives -O2 a real workout. None of the remaining failures have anything to do with -O2 optimizer bugs. Submitted by: Loren James Rittle <rittle@latour.rsch.comm.mot.com> Notes: svn path=/head/; revision=103792
* - Add the -i option to read in a saved ktr file output by KTR_ALQ.Jeff Roberson2002-09-221-13/+41
| | | | Notes: svn path=/head/; revision=103791