summaryrefslogtreecommitdiffstats
path: root/sys
Commit message (Collapse)AuthorAgeFilesLines
* Don't zero b_dirtyoff and b_dirtyend on error.dfr1997-04-251-3/+3
| | | | Submitted by: Hidetoshi Shimokawa <simokawa@sat.t.u-tokyo.ac.jp>
* copyin the export network mask to the correct variable.peter1997-04-252-4/+4
| | | | Submitted by: Mike Hibler <mike@marker.cs.utah.edu>, PR#3380
* The following scenario would result in a bogus residual being reportedgibbs1997-04-242-3/+8
| | | | | | | | | | | | | | | | | | if SCB Paging was enabled: disconnect with more data to transfer disconnected SCB gets paged out target reconnects so we page SCB back in target completes transfer so residual is 0 target disconnects SCB gets reused but not paged out since the residual is 0 (optimization) target reconnects so we page the SCB back in we report a residual because of stale residual information. The fix for this is to set a flag that forces the SCB to be paged back up to the host if we page in an SCB with a residual Pointed out by: Doug Ledford <dledford@dialnet.net>
* Add definition of PCI_SUBID_REG2, the subvendor/device ID forse1997-04-242-2/+4
| | | | a header type 2 device.
* Restore memory space separation (RFMEM) for vfork() afterache1997-04-231-1/+1
| | | | shell imgact memory clobbering fixed
* Don't clobber user space argv0 memory on shell exec, mainly for vfork()ache1997-04-232-17/+26
| | | | | | Fix another bug: if argv[0] is NULL, garbadge args might be added for shell script Submitted by: Tor Egge <Tor.Egge@idi.ntnu.no> (with yet one fault detect from me)
* Add argv0 field for imgact structure - for replacing argv0 in shellache1997-04-231-1/+2
| | | | | image activator Submitted by: Tor Egge <Tor.Egge@idi.ntnu.no>
* Add preliminary support for PCI config header type 2:se1997-04-232-20/+38
| | | | Fetch subvendor/device ID from config space register 0x40.
* Fixed longstanding profiling bug. The frame pointer wasn't set upbde1997-04-232-126/+46
| | | | | | | | | | | | | | | | | | | for syscalls, so one frame was lost in backtraces from syscalls. This is handled better in the kernel by using a different mcount entry point for profiling before the frame pointer is set up. Expand RCSID(). Use .p2align instead of the ambiguous .align. Added idempotency ifdef. Removed unused macros ALTENTRY(), ALTASENTRY(), ASENTRY(), _MID_ENTRY. Cleaned up formatting. Reviewed by: jdp reviewed an old version Obtained from: parts from NetBSD
* Give up on the fast vfork() for a while.dyson1997-04-231-2/+2
|
* Check that the received packet length indicated by the card is at leastdg1997-04-232-2/+10
| | | | | | large enough to contain the ethernet header. There appears to be a condition where the card can return "0" in some failure cases, and this causes bad things to happen (a panic).
* Fix broken usage of nm_readdirsize and increase the socket buffers for UDPdfr1997-04-225-29/+19
| | | | | | | | | to prevent possible socket overflows. 2.2 candidate. PR: kern/3304 Reviewed by: Thomas David Rivers <ponds!rivers@dg-rtp.dg.com>
* Synchronize with sys/i386/conf/Makefile.i386, sys/i386/i386/machdep.ckato1997-04-225-25/+69
| | | | and sys/i386/isa/npx.c revisions 1.94, 1.238 and 1.41, respectively.
* Make the necessary changes so that an ELF kernel can be built. Ijdp1997-04-2238-164/+743
| | | | | | | | | | | | | | | | have successfully built, booted, and run a number of different ELF kernel configurations, including GENERIC. LINT also builds and links cleanly, though I have not tried to boot it. The impact on developers is virtually nil, except for two things. All linker sets that might possibly be present in the kernel must be listed in "sys/i386/i386/setdefs.h". And all C symbols that are also referenced from assembly language code must be listed in "sys/i386/include/asnames.h". It so happens that failure to do these things will have no impact on the a.out kernel. But it will break the build of the ELF kernel. The ELF bootloader works, but it is not ready to commit quite yet.
* Fixed typo in the set_keyboard_param().yokota1997-04-221-1/+1
| | | | Spotted by: Philippe Charnier@xp11.frmug.org
* Dirty change in union_lock(). Sometimes upper vnode is locked withoutkato1997-04-212-10/+46
| | | | | | | | UN_ULOCK flag. This shows a locking violation but I couldn't find the reason UN_ULOCK is not set or upper vnode is not unlocked. I added the code that detect this case and adjust un_flags. DIAGNOSTIC kernel doesn't adjust un_flags, but just panic here to help debug by kernel hackers.
* Send this to the Attic so there's no mixups over which kern_lock.c is inpeter1997-04-211-377/+0
| | | | use in -current.
* - Better fix for 3C589D support. Revert previous changes and add anate1997-04-211-1/+2
| | | | | | | delay after we reset the card to allow the card to come back to life. It appears the newer card takes longer to reset. Submitted by: Samuel Lam <skl@ScalableNetwork.com>
* Replace VOP_LOCK with vn_lock.kato1997-04-212-4/+4
|
* Synchronize with sys/i386/isa/lpt.c revision 1.60.kato1997-04-211-6/+8
|
* Synchronize with sys/i386/isa/syscons.c.revision 1.210.kato1997-04-211-10/+12
|
* Fixed the type of a timeout function and removed casts that hid thebde1997-04-201-2/+7
| | | | | | type mismatches. There was no problem in practice (at least on 386's). The timeout args still get bogusly cast from int to `void *' via caddr_t and back to int.
* Fixed the type of timeout functions and removed casts that hid thebde1997-04-204-48/+76
| | | | | | | | | type mismatches. mcd and scd were/are particularly bogus. They used a general purpose function taking 2 args for the timeout function and fudged varargs stuff to supply the second arg for the timeout case. This broke `cc -mrtd'. Bounce through a timeout function instead. The timeout arg still gets bogusly cast from int to `void *' and back.
* Fix both a problem with accessing backing objects, and also releasedyson1997-04-202-2/+28
| | | | | | the process map on nonexistant pages. PR: kern/3327 Submitted by: Tor Egge <Tor.Egge@idi.ntnu.no>
* Re-institute the efficent version of vfork. It appears to make adyson1997-04-201-2/+2
| | | | | | | difference of approx 3mins in make world on my P6!!! This means that vfork now has full address space sharing, so beware with sloppy vfork programming. Also, you really do need to apply the previously committed popen fix in libc.
* Fixed the type of timeout functions and removed casts that hid thebde1997-04-209-16/+15
| | | | | type mismatches. Not taking an arg in sequencer_timer() broke `cc -mrtd'.
* Fixed the type of timeout functions and removed casts that hid thebde1997-04-204-33/+24
| | | | | | | | | | | | | type mismatches. There was no problem in practice (at least on 386's). Don't cast NULL in calls to timeout functions. pcvt is fully prototyped and doesn't support K&R. Timeout functions take args of type `void *', so use magic numbers of type `void *' for UPDATE_* to reduce the danger of wrong conversions. Removed FreeBSD-pre-1.1-related TIMEOUT_FUNC_T macro. It was especially bogus for the pre-1.1 case.
* Fixed the type of timeout functions and removed casts that hid thebde1997-04-203-30/+36
| | | | type mismatches. Not taking an arg in scrn_timer() broke `cc -mrtd'.
* Fixed the type of timeout functions and removed casts that hid thebde1997-04-201-11/+7
| | | | | | | | type mismatches. There was no problem in practice (at least on 386's). Removed NetBSD-related TIMEOUT macro. NetBSD uses the same BSD4.4Lite timeout interface as FreeBSD. As a concession to portability, declare the timeout function without using the FreeBSD timeout_t typedef.
* Fixed the type of timeout functions and removed casts that hid thebde1997-04-207-31/+35
| | | | type mismatches. There was no problem in practice (at least on 386's).
* Fixed inconsistent extern declaration of a timeout function andbde1997-04-201-2/+2
| | | | | removed a cast that helped hide the problem. There was no problem in practice (at least on 386's).
* Fixed linting of and compilation of the gcc byte-swapping macrosbde1997-04-201-15/+12
| | | | | | | | | | | | | | | properly. Simply don't use the gcc macros if we're not gcc, and declare prototypes for the byte-swapping functions in case the macro versions are not used. The previous fix was wrong and broke libpcap, which abuses -Dlint. Don't pollute the namespace if _POSIX_SOURCE is defined. This is broken - it makes almost everything in <machine/endian.h> inaccessible if _POSIX_SOURCE is defined, yet <machine/endian.h> is not a POSIX header. Other systems don't do it any better. Removed always-false `BYTE_ORDER == BIG_ENDIAN' ifdef. Obtained from: partly from Lite(2?) and NetBSD
* 1. i82365.h: Chip identifiers should not be #ifdef PC98. Add identifierphk1997-04-203-45/+76
| | | | | | | | | | (pt. unused) for TI PCI1130. 2. pccard.c: PCIC_RESUME_RESET is now (also) a sysctl. (Never make it a #ifdef if it can be made a sysctl!) 3. pcic.c: make getb() and putb() proper member functions of struct pcic_slot. Add a couple of missing casts.
* The bit of the cardbus bridge support code se and I have been able to agreephk1997-04-202-2/+14
| | | | | on so far... :-) Reviewed by: se
* Fix up the "hlt vector" change I made.phk1997-04-203-21/+21
| | | | Reviewed by: bde, bde, bde
* Synchronize with sys/i386/isa/diskslice_machdep.c revision 1.25.kato1997-04-202-16/+22
|
* Synchronize with sys/i386/isa/sio.c revision 1.163.kato1997-04-192-10/+22
|
* Fix a bug where a program which appended many small records to a file coulddfr1997-04-192-2/+6
| | | | | | | | | | | | | wind up writing zeros instead of real data when the file is on an NFSv2 mounted directory. While tracking this bug down, I noticed that nfs_asyncio was waking *all* the iods when a block was written instead of just one per block. Fixing this gives a 25% performance improvment for writes on v2 (less for v3). Both are 2.2 candidates. PR: kern/2774
* Avoid division by 0 in check_part(). (It occurred when max_nsectors == 0.bde1997-04-192-16/+22
| | | | | | | This case is clearly an error, but we keep calling check_part() to get diagnostics.) Fixed nearby indentation and commenting bugs.
* Avoid `lock against myself' panic by following operation:kato1997-04-194-12/+66
| | | | | | | | | | # mount -t union (or null) dir1 dir2 # mount -t union (or null) dir2 dir1 The function namei in union_mount calls union_root. The upper vnode has been already locked and vn_lock in union_root causes above panic. Add printf's included in `#ifdef DIAGNOSTIC' for EDEADLK cases.
* Don't disable CPU cache in init_486dlc. If BIOS supports Cyrix 486,kato1997-04-192-6/+2
| | | | | | | | | BIOS enables CPU cache and other registers. If BIOS does not supports it, CPU cache is disabled at reset time. This commit closes PR/3292. PR: 3292
* Don't call timeout() for DTR wakeup or busy check if the relevant timeoutbde1997-04-183-15/+33
| | | | | is already active. This fixes "timeout table full" panics under 100% interrupt load and other weird conditions.
* No longer use AAP for queueing SCBs to the QINFIFO.gibbs1997-04-181-79/+63
| | | | | | | | | Clean up the unexpected busfree handler. We now look directly at the message that might have caused the bus free to occur instead of looking at an SCB flag. This makes the handling more robust and also allows for recovery actions that might cause an "unexpected busfree" to be performed even if an SCB is not availible to "tag". Most notably, this happens when we don't find an SCB for a reconnecting target.
* Revert some changes to the selection and reselection code that were thoughtgibbs1997-04-181-41/+19
| | | | | | | | | | | | to fix a selection timeout problem. If we can't find an SCB for the reconnecting target, issue a bus device reset as the SCSI2 spec suggests. Add a missing call to "add_scb_to_free_list" in the non paging case. In the non-paging case, the SCBs don't really need to be on the free list, but putting them there clears the tag field which is something the recovery code depends on.
* Don't allow partial buffers to be cluster-comitted.dfr1997-04-183-9/+16
| | | | | | | Zero the b_dirty{off,end} after cluster-comitting a group of buffers. With these fixes, I was able to complete a 'make world' with remote src and obj directories.
* Incorporate kludge/fix from `syscons' ver 1.207 and 1.209.yokota1997-04-181-14/+17
| | | | | | | | | | | | | | | | | | | | | | 1) Dell Latitude XPi This laptop has a strange, IMHO broken :-), keyboard controller which wouldn't disable the keyboard interrupt. The kludge is to disable tty intr. during set_keyboard(), used for changing LED and setting typematic. The patch also changes the function name: set_keyboard() -> set_keyboard_param() Although it is a static function, the name corrides with a routine in `syscons' and is confusing when debugging the kernel which has both `syscons' and `pcvt' with DDB. (Suggested by Bruce) 2) doreset() bug doreset() failed to preserve some bits in the keyboard controller's command byte during keyboard reset. This bug may put some keyboard controllers in old motherboards (386 and 486) in a strange state, resulting in complete keyboard lockup or random key input. Reviewed by: Joerg
* Rearrange pci network card identification for easier additions.davidn1997-04-182-26/+36
| | | | Added KTI NE2000 clone.
* Brought fix from the 2.2 branch forward (see rev 1.47.2.7): serious bugsdg1997-04-181-3/+14
| | | | with reading the image header.
* Amancio:fsmp1997-04-172-26/+26
| | | | | | | | | | | | | This patch fixes the problem of vic only capturing an even or odd frame plus the my early patch for missing frames with resolutions higher than 320x240 in rgb mode. The yuv422 patch introduces a minor bug in that a green line appears at the bottom of the captured window . There is no easy work around for this right now. Reviewed by: various bt848 hackers Submitted by: Amancio Hasty <hasty@rah.star-gate.com>
* Quick and dirty attempt to get the zp device to work with the 3c589D.nate1997-04-171-2/+2
| | | | | | | | | Increase the delay in read_eeprom_data() by two orders of magnitude. > A better fix would be to make read_eeprom_data() call > f_is_eeprom_busy() after the DELAY(). Submitted by: Samuel Lam <skl@ScalableNetwork.com>
OpenPOWER on IntegriCloud