Commit Graph

38251 Commits

Author SHA1 Message Date
pk
fca92e02ab Fix a couple of typos. 2000-05-31 11:23:21 +00:00
fvdl
c0f99cc74a Initialize xs_status to 0 after allocating a scsipi_xfer struct. Makes life
easier for driver debugging.
2000-05-31 11:14:25 +00:00
augustss
d86618eb5a Implement the scsipi_getgeom method and guess the geometry of floppies
based on the number of sectors.
2000-05-31 09:17:13 +00:00
augustss
72684ce3ec Add a method, scsipi_getgeom, to the adapter struct. If this method is
present it will be used to get the drive geometry if the MODE SENSE fails.
2000-05-31 09:15:48 +00:00
enami
52a5cc1c5e Make this file compile with DIAGNOSTIC. 2000-05-31 06:18:03 +00:00
thorpej
8d5520dccf - In the MULTIPROCESSOR case, initialize p_cpu before a process is
marked SONPROC.
- Fix a bug where all cpu_info structures except for the boot CPUs
  would exist at both a CPU-local VA (CPUINFO_VA) and a gloal VA;
  The boot CPU's existed only a CPUINFO_VA.
- Add a self-reference pointer to the cpu_info that references the
  global address in the MULTIPROCESSOR case.  Just allow it to reference
  the `local' VA in the single-processor case, as CPUINFO_VA is global
  enough when there's only one processor to care about.  Change curcpu()
  to return the global address.
2000-05-31 05:28:26 +00:00
thorpej
0d866249d4 - In the MULTIPROCESSOR case, initialize p_cpu before a process is
marked SONPROC.
- Always make curproc, fpcurproc, astpending, and want_resched per-CPU
  variables in struct cpu_info.  Restructure code accordingly, and trim
  a few instructions from a few spots in various places in locore.
2000-05-31 05:14:26 +00:00
thorpej
858becb7c2 In the MULTIPROCESSOR case, initialize p_cpu before a process is
marked SONPROC.
2000-05-31 05:10:54 +00:00
thorpej
8c2d00aaeb Add a comment about needing to initialize p_cpu when multiple
processors are supported.
2000-05-31 05:09:14 +00:00
thorpej
8871d8563a Add a comment on single-processor systems about p_cpu being initialized
by fork1().
2000-05-31 05:06:43 +00:00
thorpej
956b3ca3b3 Track which process a CPU is running/has last run on by adding a
p_cpu member to struct proc.  Use this in certain places when
accessing scheduler state, etc.  For the single-processor case,
just initialize p_cpu in fork1() to avoid having to set it in the
low-level context switch code on platforms which will never have
multiprocessing.

While I'm here, comment a few places where there are known issues
for the SMP implementation.
2000-05-31 05:02:31 +00:00
mycroft
65ace9d5d8 Yessiree! It's softdep time! 2000-05-31 04:57:20 +00:00
matt
28b0517c9c random thoughts on how i'm implementing this. 2000-05-31 03:42:34 +00:00
fredb
ef3785c36a Make this build. (Balance parenthesis. 2000-05-31 03:37:34 +00:00
nathanw
820847ee98 Update for qs -> sched_qs change.
Kernel compiles again.
2000-05-31 03:16:52 +00:00
nisimura
0e80e9cd4b Minor comment adjustments. cpu_switch has an argument of struct proc *. 2000-05-31 01:46:15 +00:00
perseant
61861bace5 update for IN_ACCESSED changes 2000-05-31 01:40:01 +00:00
nisimura
48ef457a5f Leave fpcurproc NULL for Vr4100/TX3900. It's solely for delayed lazy
FPA.  fp.S is free from fpcurproc references for SOFTFLOAT case.
2000-05-31 01:11:58 +00:00
nisimura
788c728dbd Replace fpcurproc->p_addr-> references with curpcb->. 2000-05-31 00:59:27 +00:00
oster
00a6796b71 Oops.. reconstruction percentages were being reported incorrectly.
Thanks to Manuel Bouyer for noting this.
2000-05-31 00:52:36 +00:00
matt
ede7ab9361 Install ieee1394reg.h since user application (someday) will need it. 2000-05-30 22:52:02 +00:00
eeh
7a92eda021 Include "opt_DDB.h" to enable the DDB sysctls. 2000-05-30 20:54:26 +00:00
mycroft
719d6db0e2 Adjust where IN_MODIFIED and IN_ACCESSED are cleared (as in the FFS code). 2000-05-30 19:09:44 +00:00
uch
6764e5fc91 if defined SOFTFLOAT, set fpcurproc before call MachFPInterrupt() 2000-05-30 18:12:47 +00:00
mycroft
70ac5e4326 Back out previous kluge. 2000-05-30 17:40:12 +00:00
mycroft
64f5a574a7 In ffs_update():
* Move the clearing of IN_MODIFIED and IN_ACCESSED later, so they are not
  cleared if the bread() failed.
* Explicitly set waitfor to 0 in the softdep case, if IN_MODIFIED is not
  set (mirroring the bwrite()/bdwrite() decision).
2000-05-30 17:23:52 +00:00
augustss
382a7af237 Don't print anything when detecting resume. 2000-05-30 16:56:54 +00:00
deberg
fadd7e1882 oops, we need nofault. 2000-05-30 15:35:00 +00:00
fvdl
f0112539bd Mark an inode as changed after a rename. It wasn't before in the softdep
case, which created inodes with dependencies, but no IN_* flag set,
so the dependencies were never flushed (after the waitfor check in
ffs_update was removed).
2000-05-30 15:22:12 +00:00
augustss
4f72f2f97d Regen. 2000-05-30 15:18:30 +00:00
augustss
6b0aea9254 Add TEAC floppy. 2000-05-30 15:17:18 +00:00
augustss
6b0b8292ff Add NOMODESENSE quirk for TEAC USB floppy. 2000-05-30 15:16:41 +00:00
matt
e621957503 add more speeds (up to 3.2Gb/s) 2000-05-30 14:56:59 +00:00
tsubai
7531770fa4 Insert delay() in busy wait. 2000-05-30 11:45:11 +00:00
tsubai
41a98db641 Add cpu_number(). 2000-05-30 11:42:05 +00:00
augustss
53f83c5533 Use attribute packed for on-the-wire data structures. 2000-05-30 10:10:17 +00:00
haya
03c4724943 Use rbus_new_root_share() instead of rbus_new_root_delegate(). 2000-05-30 09:26:19 +00:00
augustss
e4217da6d0 As a safety, check that the controller is not suspended when we get
an interrupt.
2000-05-30 09:26:06 +00:00
haya
f89b0f51ae Call extent_alloc_subregion() with EX_MALLOCOK in
rbus.c::rbus_space_alloc_subregion().
2000-05-30 09:18:06 +00:00
augustss
f1b4af5ba1 Make this compile too. 2000-05-30 08:36:27 +00:00
augustss
b85fe33276 Make this file compile. (I know it's just a placeholder, but I couldn't
resist trying it.)
2000-05-30 08:31:57 +00:00
matt
e78793c612 Beginning of a IEEE 1394 framework. An attachment for PCI OHCI controllers
and bus-independent module that just begins to print things out.  No real
code behind it.  THIS IS A WORK IN PROGRESS.  The *reg.h are woefully
incomplete.
2000-05-30 06:56:13 +00:00
perseant
ae7e580ebd Don't try to "correct" accounting for fragments being extended but which
have never been written to disk.
2000-05-30 04:08:41 +00:00
oster
8e82dfa363 For a RAID 1 set that has N components, allow the set to auto-configure as
long as at least one of the master or the mirror is available for each
of the N/2 'rows' of the set. (No, RAIDframe doesn't do N-way mirroring..)
Thanks to Manuel Bouyer for noting the problem.
2000-05-30 03:29:49 +00:00
cjs
a9a7dd7904 Fix typo in DEBUG code. 2000-05-30 03:26:34 +00:00
nisimura
58d84e19a6 savefpregs() and loadfpregs() are defined in mips_machdep.c 2000-05-30 02:05:36 +00:00
oster
ef4a0a7cf8 Use #include <sys/kernel.h> instead of a 'extern int hz'.
Make this file more readable.
2000-05-30 02:04:29 +00:00
augustss
61143a446c Add NOMODESENSE quirk for Y-E data floppy (thanks Jason for reminding me). 2000-05-30 01:49:19 +00:00
nisimura
3d826a5c7e Add a missing closing parenthesis. 2000-05-30 01:42:43 +00:00
nisimura
b67b90d7f9 FPA ownership is now guarded by MDP_FPUSED flag and there is no necessity
to have #if ... around savefpregs() calls.
2000-05-30 01:29:59 +00:00
nisimura
0e501989cd - Have savefpregs() and loadfpregs() in C codes with lengthy inlined
asm statements, obsoluting asm routines in locore.S.  They are
  designed to work in symmetry as names suggests.  savefpregs()
  does not clear a global variable fpcurproc.  Both would be noops when
  NOFPU global symbol is defined.
- MDP_FPUSED flag is not turned on for FPA-less processors like Vr4100
  and TX3900 even when processes execute FP insns.
2000-05-30 01:23:53 +00:00
augustss
ea5a174495 Massage the SCSI commands when using the UFI protocol in a better way.
Now the Y-E Data Flashbuster floppy seems to work.

Thanks to Y-E Data for giving one to the project when I couldn't find
one easily.
2000-05-30 01:12:51 +00:00
augustss
997c3c5b8a Add a quirk, SDEV_ONLYBIG, which implies that the device cannot handle
the 6 byte versions of READ, WRITE, and MODE_SENSE.
This greatly simplifies the UFI (USB Floppy) handling.
2000-05-30 01:08:23 +00:00
matt
c7326acd04 Add the PCI attachment for IEEE 1394 OHCI controllers. Files to follow later. 2000-05-30 00:53:14 +00:00
matt
3ed6c24d5c Add IEEE 1394 OHCI node and IEEE 1394 bus. Just placeholders for now. 2000-05-30 00:48:47 +00:00
matt
fd1991294f Regen 2000-05-30 00:21:07 +00:00
matt
adaaa34784 Add the TI 1394 controllers. Makes all the 1394 controller descriptions
similar.
2000-05-30 00:20:41 +00:00
mycroft
da42c608fe Use a better multiplier for the 60Hz case. 2000-05-29 23:48:33 +00:00
simonb
4857b33794 A few more white-space bogons. 2000-05-29 23:40:03 +00:00
matt
3f4005113e funciton != function 2000-05-29 23:34:08 +00:00
simonb
6c87680cbf A TAB after the define keyword instead of spaces. 2000-05-29 23:30:06 +00:00
jhawk
0ff7191f39 Ensure that a fault inside the traceback printing code
(i.e. db_stack_trace_print()) does not cause an infinite loop of
faults.
2000-05-29 23:10:03 +00:00
sommerfeld
a3edbba355 Add null-pointer tests in ktrsamefile 2000-05-29 22:29:01 +00:00
pk
ee396c032f Remove IOMMU page table allocation from pmap_bootstrap() and all the
hacks surrounding it.
2000-05-29 22:23:34 +00:00
deberg
9735bab338 use rtc.h for poweroff() and #if 0 out badaddr, which isn't used
anywhere.  machdep.c compiles w/o any noise now.
2000-05-29 22:10:43 +00:00
deberg
e3a332df61 prototype rtc stuff used elsewhere 2000-05-29 22:08:47 +00:00
sommerfeld
879eaa480a Fix clearing of ktrace points:
- need deep compare of open files, not a shallow pointer compare.
 - reorder fdrelease()/FILE_UNUSE() invocations so fdrelease doesn't
block waiting for something which can't happen until after it returns.
2000-05-29 22:04:11 +00:00
deberg
dbd1379620 no need to include next{kbd,display}var.h 2000-05-29 21:35:04 +00:00
pk
ce1fb71efc Use uvm_pglistalloc() to allocate memory for the I/O PTEs; modelled after
a similar change by Art Grabowski in Openbsd.
2000-05-29 20:41:10 +00:00
fvdl
b9bb94500e Obey the "Reset SCSI bus at startup" EEPROM setting. 2000-05-29 20:13:53 +00:00
bouyer
405302008d ADEV_CDROM -> SDEV_CDROM, for consistency. 2000-05-29 20:13:06 +00:00
ragge
992002c2be Use the cpu_info struct to store cpu-specific data in the same way in
both uniprocessor and multiprocessor environments. Use the otherwise
unused internal CPU register SSP to store the cpu_info pointer.
The macros curcpu(), curproc, cpu_number() and need_resched() are now the
same in both uniprocessor and multiprocessor environments.
2000-05-29 20:00:55 +00:00
thorpej
65184f2470 Change the comment before the vm_page_zero_enable global to indicate
what it will now be used for.
2000-05-29 19:25:56 +00:00
mycroft
7385963fc9 Stylistic change. 2000-05-29 18:59:51 +00:00
mycroft
4db674fa50 According to Frank, buffers with dependencies *are* left on v_dirtyblks, so
remove the FSYNC_RECLAIM check and force them to be flushed.
2000-05-29 18:53:35 +00:00
mycroft
ced05c5744 Pull in IN_ACCESSED changes and some MNT_LAZY `bug fixes' from FFS to EXT2FS. 2000-05-29 18:41:07 +00:00
mycroft
33ec489188 Pull in IN_ACCESSED changes and some MNT_LAZY `bug fixes' from FFS. 2000-05-29 18:34:36 +00:00
mycroft
edfd1e6f32 Use LIST_{FIRST,NEXT,EMPTY}(). 2000-05-29 18:28:48 +00:00
mycroft
d747ada9c2 Add a new inode flags called IN_ACCESSED. This used in place of IN_MODIFIED
to record that the atime was updated.  In ffs_update(), we only do synchronous
writes if something *other* than the atime was changed.
2000-05-29 18:04:30 +00:00
jhawk
1e59d99d28 For all network drivers that call ether_ifattach(), and also
have _detach() functions:
  Ensure that softc keeps state about whether the attach succeeded,
  and make the detach function return immediately if the attach did
  not complete.
2000-05-29 17:37:12 +00:00
mycroft
941524439a Never call softdep_sync_metadata() in the FSYNC_RECLAIM case. Any pending
blocks are detached from the vnode at this point.  When the dependencies are
broken to enable writing the blocks, the vnode will be regenerated.  (The only
reason we sync buffers in this case is that they have to be detached from the
vnode.)
2000-05-29 17:19:20 +00:00
mycroft
c47adf55e0 In ffs_fsync(), remove the FSYNC_RECLAIM special case, so that it properly
waits for pending buffers, and doesn't throw away time stamp updates.
2000-05-29 17:12:06 +00:00
mycroft
ccf1cf4b69 MNT_WAIT -> FSYNC_WAIT 2000-05-29 16:28:27 +00:00
soren
e3ee997813 Different form of PCI bug workaround. Should make 2700 system work. 2000-05-29 15:45:15 +00:00
soren
6641d91d94 No Linux compat yet, but Ultrix works. 2000-05-29 15:44:22 +00:00
soren
da59451c97 Identify system controller model. 2000-05-29 15:43:50 +00:00
soren
ba3a485962 Static poisoning. 2000-05-29 15:43:32 +00:00
soren
66f14d2965 Whitespace. 2000-05-29 15:42:47 +00:00
mycroft
7513b8e18d Update an outdated comment.
Allow all powers of 2 from 2^0 to 2^16 for hz.
Enable hz==1200.
2000-05-29 15:05:10 +00:00
mycroft
8dcf08ff77 Improve the time_adj multiplier for the 100Hz and 1000Hz cases, and add a
1200Hz case.
2000-05-29 14:58:59 +00:00
nisimura
5448bca5b5 Make this file compilable. 3MAX+ has no ISDN. 2000-05-29 12:09:45 +00:00
tsubai
8cde93a435 * Support (not so) new cards. (only Cyclom-8YsP+ is tested)
* Make compilable with CY_DEBUG.
2000-05-29 12:05:41 +00:00
nisimura
a7c050472e Nuke #include directives found unnecessary. 2000-05-29 11:46:52 +00:00
simonb
e94f50731b Use u_int64_t for cp_time[] and the tk_* terminal counters. 2000-05-29 11:35:19 +00:00
nisimura
f7c88c8f18 Make sure to load FPA contents next time an FP insn is executed when
process_write_fpregs() changes pcb_fpregs[].
2000-05-29 11:19:46 +00:00
soda
fbc0def1f9 COMPAT_ULTRIX was moved from files.${MACHINE} to files.mips,
from Izumi Tsutsui.
2000-05-29 10:17:44 +00:00
nisimura
76f0ee4e32 Put an additional check to see curproc was an FPA owner process. 2000-05-29 09:47:19 +00:00
nisimura
87cd634474 Put addtional checks to see the curproc is an FPA owner process. 2000-05-29 09:43:33 +00:00
nisimura
8e19d02f25 Cleanup take two
- Nuke external function reference of savefpregs() which is already defined
  in mips/cpu.h.
- Adjust the comment tells "let user processes change CP0 status register
  freely might be dangerous."
2000-05-29 09:37:00 +00:00
nisimura
3f8e9c25b6 Make claried MDP_FPUSED usage.
- MDP_FPUSED flag indicates the process has executed at least one
  FP insn during its life time.
- pcb_fpregs storage is guaranteed zero initialzed.  If the process is FPA
  owner, savefpregs() must be called to synchronize it with FPA contents.
- No necessity to save FPA contents into pcb_fpregs prior to the whole
  storage is overwritten by process_write_fpregs().
2000-05-29 09:16:36 +00:00
oster
c11100526b Don't let the autodetection code get tripped up by negative mod-counters. 2000-05-29 02:57:34 +00:00
matt
c7c33f1747 make egcs happy: ioasic.c:327: warning: suggest parentheses
around arithmetic in operand of |
2000-05-29 02:16:57 +00:00
oster
f1f5c4d00e Fix a couple of typos. (Thanks Wiz! :) ) 2000-05-29 01:43:04 +00:00
itojun
4308599c5a disallow bind(2) with IPv4 mapped address for now. port number check is
insufficient at this moment and we can bind(2) two sockets listen on same
port number.

for real fix, we need to check inpcb table with in6pcb.  we can't
find inpcb chain from particular in6pcb chain (like finding tcbtable from tcb6)
luckily RFC2553 does not talk about bind(2) behavior for IPv4 mapped.
IPv4 mapped brings in too much complexities...
2000-05-29 00:03:18 +00:00
itojun
c0ccb49681 sync with reality in netbsd-current.
- pcb layer changes
- officially supported net interfaces
- minor typo
- draft # updates
2000-05-28 23:44:30 +00:00
thorpej
8576ef9a13 Add Cyclades-Z. 2000-05-28 23:06:39 +00:00
thorpej
0936213012 Add Cyclades Y and Z multiport serial adapters. 2000-05-28 23:05:19 +00:00
oster
39a667120f In the event that an up-to-date component cannot be located for a specific
position, see if there is a failed component still hanging around that
we can use instead (but still mark it as failed).  This leads to more
reasonable behaviour (and fewer surprises!) when autoconfiguring and
failed (or previously failed) components are still on the system.
2000-05-28 22:53:49 +00:00
jhawk
6513ba6e74 Make this compile with UHCI_DEBUG in the presence of
-Werror: uhci_dump is no longer static.
2000-05-28 22:02:05 +00:00
thorpej
2e7afc702d Update. 2000-05-28 21:49:02 +00:00
thorpej
e51303c17e Mirror last change to GENERIC. 2000-05-28 21:48:52 +00:00
jhawk
daa86a0be1 Add patchable "pnpbiosdebug" global if PNPBIOSDEBUG is compiled in,
and add PNPBIOSDEBUG_VALUE to initialize its value, defaulting to 1.
2000-05-28 21:46:04 +00:00
jhawk
fb6d063b8c pnpbios from 1.344 didn't config. s/pnpbios0/pnpbios?/ 2000-05-28 21:12:00 +00:00
pk
7da3d45dfc Cleanup iommu_attach(). 2000-05-28 20:55:54 +00:00
pk
57b382f034 Add a few comments. 2000-05-28 20:54:42 +00:00
matt
33889a5e6c Enable DDB. 2000-05-28 20:21:04 +00:00
thorpej
4af4c47f80 Tidy up a little, improve PnP BIOS section. 2000-05-28 20:11:59 +00:00
thorpej
b6c4eb81fd Massive cleanup and syncing with GENERIC 2000-05-28 20:10:29 +00:00
soren
5abcf38c02 Whitespace police. 2000-05-28 20:03:21 +00:00
ragge
f3eeb5b356 Remove vsio.h. 2000-05-28 19:42:31 +00:00
ragge
074bc79414 There is no reason at all to have DEC's internal state data structures for
the VS100 in our source tree. And especially not in /sys :-)
2000-05-28 19:42:01 +00:00
sommerfeld
bdc8251646 Change printing of cpu number in the prompt in the MULTIPROCESSOR case 2000-05-28 19:03:55 +00:00
jhawk
b4c87e6d41 Add proc0 to pidhashtbl so pfind(0) works.
Now trace/t 0 works in ddb, etc.
2000-05-28 18:52:32 +00:00
jhawk
0866399258 brain-oh in last. test logsoftc.sc_pgid, not p. 2000-05-28 18:31:13 +00:00
matt
166475069f fix it so it compiles. 2000-05-28 18:17:59 +00:00
jhawk
8a49d6bd31 Ensure that all callers of pfind() can deal with pfind(0) returning
a real procp* rather than NULL.
2000-05-28 18:17:07 +00:00
ragge
16f02724d6 Some updates to the DEUNA driver:
- Change the transmit logic to send from a pre-allocated buffer instead
  of doing DMA out of the mbufs directly. Timing shows that it takes
  4 times longer to map in the mbufs via the sgmap routines instead of
  just copying the data! This must be fixed sometine in the future.
- A bunch of other minor fixes.
2000-05-28 17:23:44 +00:00
sommerfeld
a56cb94b43 Deal with NULL file pointer for KTROP_CLEAR 2000-05-28 15:27:51 +00:00
takemura
5b3cb6b1a1 Add async I/O support.
FIOASYNC ioctrl command had been forwarded from wsmux to each mouse devices
and the devices had set their own event queue async mode. But no one had took
care of the event queue's mode of wsmux itself. Wsmux should make it's own
event queue async mode when it receive FIOASYNC command.
2000-05-28 10:33:14 +00:00
drochner
c461529353 regen 2000-05-28 10:25:25 +00:00
drochner
f8091908b5 -correct description for 3c905b-FX (100 Mb only)
-add Neomagic 256ZX
2000-05-28 10:24:57 +00:00
drochner
f8a6b48d66 Don't silently truncate the voff_t offset to vaddr_t when passing it to
udv_attach. Pass the whole voff_t instead and do an explicite overflow
check before it is passed to the device's mmap handler (as "int", sadly).
2000-05-28 10:21:55 +00:00
mycroft
dad58e313b Pull in indirect block unwind code from FFS. 2000-05-28 08:44:32 +00:00
mycroft
1ea529f6df DTRT when unwinding multiple levels. 2000-05-28 08:31:41 +00:00
mycroft
4fc7b946c2 When unwinding a failed allocation, make sure to nuke the unwound block from
the vnode's block list.  This fixes `itrunc3' panics (at least in some cases;
further testing is needed) and prevents further lossage later on.
2000-05-28 08:15:40 +00:00
gmcgarry
6fe0de17c6 Fixup copyright. 2000-05-28 07:18:58 +00:00
gmcgarry
4ba1e04ba2 Handle ADEV_CDROM in quirks table.
Quirk entry for another Toshiba cdrom.
2000-05-28 07:03:59 +00:00
gmcgarry
8d994b82fa Allow nfs root over token ring. Closes PR6629. 2000-05-28 07:01:09 +00:00
gmcgarry
69c227f1a2 Nuke IOASIC_INTR_ISDN which is for sample interrupts. 2000-05-28 06:16:00 +00:00
gmcgarry
57e5e86ed1 Merge pmax and alpha ISDN register definitions. 2000-05-28 06:13:40 +00:00
gmcgarry
6eb4356ecf IOASIC_INTR_ISDN is used for interrupts on every sample. We use DMA so
need IOASIC_INTR_ISDN_TXLOAD|IOASIC_INTR_ISDN_RXLOAD.
2000-05-28 06:07:31 +00:00
gmcgarry
dcec163ee3 Substitute bba for isdn placeholder. 2000-05-28 06:02:12 +00:00
mhitch
91dd4d9eb5 Remove local declaration of physmem_boardmax. The external physmem_boardmax
was not getting modified for 4MB SIMMS, and when fully populated with 8
SIMMS the memory size was configured at 128MB instead of 32MB.
2000-05-28 05:56:36 +00:00
thorpej
e03e9e8086 Rather than starting init and creating kthreads by forking and then
doing a cpu_set_kpc(), just pass the entry point and argument all
the way down the fork path starting with fork1().  In order to
avoid special-casing the normal fork in every cpu_fork(), MI code
passes down child_return() and the child process pointer explicitly.

This fixes a race condition on multiprocessor systems; a CPU could
grab the newly created processes (which has been placed on a run queue)
before cpu_set_kpc() would be performed.
2000-05-28 05:48:59 +00:00
oster
f329fb84ad We need to be slightly more clever during auto-configuration, to make
sure that we a) don't ignore components with correct mod-counters, and
b) do ignore components with bogus mod-counters.
2000-05-28 05:23:41 +00:00
matt
141dcca251 Add VAX660/670/680 support. 2000-05-28 05:17:25 +00:00
mycroft
4656dfd24f Add a new function to remove extra buffers when truncating a file. This is
more generic than the vinvalbuf(V_SAVEMETA) case, avoiding synchronous
operations when truncating to a non-zero length.
2000-05-28 04:13:56 +00:00
oster
1ddfaaf8fa Umm.. Complete is not equal to 'left to do'. Fix the math. 2000-05-28 03:42:23 +00:00
oster
e38b4355e2 Abort any parity re-writes before unconfiguring a RAID set.
Partially addresses PR#10182.
2000-05-28 03:00:31 +00:00
matt
5108d90ce5 Fix bpf output on fddi to actually work. Make it compatible with ULTRIX
and Tru64.
2000-05-28 02:49:35 +00:00
tv
ab415393d3 ep' has plug-and-play' support on all buses, including non-PnP ISA.
Attach ep* at isa instead of ep0, so we will autoconfigure all 3c5x9s.
2000-05-28 02:42:16 +00:00
matt
2864a7186a reclaim transmitted packets on receive interrupts. 2000-05-28 01:28:52 +00:00
oster
228570e110 When setting auto-config/rootable bits, only try to update the
component label if the component is actually alive.
2000-05-28 01:03:22 +00:00
oster
1aaf6772f1 - Add a mechanism for obtaining finer-grained 'progress' information
regarding reconstructs, copybacks, etc.

- RAID 0 doesn't do copybacks, but don't make raidctl sweat about it.
2000-05-28 00:48:30 +00:00
fvdl
3713246e34 Don't bother searching the qinfifo for SCBs to requeue in the BUSY
and QUEUE FULL cases; this is already done for all BAD_STATUS cases.

Make sure to requeue the SCB in the above cases internally in the driver,
the SCSI layer doesn't know how to deal with it properly.
2000-05-28 00:19:59 +00:00
fvdl
cb5289547f At least try to do something useful in the XS_BUSY case; don't cause
a panic by sleeping in an interrupt context.
2000-05-27 23:59:58 +00:00
mycroft
6a082e4797 Clear %ebp in the forked child, so we don't try to unwind past it. 2000-05-27 23:01:44 +00:00
scw
a5a054f2c9 Nuke HP_SEG_SIZE. Use NBSEG instead (as used by m68k_trunc_seg() et al),
which takes into account the mmu type.
2000-05-27 22:37:47 +00:00
mycroft
820e777524 Add *_EMPTY() and SLIST_NEXT(). 2000-05-27 22:17:54 +00:00
fvdl
4b7b35ae8a When a bus is accessed for the first time, reset it. Without this,
some devices may not be found if the BIOS (which would normally
do the reset at startup) is disabled. Should really be done from the SCSI
layer.

Implement the SCBUSIORESET ioctl.
2000-05-27 21:58:15 +00:00
he
5dedafcecd Add missing semicolon. 2000-05-27 21:46:42 +00:00
ragge
26acf7f88a Only map in map registers and the I/O page if they are not mapped in already. 2000-05-27 21:44:35 +00:00
ragge
8293b12111 Write kvtopte() and kvtophys() as inline assembler. GCC create quite bad
code for them, and they are only 2-3 instructions each if written by hand.
2000-05-27 21:17:06 +00:00
sommerfeld
f460c85cb3 Remove existing semaphore system locking mechanism and turn
sys_semconfig into a placebo system call, to avoid giving folks an
easy way to wedge processes which use semaphores.

NOTE: unlike 386bsd and freebsd, processes which did not have
semaphore undo records would not be affected by this problem (reducing
it from a serious local denial-of-service problem to a largely
cosmetic problem, since virtually nobody uses semaphores).  But the
code is just Wrong so we're ripping it out anyway.
2000-05-27 21:00:25 +00:00
matt
22519583f3 Add tadpole specific devices. 2000-05-27 20:56:51 +00:00
oster
26b4598736 Components which match on everything but the mod_counter are
renegades, and must be handled correctly.  In particular, they should
be added to their old auto-config set, but then immediately released.
Failing to do otherwise means that they potentialy end up in a
different (and competing!) RAID set which may auto-configure in place
of the correct one, and cause all sorts of chaos at auto-configure
time.
2000-05-27 20:29:14 +00:00
ragge
6cfde8f146 Remove the pcbtrap global variable, use a per-CPU variable instead. 2000-05-27 20:02:58 +00:00
thorpej
3a4393ff92 While DM9102A boards tend to have ISV-format SROMs (likely to describe
the HomePNA PHY typically connected to the external MII interface),
DM9102 implementations (often found on motherboards) do not.  Handle
this.
2000-05-27 19:42:06 +00:00
oster
e9b5b7aa5e Add a comment to clarify why we actually want the component label to
be considered a 'match' even if the mod_counter is wrong.
2000-05-27 19:12:03 +00:00
dante
39c7c9aff6 Change AdwInitCarriers in adwmcode.c
Add new AdwInitCarriers prototype in adwmcode.h
All of the supported adapters are now initialized calling a unique common
    function
2000-05-27 18:24:50 +00:00
oster
d2b2ed0970 Checking parity re-write status makes no sense on RAID 0, but let's
return something reasonable anyway.
2000-05-27 18:23:27 +00:00
scw
46807640c7 Add support for the OPTi 82c621 PCIIDE controller and its derivatives.
I only have a Compaq laptop on which to test this, so reports of
success/failure in other systems would be welcomed.
2000-05-27 17:18:41 +00:00
scw
1d2a3e79a9 Regen. 2000-05-27 17:12:36 +00:00
scw
713621eb0e Add entries for a couple of OPTi PCI-IDE controllers. 2000-05-27 17:11:37 +00:00
jhawk
3ac3c9b124 Oops, omitted the rename from last.
Function in this file is db_stack_trace_print(),
not db_stack_trace_cmd().
2000-05-27 16:44:41 +00:00
ragge
98d0ab9e1c Use machine instead of vax in include path. 2000-05-27 16:44:14 +00:00
nathanw
00369993f9 Whitespace police. 2000-05-27 16:38:02 +00:00
ragge
99baa81ae7 Rewrite cpu_fork(), it now looks like and works as other ports' cpu_fork()
(calling child_return() etc...). Have fun, Jason!
2000-05-27 16:33:04 +00:00
bouyer
e42c2ac5fb Ops, state should be RESET, not RECAL here. 2000-05-27 16:11:16 +00:00
jdolecek
943f329ed7 add a new mount flag ISOFSMNT_NOCASETRANS - if set, the file names are not
translated to lower case
2000-05-27 16:03:55 +00:00
simonb
4f6ebe8e2a The name of the KERN_PROC_ARGS sysctl is proc_args, not proc_argv. 2000-05-27 15:28:58 +00:00
scw
8e7a493bbc Protect against multiple inclusion. 2000-05-27 14:45:36 +00:00
scw
48c1f20cf8 s/schedcpu_percpu/schedstate_percpu/ 2000-05-27 14:25:00 +00:00
sommerfeld
0ee7e28d72 Add include of <sys/time.h> for now.. 2000-05-27 13:51:38 +00:00
kleink
0bc407a568 Spelling nit. 2000-05-27 12:22:24 +00:00
mason
972014e5a8 Make compile after scheduler state cleanup. 2000-05-27 11:44:54 +00:00
soren
ed0572ca92 Regen. 2000-05-27 11:40:04 +00:00
soren
eaef48d317 Add a few devices. 2000-05-27 11:38:31 +00:00
jdolecek
c5d51d433e fix prototype for fd_mod_free() - should fix port-mac68k/10063 2000-05-27 10:25:15 +00:00
ragge
aacf5a4bc1 Growel out the SCSI BUS ID from NVRAM instead of hard-code it. 2000-05-27 10:12:45 +00:00
thorpej
5410ee3607 Update a couple of comments for reality. 2000-05-27 06:29:35 +00:00
thorpej
6d02ce1e66 All users of the old sleep() are now gone; nuke it. 2000-05-27 05:00:47 +00:00
thorpej
21fc65e1a8 sleep() -> tsleep() 2000-05-27 04:52:27 +00:00
thorpej
d0a8b751b2 Don't use sleep() and a callout; just use tsleep(). 2000-05-27 04:46:24 +00:00
thorpej
b3b7588160 Don't use sleep() and callouts; just use tsleep(). 2000-05-27 04:42:14 +00:00
matt
dd266dbb2f Fix counting of output packets. Only count descriptors with TDES_LS set.
Also make transmit timeout logic more correct.
2000-05-27 04:26:32 +00:00
soren
4a6fea14b4 Correct ones, even. 2000-05-27 03:53:11 +00:00
soren
c77afc79a4 Forgot to define sd and cd majors. 2000-05-27 03:52:26 +00:00
simonb
abae45a32c Set *sizep correctly if returning the number of elements. Pointed out
by Anders Magnusson.

Honor elem_count in the KERN_PROC2 case, as well as overall buffer
space.  The only user-land code to use this set the elem_count to
"buffer_space / elem_size", so we've had no incorrect behaviour to date.
2000-05-27 03:24:50 +00:00
matt
fa1474c2eb This need <sys/sched.h> to compile. 2000-05-27 03:23:22 +00:00