Commit Graph

30497 Commits

Author SHA1 Message Date
Poul-Henning Kamp
362912ebcc Remove cache_purgeleafdirs(), it has been #if 0 for quite some time. 2002-02-17 20:40:29 +00:00
Poul-Henning Kamp
76b82a7ffb Don't even think about using v_id for magic tricks, v_id is giving
us enough trouble as it is for SMPng.
2002-02-17 20:39:42 +00:00
Daniel Eischen
1e599eee20 Regenerate these files after change to syscalls.master. 2002-02-17 17:42:47 +00:00
Daniel Eischen
bc874287e9 Fix prototype to sigreturn to use struct __ucontext instead of ucontext_t. 2002-02-17 17:41:28 +00:00
Daniel Eischen
0270d57aef Use struct __ucontext in prototypes and associated functions instead of
ucontext_t.  Forward declare struct __ucontext in <sys/signal.h> and
remove reliance on <sys/ucontext.h> being included.

While I'm here, also hide osigcontext types from userland; suggested
by bde.

Namespace pollution noticed by: Kevin Day <toasty@shell.dragondata.com>
2002-02-17 17:40:34 +00:00
Chris D. Faulhaber
efec00ac60 Error handling fixes for inflate. 2002-02-17 17:35:18 +00:00
Yoshihiro Takahashi
37be85a7b0 Correct typo. 2002-02-17 14:16:17 +00:00
Josef Karthauser
a10b07e4ec Fix a formatting error. 2002-02-17 12:41:50 +00:00
Josef Karthauser
97e5881fe1 KNF style the code, ready for an MFC. 2002-02-17 12:29:39 +00:00
Josef Karthauser
1b262fd0c5 KNF style the code, ready for an MFC. 2002-02-17 11:58:58 +00:00
Yoshihiro Takahashi
9f67ccb7e5 Move the bus_space_subregion function from the puc driver to the bus_space
sutff.

Reviewed by:	jhay
2002-02-17 09:41:23 +00:00
Yoshihiro Takahashi
9d139b79d4 - Split the routine to initialize a bus_space_handle into the separate
function.
- Only access a bus_space_handle if the resource type is SYS_RES_MEMORY or
  SYS_RES_IOPORT.
- Add the bus_space_subregion supports.
2002-02-17 09:16:45 +00:00
Yoshihiro Takahashi
a6e1e07f4d MFi386: revision 1.167 2002-02-17 08:56:12 +00:00
Yoshihiro Takahashi
6bcb5293f0 MFi386: revision 1.392 2002-02-17 08:55:42 +00:00
Julian Elischer
dcfe2243f0 Purely whitespace changes 2002-02-17 08:14:15 +00:00
Matthew Dillon
e1bca29fae replace the embedded cr_mtx in the ucred structure with cr_mtxp (a mutex
pointer), and use the mutex pool routines.  This greatly reduces the size
of the ucred structure.
2002-02-17 07:30:34 +00:00
Matt Jacob
b894188248 Support for f/w crash dumps (2200 && 23XX).
If you want QLogic to look at a potential f/w problem for FC cards, you really
have to provide them info in the format they expect. This involves dumping
a lot of hardware registers (> 300 16 bit registers) and a lot of SRAM
(> 128KB minimum). Thus all of this code is #ifdef protected which will
become an option so that the memory allocation of where to dump the crash
image is pretty expensive. It's worth it if you have a reproducible problem
because they have some tools that can tell them, given the f/w version,
the precise state of everything.

MFC after:	1 week
2002-02-17 06:38:22 +00:00
Matt Jacob
3f02619fb8 Hints for WWN are now WWNN and/or WWPN.
MFC after:	1 week
2002-02-17 06:34:21 +00:00
Matt Jacob
01ff579d86 Add in support firmware crash dumps. Change CFG options to split
WWN into WWNN and WWPN.

MFC after:	1 week
2002-02-17 06:32:58 +00:00
Warner Losh
c92e45e4a1 Bulk changes made during the BSDcon kernel summit and travel afterwards.
Appologies for making this one bulk commit, but I have tested all these
changes together and don't want to break anything by trying to disentangle
it.

o Make debugging a sysctl/tunable
o Remove flags word from yenta chip info, it is unused
o Make 16-bit card I/O range and 32-bit card I/O range tunables
o Start the rename of pccbb to cbb to match NetBSD by misc renames.
o Kill the now bogus list of softcs to create kthread.  Instead, just
  create the kthread in the attach routine.
o Remove sc_ from some structure names.  It isn't needed.
o Refine chipset lookup code.
o Match generic PCI <-> CardBus bridges.  We specifically don't generically
  match PCI PCMCIA bridges because they are not, with one exception, yenta
  devices.
o Add some comments about the why we need to have a function table ala
  OLDCARD
o The PCI interrupt routing by using the ExCA registers is needed for
  for all bridges, per the spec, not just TI ones.
o Collapse TOPIC95 and TOPIC95B.
o Using the ToPIC 97 and 100 datasheets, try to support these bridges better,
  but more work is needed.
o Generally clarify some XXX comments and add them in a few places where
  things didn't look right to me.
o Move interrupt generating register access until after we establish an ISR.
o Add support for YV and XV cards.  X and Y are numbers to be determined
  later (but maybe never).
o factor powerup code for 16-bit and 32-bit cards.
o When a card supports more than one voltage, prefer the lowest supported
  volage.  Windows does this, and MS's design guides imply this is the
  right thing to do.
o Document race between kthread_exit(0) and kldunload's unmapping of pages
  that John Baldwin and I discovered.
o Debounce the CSC interrupt a little better.
o When a 16-bit card is inserted when we don't have a pccard child,
  warn about it better.  Ditto for 32-bit card.
o Ack ALL the interrupt bits that we get, not just 0x1.
o maybe a couple minor style nits corrected.
2002-02-17 03:11:11 +00:00
Julian Elischer
2eb927e2bb If the credential on an incoming thread is correct, don't bother
reaquiring it. In the same vein, don't bother dropping the thread cred
when goinf ot userland. We are guaranteed to nned it when we come back,
(which we are guaranteed to do).

Reviewed by:	jhb@freebsd.org, bde@freebsd.org (slightly different version)
2002-02-17 01:09:56 +00:00
Julian Elischer
39a2e724e1 remove __P before next commit
Reviewed by:	jhb
2002-02-17 00:59:58 +00:00
Dag-Erling Smørgrav
7d8aca49fc I am sick of being told that "cstsevent occures". 2002-02-16 23:00:27 +00:00
Brian Feldman
1b56782026 (Doing that whole test-immediately-after-commit-thing like obrien sez:)
Forgot to include lock.h and mutex.h for GIANT_REQUIRED.
2002-02-16 17:44:43 +00:00
Brian Feldman
1fd9f8f438 Add revoke_and_destroy_dev(), to be used by devices which decide when
they choose to destroy themselves without regard to whether or not
they are open.
2002-02-16 17:35:05 +00:00
John Hay
9c564b6c92 Add the puc (PCI "Universal" Communications) driver. The idea and some of
the structure definitions come from NetBSD to make it easier to share card
definitions. The driver only acts as a shim between the pci bus and the
sio driver. Later pci parallel ports could also be supported through this
driver. Support for most single and multiport pci serial cards should be
as simple as adding its definition to pucdata.c

Tested with the following pci cards:
Moxa Industio CP-114, 4 port RS-232,RS-422/485
Syba Tech Ltd. PCI-4S2P-550-ECP, 4 port RS-232 + 2 parallel ports
Netmos NM9835 PCI-2S-550, 2 port RS-232
2002-02-16 15:12:14 +00:00
Yoshihiro Takahashi
911eb59369 MFi386: revisions 1.334 and 1.335 2002-02-16 13:13:22 +00:00
Yoshihiro Takahashi
35c1f59123 MFi386: revisions 1.495 and 1.496 2002-02-16 12:59:58 +00:00
Yoshihiro Takahashi
1b629611b6 Added #include <sys/systm.h> 2002-02-16 12:58:16 +00:00
Søren Schmidt
72afad5ba4 Dont try to attach ATA RAID's if none found. 2002-02-16 08:10:24 +00:00
Bruce Evans
e9196dc5f7 Don't leave garbage in parts of fpregs in the fxsr case. All callers
(procfs and ptrace) supply kernel stack garbage, so kernel context was
leaked to userland.

Reviewed by:	des
2002-02-16 07:07:54 +00:00
Bruce Evans
a21759a1a9 FIxed the following style bugs:
- clobbering of jsp's $Id$ by FreeBSD's old $Id$.
- long lines in recent KSE changes (procfs_ctl.c).
- other style bugs in KSE changes (most related to an shadowed variable
  in procfs_status.c -- the td in the outer scope is obfuscated by
  PFS_FILL_ARGS).

Approved by:	des
2002-02-16 05:59:26 +00:00
Bruce Evans
a76d60f014 FIxed the following style bugs:
- clobbering of jsp's $Id$ by FreeBSD's old $Id$.
- lost Berkeley id in procfs_dbregs.c
- long lines in recent KSE changes.
- various gratuitous differences between procfs_*regs.c.
2002-02-16 05:38:07 +00:00
Bruce Evans
ff3741f519 Fixed missing PHOLD()/PRELE().
Obtained from:	procfs_dbregs.c
Approved by:	des
2002-02-16 04:05:32 +00:00
Josef Karthauser
4d0649fbad Merge from NetBSD:
Pave the way for USB2, by replacing 'lowspeed' with 'speed', so
that it can take the values USB_SPEED_LOW, USB_SPEED_FULL or in
time USB_SPEED_HIGH.
2002-02-16 00:51:26 +00:00
Josef Karthauser
c67fd26e98 Re-add bmaj to the cdevsw's, but don't compile it in on -current.
This makes the code more portable between -current, -stable and the
other BSDs.
2002-02-15 22:54:10 +00:00
Garrett Wollman
3b7a4c4b1d Resurrect one of the easiest changes from my big include files roll-up
patch from a year ago: give file flags their own type.  This does not
(yet) change the type used by system calls or library functions.
The underlying type was chosen to match what is returned by stat().
2002-02-15 22:15:39 +00:00
Bruce Evans
aa99bc993e Fix my recent breakage of some modules. 2002-02-15 15:45:34 +00:00
Thomas Moestl
5dc4151c36 Add a delta missed in the last iommu.c commit. This unbreaks the sparc64
kernel build.

Pointy hat to:	tmm
2002-02-15 14:48:54 +00:00
Robert Drehmel
2649cfd7fd - Remove unneeded variable.
- Remove change for my local configuration that slipped in with
   the last commit; I am having problems booting when multiple SCSI
   disks are attached, so I will change this part as soon as I find
   a solution, anyway.
2002-02-15 13:22:09 +00:00
Bruce Evans
1e92845e1b Garbage-collect options ACPI_NO_ENABLE_ON_BOOT, AML_DEBUG, BLEED,
DEVICE_SYSCTLS, KEY, LOUTB, NFS_MUIDHASHSIZ, NFS_UIDHASHSIZ, PCI_QUIET
and SIMPLELOCK_DEBUG.
2002-02-15 13:16:11 +00:00
Robert Drehmel
0259c50ec2 This file is now unneeded. 2002-02-15 13:11:00 +00:00
Robert Drehmel
6d41f1a9db - Do not include a NetBSD header as it is not needed anymore.
- Remove two constants that were needed in conjuction with the
   NetBSD disklabel header.  Use the FreeBSD equivalents.
   To boot from NetBSD/sparc64 partitions, define LABELOFFSET to
   be 128.
 - Do not use the complete open firmware path to filter out cdrom drives.
   No path containing "cdrom" is detected as a disk now.
 - Simplify some code.
2002-02-15 13:09:34 +00:00
Robert Drehmel
c119807ba8 Add the FreeBSD/sparc64 bootblock and its make file. 2002-02-15 12:49:20 +00:00
Ruslan Ermilov
51c8ec4a3d Moved the 127/8 check below so that IPF redirects have a chance of working.
MFC after:	1 day
2002-02-15 12:19:03 +00:00
Bruce Evans
039b360dac Garbage collect options AVM_A1_PCI, AVM_A1_PCMCIA, DEBUG_LINUX, DEV_APM,
GUS_DMA, GUS_DMA2, GUS_IRQ, OLTR_NO_BULLSEYE_MAC, OLTR_NO_HAWKEYE_MAC,
OLTR_NO_TMS_MAC and PCIC_RESUME_RESET.
2002-02-15 10:19:39 +00:00
Bruce Evans
89f37afac5 #include "opt_compat.h" so that the support for old ioctls can actually
be compiled.  Old tty ioctls are still used (possibly ifdef'ed) in at
least the following programs in the src tree:
  atc des ee fontedit gdb gdbserver lock ntp perl5 tcsh telnet top vttest

rp.c:
Unremoved used variables so that the support for old ioctls actually
compiles.

Not tested at runtime by:	bde
2002-02-15 08:28:34 +00:00
Bruce Evans
1e9ea774c0 Added undocumented options AAC_DEBUG, ACD_DEBUG, ACPI_MAX_THREADS,
ACPI_NO_SEMAPHORES, ASR_MEASURE_PERFORMANCE, AST_DEBUG, ATAPI_DEBUG,
ATA_DEBUG, BKTR_ALLOC_PAGES, BROOKTREE_ALLOC_PAGES, CAPABILITIES,
COMPAT_SUNOS, CV_DEBUG, MAXFILES, METEOR_TEST_VIDEO, NDEVFSINO,
NDEVFSOVERFLOW, NETGRAPH_BRIDGE, NETSMB, NETSMBCRYPTO, PFIL_HOOKS,
SIMOS, SMBFS, VESA_DEBUG, VGA_DEBUG.

Start using #! to comment out negative options and ## to comment out
broken options.

atapi-all.c:
Fixed rotted bits that were hiding under ATAPI_DEBUG.

atapi-cd.c:
#include "opt_ata.h" so that ACD_DEBUG is actually visible.

ata/atapi-tape.c
#include "opt_ata.h" so that AST_DEBUG is actually visible.
2002-02-15 07:08:44 +00:00
Luigi Rizzo
e88516c29b Lots of improvement to the bridging code.
In order of importance:

 + each cluster now uses private data structures (filtering and
   local address tables) so you can treat them as fully independent
   switches. This part of the work was supported by:
        Cisco Systems, Inc. - NSITE lab, RTP, NC.

 + cleaned up the handling of configuration, so the system will behave
   much better when real or pseudo devices are dynamically attached
   or detached. It should also not panic anymore on systems with large
   number of devices, closing a few existings PRs on the topic.

 + while at it, add support for VLAN. This means that a FreeBSD box
   can now work as a real VLAN switch, with trunk interfaces etc.
   As an example:
        ifconfig vlan0 vlan 3 vlandev dc0
        ifconfig vlan1 vlan 4 vlandev dc0
        net.link.ether.bridge_cfg="vlan0:3,dc1:3,vlan1:4,dc1:4"
   uses dc0 as a trunk interface, and dc1 and dc3 as ports on vlans 3 and 4
   You get the idea...
   NOTA BENE: by default bridge_cfg is initialised to "" so even if
   you enable bridging, no packets will be bridged until you set the
   list of interfaces on which you want this to happen.

 + large restructuring of the code, moving private vars and types from
   bridge.h to bridge.c.

 + added a lot of comments to the code to explain how to use it.
2002-02-15 05:11:11 +00:00
Luigi Rizzo
cad15830dc Remove useless initialization to 0 of a couple of global variables. 2002-02-15 04:57:18 +00:00
Bruce Evans
8c3d74f4bf Fixed a typo in rev.1.65 that gave a reference to a nonexistent variable.
This was not detected by LINT because LINT is missing COMPAT_SUNOS.
2002-02-15 03:54:01 +00:00
Luigi Rizzo
e522304423 Make this compile after changes to kse structures.
This escaped because DEVICE_POLLING is disabled in LINT being
not compatible with SMP. In fact, it is only a runtime problem,
so if we could recognize that we are building a LINT kernel
we could as well disable the check for SMP being defined.

Reported-by: Joe Clarke
2002-02-15 02:50:07 +00:00
Andrew Gallatin
9ffbfb248b Spell #if 0 correctly 2002-02-14 22:29:03 +00:00
John Baldwin
dfd7dc61b9 Remove an unneeded include of sys/sx.h. An older pre-commit version of
the filedesc locking used an sx lock for the filedesc lock rather than a
mutex which is why the include was here.
2002-02-14 18:18:25 +00:00
Brian Feldman
d515a5410b Fix a bug introduced in rev.1.40 which can cause systems to crash when
detaching USB devices.  Specifically, a variable which was not meant
to be reused was, in fact, being reused.
2002-02-14 08:22:37 +00:00
Josef Karthauser
c0af27c95f Regenerate. 2002-02-14 03:03:08 +00:00
Josef Karthauser
09ecaa66fc Support the HP 5400C scanner.
PR:		kern/34783
2002-02-14 02:51:12 +00:00
Benno Rice
5244eac968 Complete rework of the PowerPC pmap and a number of other bits in the early
boot sequence.

The new pmap.c is based on NetBSD's newer pmap.c (for the mpc6xx processors)
which is 70% faster than the older code that the original pmap.c was based
on.  It has also been based on the framework established by jake's initial
sparc64 pmap.c.

There is no change to how far the kernel gets (it makes it to the mountroot
prompt in psim) but the new pmap code is a lot cleaner.

Obtained from:	NetBSD (pmap code)
2002-02-14 01:39:11 +00:00
Bruce Evans
2598b9f117 Fixed sign extension bugs in previous commit. They didn't completely
break scheduling because negative priorities were most fixed up by
converting kg_pri_user back to the correct type.

Fixed some style bugs in previous commit (non-terminated sentence fragments
and regressions in comments).
2002-02-14 01:21:23 +00:00
Josef Karthauser
7dcd88f85f Rework revision 1.12, and wrap the bmaj entry with an #if doesn't
compile it in on FreeBSD-current, but does in all other cases
(-stable, NetBSD, OpenBSD, etc).
2002-02-14 00:35:03 +00:00
Josef Karthauser
d0d80d05a6 Reinstate revision 1.14. The empty uscannerioctl() was accidently
re-added during a recent NetBSD merge.
2002-02-14 00:32:03 +00:00
Bruce Evans
ee831e51a6 Don't confuse a struct with its first member. This fixes:
./@/i386/i386/machdep.c: In function `init386':
./@/i386/i386/machdep.c:1700: warning: assignment from incompatible pointer type
2002-02-13 21:38:48 +00:00
Max Khon
8cfa8f7ec2 remove superflous empty line (in preparation to MFC) 2002-02-13 19:36:14 +00:00
Alfred Perlstein
5d8e635779 Re-enable WITNESS for GENERIC. Since the 5.x branch is mostly about
SMP we'd like as much feedback as possible from users about possible
locking problems as early as possible.

To negate most of the performance impact I've also enabled
WITNESS_SKIPSPIN.  I've done this as we've been running WITNESS
over the spinlock code for a while without incident and it goes a
long way to making the performance problems of WITNESS much more
bearable.

Users who should be running current should know about turning WITNESS
off for performance reasons.

That said and done, WITNESS could/should be made into a tuneable,
but we'll leave that as an excersize to those that want to disable
it without a kernel recompile.
2002-02-13 18:47:50 +00:00
Prafulla Deuskar
a59716d2d8 - Added support for receive in multiple
descriptors. This simplifies code for jumbo frames.
- Cleaned up coding conventions to make code more unix-like.
- Cleaned up code in if_em_fxhw.c and if_em_phy.c.
  Added relevant comments.

MFC after:	1 week
2002-02-13 18:19:27 +00:00
Thomas Moestl
89a87417d6 Calculate physmem before calling init_param2().
Submitted by:	jake
2002-02-13 17:05:56 +00:00
Thomas Moestl
9a60579c15 Avoid crashing in early boot when WITNESS is enabled by moving the
mtx_init() for intr_table_lock after the globaldata pointer
initialization.
2002-02-13 16:36:44 +00:00
Thomas Moestl
71ff61ee93 Add counter.c and sbus.c. Unify style. 2002-02-13 16:29:51 +00:00
Thomas Moestl
54a7de96bc Add the counter-timer node to the exclusion list, as it is handled
specially. While being there, sort that list.
2002-02-13 16:28:40 +00:00
Thomas Moestl
fac409f6bf Use stxa_sync() when accessing the LSU control register to avoid undefined
behaviour.
2002-02-13 16:25:33 +00:00
Thomas Moestl
fd2ee897e4 Use stxa_sync() when accessing the diagnostic registers to invalidate
caches; this is needed to avoid undefined behaviour.
Clean up a bit.
2002-02-13 16:20:38 +00:00
Thomas Moestl
bb2b9370c7 Add support for the counter-timer which is included in the Sun U2S and
U2P bridges as a time counter.
2002-02-13 16:16:36 +00:00
Thomas Moestl
633541ac6e Add support for the SBus, which is used in early Sun UltraSPARC machines.
Ported from NetBSD.
2002-02-13 16:11:36 +00:00
Thomas Moestl
e37d222c43 Merge r1.39 from NetBSD (manage both streaming caches for psycho pairs).
Use explicit bus space accesses instead of mapping the device memory
into kva.
Fix support for psycho pairs, and catch up with iommu code changes.
2002-02-13 16:07:59 +00:00
Thomas Moestl
e6c7af37bc Merge r1.42 of iommu.c and r1.9 of iommuvar.h from NetBSD (this adds
support for managing both streaming caches on psycho pairs).
Use explicit bus space accesses instead of mapping the device memory into
kva.
Move DVMA allocation to the map creation/dma memory allocation functions.
2002-02-13 15:59:17 +00:00
Thomas Moestl
64bc899300 Clean up bus space debugging support; change sparc64_bus_mem_map() to
take a bus tag and handle as argument instead of a i/o space id and a
physical address, now that nexus handles device memory resource
allocations.
2002-02-13 15:51:57 +00:00
Thomas Moestl
68716de3ec Define constants for the CPU implementation id; export the dectected id
as cpu_impl.
2002-02-13 15:47:12 +00:00
Thomas Moestl
95c7d7d47e Don't panic when no interrupt map can be found for a PCI bus; this seems
to happen on some models, like the Netra T1.
2002-02-13 15:44:58 +00:00
Thomas Moestl
f4a4c79dc0 Fix typos in a comment. 2002-02-13 15:43:42 +00:00
Thomas Moestl
9fb2b0d55e Add a few new functions/macros: intr_disable() and intr_restore() to
disable interrupts completely, and stxa_sync(), which performs a store
immediately followed by a membar #Sync with interrupts disabled (this
is needed for writes to diagnostic registers).
2002-02-13 15:40:05 +00:00
Thomas Moestl
c51aa38906 Minor bug fixes (add a missing break, correct the resource ranges, remove
a memory leak).
2002-02-13 15:35:22 +00:00
Robert Watson
92b98fdabe Remove WITNESS from GENERIC by default: as we grow more locks, this gets
slower, and may be impeding adoption of -CURRENT by developers.  We
recommend turning on WITNESS by default on crash boxes, and when doing
locking development.  It will probably get turned on by default for a week
or two following any major locking commits, also.

Approved by:	all and sundry (jhb, phk, ...)
2002-02-13 07:44:59 +00:00
Scott Long
0e6020f359 Add ID's for a couple of upcoming cards.
MFC after:	1 day
2002-02-13 07:44:43 +00:00
Archie Cobbs
b5a60ddb7e Fix another bug in handling of multi-link sequence numbers.
MFC after:	1 week
2002-02-13 00:58:49 +00:00
Yaroslav Tykhiy
09ffa9ad5e ^U kills an entire input line in most applications,
including the default terminal canonical mode.
So let ddb(4) be no exception from this rule.

Pointed out by: Mark Peek <mark@peek.org>
2002-02-12 23:38:40 +00:00
David Malone
6df7ca7b17 Add an option CPU_ATHLON_SSE_HACK which attempts to enable the SSE
feature bit on newer Athlon CPUs if the BIOS has forgotten to enable
it.

This patch was constructed using some info made available by John
Clemens at http://www.deater.net/john/PavilionN5430.html

Reviewed by:	-audit
MFC after:	3 weeks
2002-02-12 21:13:02 +00:00
David Malone
34221a4505 Move do_cpuid() from a identcpu.c into cpufunc.h. 2002-02-12 21:06:48 +00:00
Archie Cobbs
3cbeb9758d Fix bug in previous commit.
Submitted by:	Harti Brandt <brandt@fokus.gmd.de>
2002-02-12 18:33:10 +00:00
Brooks Davis
e2119ba50b Add support for the Linksys WMP-11, Prism 2.5, PCI adaptor.
Submitted by:	Thomas Skibo <skibo@pacbell.net>
MFC after:	2 weeks
2002-02-12 17:52:11 +00:00
Alan Cox
9fbd7ccf00 o Clearing p/td_retval[0] after aio_newproc() is unnecessary. (We stopped
calling rfork() to create aio threads in revision 1.46.)
 o Don't recompute the FILE * when it's already stored in the kernel's AIOCB.
2002-02-12 17:40:41 +00:00
Søren Schmidt
d99689e95c Add support for the Cenatek Rocket Drive. 2002-02-12 16:59:28 +00:00
Søren Schmidt
2c028bf06a Fix buglets in the ATAPI resume code.
This also fixes an old bug where some ATAPI devices went into
funny mode on an 'atacontrol reinit' command.
2002-02-12 13:21:51 +00:00
Yoshihiro Takahashi
482195cab8 MFi386: revision 1.164 2002-02-12 13:21:32 +00:00
Yoshihiro Takahashi
aa3180fc02 MFi386: revision 1.391 2002-02-12 13:21:13 +00:00
Søren Schmidt
e1605c6270 Major update of the ATA RAID code, part 2:
More cleanups of the RAID1 failure mode code.

Add functionality that writes the changed RAID config setup
back to the disks (in controller BIOS specific format), so
that a reboot will make the BIOS pick up the changed config.
2002-02-12 11:35:15 +00:00
Alan Cox
7416057d53 Remove an unused (but initialized) variable from vmapbuf(). 2002-02-12 05:50:43 +00:00
Warner Losh
3fe83829bf Two fixes from Jonathan Hanna:
1) We shouldn't continue when we get a RX complete because we ack it
	   and the TX complete.
	2) Fix a couple of spl leaks
(why splbio is needed in ISR, I cannot understand).

MFC after: 3 days
2002-02-12 05:32:58 +00:00
Alan Cox
96347d1e6d The previous commit included a change to fill_kinfo_proc() that results
in a NULL pointer dereference.  Repair this mistake.
2002-02-12 04:21:28 +00:00
Jonathan Lemon
0cab7c4b08 When a duplicate SYN arrives which matches an entry in the syncache,
update our lazy reference to the inpcb structure, as it may have changed.

Found by: dima
2002-02-12 02:03:50 +00:00
Mike Smith
8046c4b998 Don't claim to have routed an interrupt when the method actually returned an
error.
2002-02-12 01:28:49 +00:00
Andrew Gallatin
0483b1a8f2 Enable polling to be configured into kernels on non i386 platforms. Note that
poll_in_trap is only implemented on i386.  I've tested this on alpha.

Approved by: luigi
2002-02-12 00:26:06 +00:00
Luigi Rizzo
daccb6386b MFS: synchronize the code with the version in -stable, specifically:
+ SYSCTL_ULONG -> SYSCTL_UINT
 + some procedure renaming and variable rearrangement
 + fix the 'interface going deaf' problem same as in -stable.
2002-02-11 23:56:18 +00:00
Mike Silbersack
27d5f39f68 Remove mbuf exhaustion warning messages; these are handled by the
mbuf system in a rate-limited fashion now.

MFC after:	3 days
2002-02-11 23:38:30 +00:00
Mike Silbersack
a9e6a9792e Remove mbuf exhaustion warning messages; these are handled by the
mbuf system in a rate-limited fashion now.

MFC:	Already performed due to sloppiness.
2002-02-11 23:29:15 +00:00
Julian Elischer
2c1007663f In a threaded world, differnt priorirites become properties of
different entities.  Make it so.

Reviewed by:	jhb@freebsd.org (john baldwin)
2002-02-11 20:37:54 +00:00
Søren Schmidt
15641a2f41 Add support for the HighPoint HPT374 4 channel ATA chip.
Sponsored by: Isilon Systems.
2002-02-11 15:48:04 +00:00
Josef Karthauser
d740688b87 Fix some bugs in the ohci driver with respect to irq setup failure.
Submitted by:	nyan
2002-02-11 14:39:57 +00:00
Yaroslav Tykhiy
732681a789 Teach ddb(4) to delete to the beginning of its command line on ^U.
PR:		kern/28976
Submitted by:	Nickolai Zeldovich <kolya@orbit.zepa.net>
2002-02-11 14:14:42 +00:00
Josef Karthauser
d41fcbf0d0 Merge from NetBSD: revs 1.89 and 1.90.
Also, add some 'const's to supress warnings. (Submitted back to NetBSD).

The original logs from NetBSD:

	----------------------------
	revision 1.90
	date: 2001/12/03 01:47:12;  author: augustss;  lines: +4 -4
	Handle vendor/product lookup with a common routine.
	----------------------------
	revision 1.89
	date: 2001/12/02 23:25:25;  author: augustss;  lines: +18 -2
	Add a subroutine to search for a vendor/product pair.
	----------------------------
2002-02-11 10:09:29 +00:00
Yoshihiro Takahashi
49d069f669 Fall through from AT_TYPE_DIRECT to AT_TYPE_CDROM.
Old ATAPI CD-ROM drives return 0 (direct-access) as the type of the device.

(The ata driver has the same problem.)

MFC after:	3 days
2002-02-11 05:46:25 +00:00
David E. O'Brien
952539e39a Allow one to specify the AWK used in the environment(commandline).
Gawk is blowing up when run natively on the sparc64 -- leading to totally
bogus kernel values (all "0x0").  Good ole BWK awk works fine however.
2002-02-11 03:54:30 +00:00
Bruce Evans
d2f22d707a Garbage-collect the "LOCORE" version of MPLOCKED. 2002-02-11 03:41:59 +00:00
Josef Karthauser
f2671fcf9f Regenerate. 2002-02-11 03:36:13 +00:00
Josef Karthauser
2097055fac Merge from NetBSD.
Add lots of new scanner devices:

	AGFA SNAPSCAN1236U
	AGFA SNAPSCANE40
	AGFA SNAPSCANE50
	AGFA SNAPSCANE20
	AGFA SNAPSCANE25
	AGFA SNAPSCANE26
	AGFA SNAPSCANE52
	CANON N656U
	HP 3400CSE
	SCANLOGIC 336CX
	MUSTEK BEARPAW1200F
	MUSTEK 600USB
	MUSTEK 1200USBPLUS
	NATIONAL BEARPAW2400
	EPSON 640U
	EPSON 1650
	EPSON GT9700F
	UMAX ASTRA3400
	ULTIMA 1200UBPLUS
2002-02-11 03:35:53 +00:00
Josef Karthauser
4f26a426ab Quiet a qualifier warning. 2002-02-11 03:29:35 +00:00
Josef Karthauser
ce3eae9093 Merge from NetBSD: revs 1.55 and 1.56
Original NetBSD logs:

	----------------------------
	revision 1.56
	date: 2001/12/03 01:47:12;  author: augustss;  lines: +5 -3
	Handle vendor/product lookup with a common routine.
	----------------------------
	revision 1.55
	date: 2001/12/02 23:25:25;  author: augustss;  lines: +8 -1
	Add a subroutine to search for a vendor/product pair.
	----------------------------
2002-02-11 03:15:08 +00:00
Josef Karthauser
50a56fbebd Merge from NetBSD: revs 1.12 and 1.21 - 1.23
Original NetBSD log messages are:

	----------------------------
	revision 1.23
	date: 2001/12/12 15:48:18;  author: augustss;  lines: +132 -114
	Add a scanner quirk for keeping the pipes open between device opening.
	Idea from Enami.
	----------------------------
	revision 1.22
	date: 2001/12/03 01:47:13;  author: augustss;  lines: +8 -16
	Handle vendor/product lookup with a common routine.
	----------------------------
	revision 1.21
	date: 2001/12/01 09:42:39;  author: enami;  lines: +4 -4
	Shorten wmesg so that they can be distinguished in ps/top output.
	----------------------------
	revision 1.12
	date: 2001/01/23 14:04:14;  author: augustss;  lines: +7 -1
	Make sure driver attach/detach events are generated in a
	consistent manner.
	----------------------------

PR:
Submitted by:
Reviewed by:
Approved by:
Obtained from:
MFC after:
2002-02-11 02:57:50 +00:00
Josef Karthauser
2c0634eab6 ANSIfy the function declarations, in line with NetBSD. 2002-02-11 02:25:47 +00:00
Bruce Evans
196c1aa4b8 Move the declaration of panic() from sys/param.h back to sys/systm.h.
Almost all .c files have to include <sys/systm.h> for more than its
declaration of panic(), so little is gained from declaring panic() in
a wrong place.  This probably depends on missing garbage collection
of the includes of <sys/systm.h> that were added to get snprintf()
declared for old versions of the ktr macros.
2002-02-11 02:13:18 +00:00
Josef Karthauser
d7b35d44a1 Merge from NetBSD: revs 1.43 + 1.45
From the NetBSD logs:

    revision 1.45
    date: 2001/11/29 11:07:12;  author: augustss;  state: Exp;  lines: +12 -2
    Plug a memory leak in an error case.
    ----------------------------
    revision 1.43
    date: 2001/10/19 15:30:25;  author: nathanw;  state: Exp;  lines: +5 -3
    Match printers that report their interface as IEEE 1284 in addition to
    bidirectional.
2002-02-11 01:04:46 +00:00
Dima Dorfman
364efeccb0 Silence unused variable warning in the !KLD_MODULE case.
Submitted by:	archie
2002-02-10 22:22:05 +00:00
Poul-Henning Kamp
d9888e41d5 GC the unused einval()
Obtained from:	~bde/sys.dif.gz
2002-02-10 22:07:41 +00:00
Poul-Henning Kamp
58a24f7938 Style(9) nits.
Obtained from:	~bde/sys.dif.gz
2002-02-10 22:04:44 +00:00
Poul-Henning Kamp
40f7b5a9cc Various nit-picking, mostly of style(9) character.
Obtained from:	~bde/sys.dif.gz
2002-02-10 22:00:20 +00:00
Robert Watson
1745909176 Add a comment indicating that the locking protocol should be updated
to be 'L L L' for vop_getattr().  Don't update it yet, because there
are still many offenders.
2002-02-10 21:46:16 +00:00
Robert Watson
5da271f5a6 Add a comment indicating that VOP_GETATTR() is called without appropriate
locking in the core dump code.  This should be fixed.
2002-02-10 21:45:16 +00:00
Robert Watson
1ea030d8fe Make sure to hold vnode lock when calling into VOP_GETATTR().
Discussed with:	mckusick, phk
2002-02-10 21:44:30 +00:00
Poul-Henning Kamp
e087ce2dd2 Staticize the malloc definitions.
Obtained from:	~bde/sys.dif.gz
2002-02-10 21:42:44 +00:00
Poul-Henning Kamp
f67a6639a2 Remove spurious ';'
Obtained from:	~bde/sys.dif.gz
2002-02-10 21:36:13 +00:00
Robert Watson
894c9fe04e Add a comment indicating that the vnode locking in this section of the
kernel linker code may be wrong: it fails to hold a lock across the
call to VOP_GETATTR(), and vn_rdwr() with IO_NODELOCKED.
2002-02-10 21:29:02 +00:00
Robert Watson
c0a9dc83c8 Make sure to grab vnode lock on a vnode before calling VOP_GETATTR()
to perform an ownership test in revoke().  This is also required for
MAC hooks so that the vnode lock is held during a call to the MAC
framework.  Release the lock before calling VOP_REVOKE().

Discussed with:	phk, mckusick
2002-02-10 20:45:43 +00:00
Robert Watson
99abbe4257 Style consistency fix for MAC ioctls added previously. 2002-02-10 16:55:35 +00:00
Josef Karthauser
f512ee4052 Fill in the uhci_dump_ii function (from NetBSD). 2002-02-10 15:38:47 +00:00
David E. O'Brien
837d5e7485 Add this FreeBSD standard header. 2002-02-10 14:27:20 +00:00
KATO Takenori
2db0b71862 Cosmetic changes:
- Collected i486 identification codes in one place like
  586 and 686.
- Merged two cases (0x470 and 0x490) for `Enhanced Am486DX4
  Write-Back.'
- Replaced `unknown' into `Unknown'.

Submitted by:	chi@bd.mbn.or.jp (Chiharu Shibata)
2002-02-10 11:23:14 +00:00
Yoshihiro Takahashi
c02cadfe2d Cosmetic changes. 2002-02-10 10:27:37 +00:00
Yoshihiro Takahashi
65939fef0f Add needed include. 2002-02-10 10:16:22 +00:00
Yoshihiro Takahashi
cbf2d0338e - Refine the iskanji1 function.
- Print continuous ascii characters at a time.

Submitted by:	chi@bd.mbn.or.jp (Chiharu Shibata)
2002-02-10 10:15:41 +00:00
Yoshihiro Takahashi
a1e56a26b3 Fixed mouse cursor on a console.
Submitted by:	chi@bd.mbn.or.jp (Chiharu Shibata)
2002-02-10 10:14:39 +00:00
Robert Watson
56e04d01c0 Remove a stray 'const' that slept into extattr_set_vp(), and could
result in compiler warnings.
2002-02-10 05:31:55 +00:00
Warner Losh
fbf6f7f1d6 Null interrupt handlers should be OK, so if we don't have a function,
just return.
2002-02-10 05:04:20 +00:00
Robert Watson
cfcd3c783e Minor style tweaks.
Remove an unneeded comment and commented out code that won't be
needed.
2002-02-10 04:57:08 +00:00
Robert Watson
41d5a43fa1 Copyright + license update. 2002-02-10 04:50:24 +00:00
Robert Watson
1aa1d02a98 Part II: Update system calls for extended attributes. Rebuild of
generated files.
2002-02-10 04:44:37 +00:00
Robert Watson
74237f55b0 Part I: Update extended attribute API and ABI:
o Modify the system call syntax for extattr_{get,set}_{fd,file}() so
  as not to use the scatter gather API (which appeared not to be used
  by any consumers, and be less portable), rather, accepts 'data'
  and 'nbytes' in the style of other simple read/write interfaces.
  This changes the API and ABI.

o Modify system call semantics so that extattr_get_{fd,file}() return
  a size_t.  When performing a read, the number of bytes read will
  be returned, unless the data pointer is NULL, in which case the
  number of bytes of data are returned.  This changes the API only.

o Modify the VOP_GETEXTATTR() vnode operation to accept a *size_t
  argument so as to return the size, if desirable.  If set to NULL,
  the size will not be returned.

o Update various filesystems (pseodofs, ufs) to DTRT.

These changes should make extended attributes more useful and more
portable.  More commits to rebuild the system call files, as well
as update userland utilities to follow.

Obtained from:	TrustedBSD Project
Sponsored by:	DARPA, NAI Labs
2002-02-10 04:43:22 +00:00
Warner Losh
27d4dd7420 o Use bus_generic_setup_intr instead of bus_setup_intr.
o Call bus_generic_setup_intr and check its return value.  Don't setup
  func until we successfully get the interrupt from our parent.
o Add comments about some maybe questionable stuff so I can check later
  to make sure that it really is that way.
2002-02-10 03:34:44 +00:00
Warner Losh
cebd67fba3 o Use INTR_TYPE_AV (the highest possible) rather than INTR_TYPE_BIO
o Don't allow INTR_TYPE_FAST.  Since we are sharing the interrupt between
  CSC and the functions, they can't be FAST because fast interrupts can't
  be shared.
o Add the same workaround for resume that we have in OLDCARD.
o Also, return the error from bus_generic_resume rather than ignoring it.
2002-02-10 03:28:37 +00:00
Poul-Henning Kamp
d63e76cc21 It's OK to be pedantic, but long long literals are OK. 2002-02-10 02:30:53 +00:00
Poul-Henning Kamp
b6e1c37356 Remove di_inumber since LFS is long gone. 2002-02-10 00:55:49 +00:00
Warner Losh
5e0cb3e9d3 Boot verbosify printing the CIS, since we don't normally need to do that. 2002-02-09 21:34:06 +00:00
Warner Losh
344284854e Make unsupported memory range message bootverbose only 2002-02-09 21:32:02 +00:00
KATO Takenori
d3a257ce08 Recognize VIA C3 Samuel 2.
MFC after:	3 days
2002-02-09 05:18:01 +00:00
Julian Elischer
237a8a02da Replace accidentally removed setrunqueue()
solves problem with machines failing to sync in booting.
Submitted by: Tor.Egge@cvsup.no.freebsd.org
2002-02-09 01:38:16 +00:00
John Baldwin
18fc2ba9ff Use the mtx_owner() macro in one spot in _mtx_lock_sleep() to make the
code easier to read.
2002-02-09 00:12:53 +00:00
Thomas Moestl
2333d112fb Fix a bug introduced in r. 1.28: when copy{in,out} would fail for an
iovec that was not the last one in the uio, the error would be ignored
silently.

Bug found and fix proposed by:	jhb
2002-02-08 20:19:44 +00:00
John Baldwin
289da3dd99 Apparently during the KSE M2 commit bzero() on the i386 was changed so that
it's first parameter was volatile.  Catch i486_bzero() and i586_bzero()'s
prototypes up to this to quiet warnings.
2002-02-08 19:16:47 +00:00
John Baldwin
2deac418f3 Don't grab the ICU lock while reading the current pending interrupts and
current masked interrupts from the AT PIC.

Requested by:	bde
2002-02-08 18:30:36 +00:00
John Baldwin
6c2b6a945d Turn SMP back on by default in GENERIC on the Alpha. 2002-02-08 18:25:07 +00:00
John Baldwin
0730d79121 Turn interrupt thread preemption back on on the alpha.
Tested by:	mjacob
2002-02-08 18:23:46 +00:00
Yoshihiro Takahashi
4d42fb0aab MFi386: revisions 1.493 and 1.494. 2002-02-08 11:14:16 +00:00
Peter Wemm
1037bbb195 Fix broken Giant locking protocol introduced in rev 1.114. You cannot
unlock Giant if it is not locked in the first place.  This make the
nfstat(2) syscall (#278) a nice panic(2) implementation.
2002-02-08 09:16:57 +00:00
Peter Wemm
fe0d0493ac Bah, I managed to turn cosmetic things into real bugs. Fix shadowed
variable declarations. :-(  Definately not my day today.
2002-02-08 08:56:01 +00:00
Warner Losh
d0036d6ebc Remove bogus range restrictions that attempted to restrict the range
of I/O in 1.5.  It looks like I got it right only for some of the
cases.  Instead, allow ISA addresses as a special case.  Most PCI
bridges decode this range.  I need to investigate PCI bridges better
to know if this is always true or not, but for now assume that it is
since that seems to be the most common case.

# We need to allocate addresses better for the pccard stuff...

Submitted by: phk, mitsunaga-san
2002-02-08 07:31:02 +00:00
Robert Watson
143bb598d0 o Merge various recent fixes from the MAC branch relating to extattrctl():
- Fix null-pointer dereference introduced when snapshotting
	  was introduced.  This occured because unlike the previous code,
	  vn_start_write() doesn't always return a non-NULL mp, as
	  filesystems may not support the VOP_GETWRITEMOUNT() call.  For
	  now, rely on two pointers, so that vn_finished_write() works
	  properly.
	- Fix locking problems on exit, introduced at some past time,
	  some when snapshots came in, where a vnode might not be
	  unlocked before being vrele'd in various error situations.

Obtained from:	TrustedBSD Project
Sponsored by:	DARPA, NAI Labs
2002-02-08 05:58:41 +00:00
Peter Wemm
a060acb154 Fix world breakage (compiling libstdc++):
sys/time.h:137: integer constant out of range
sys/time.h:137: warning: decimal integer constant is so large that it is unsigned
sys/time.h:153: integer constant out of range
sys/time.h:153: warning: decimal integer constant is so large that it is unsigned
2002-02-08 03:55:37 +00:00
Peter Wemm
de9ac44a24 Fix a fatal trap when using ksched_setscheduler() (eg: mozilla, netscape
etc) which use:  td->td_last_kse->ke_flags |= KEF_NEEDRESCHED;
2002-02-08 02:56:10 +00:00
Mike Smith
aafdbb39dc Add a helper script used to take an Intel-supplied ACPI CA drop and make it
ready for importing.  This should save me from my own over-cleanliness.
2002-02-08 02:16:45 +00:00
Julian Elischer
045e854101 remove superfluous blank line 2002-02-08 01:38:32 +00:00
Peter Wemm
2b8a08af6b Fix a couple of style bugs introduced (or touched by) previous commit. 2002-02-07 23:06:26 +00:00
Peter Wemm
2d008b444d Fix a whole bunch of long lines introduced by previous commit by using
td = FIRST_THREAD_IN_PROC(p) once, after we have identified the process
that we are operating on.
2002-02-07 23:05:40 +00:00
Peter Wemm
c2e42439ad Fix a long line touched in previous commit (but not caused by previous
commit)
2002-02-07 23:03:41 +00:00
Peter Wemm
620080d0c7 Attempt to patch up some style bugs introduced in the previous commit 2002-02-07 22:40:34 +00:00
Peter Wemm
1edc7ddee9 Attempt to unmangle some code touched in the previous commit. 2002-02-07 22:36:19 +00:00
Peter Wemm
588e970c0b Fix a long line introduced in previous commit. 2002-02-07 22:29:41 +00:00
Peter Wemm
3953037ff8 Fix long line added in previous commit. 2002-02-07 22:28:24 +00:00
Peter Wemm
6e948886d3 Patch up some long lines introduced in previous commit. 2002-02-07 22:26:51 +00:00
Peter Wemm
2850a06d42 Fix style bug introduced in previous commit. 2002-02-07 22:26:07 +00:00
Kirk McKusick
b06051cf7c Occationally background fsck would cause a spurious ``freeing free
inode'' panic. This change corrects that problem by setting the
fs_active flag when the inode map changes to notify the snapshot
code that the cylinder group must be rescanned.

Submitted by:	Robert Watson <rwatson@FreeBSD.org>
2002-02-07 22:13:56 +00:00
Matt Jacob
280304eb49 Replace a few more lines of code orphaned by MFREE going away.
MFC after:	1 day
2002-02-07 22:08:32 +00:00
Matt Jacob
943e9b67f5 You cannot take the address of a variable with the 'register' qualifier.
MFC after:	1 day
2002-02-07 22:06:23 +00:00
Poul-Henning Kamp
d627bedae5 Remove the inline assembly optimized versins of bintime_*() functions,
they have no measurable effect and they don't belong in an MI header
even if they did.
2002-02-07 21:57:28 +00:00
Poul-Henning Kamp
2028c0cdb9 Revise timercounters to use binary fixed point format internally.
The binary format "bintime" is a 32.64 format, it will go to 64.64
when time_t does.

The bintime format is available to consumers of time in the kernel,
and is preferable where timeintervals needs to be accumulated.

This change simplifies much of the magic math inside the timecounters
and improves the frequency and time precision by a couple of bits.

I have not been able to measure a performance difference which was not
a tiny fraction of the standard deviation on the measurements.
2002-02-07 21:21:55 +00:00
Julian Elischer
079b7badea Pre-KSE/M3 commit.
this is a low-functionality change that changes the kernel to access the main
thread of a process via the linked list of threads rather than
assuming that it is embedded in the process. It IS still embeded there
but remove all teh code that assumes that in preparation for the next commit
which will actually move it out.

Reviewed by: peter@freebsd.org, gallatin@cs.duke.edu, benno rice,
2002-02-07 20:58:47 +00:00
Poul-Henning Kamp
e0ee6f5629 GC the PC_SWITCH* symbols which are not used in assembly anymore. 2002-02-07 10:27:58 +00:00
Matt Jacob
2a62c7174a Replace the MFREE that Marshal (Quick Draw) Dillon apparently didn't look for.
MFC after:	1 day
2002-02-07 08:39:26 +00:00
Luigi Rizzo
273b222cdb Use ETHER_CRC_LEN instead of SIS_CRC_SIZE
Suggested-by: Archie, Doug Ambrisko
2002-02-07 08:04:24 +00:00
Luigi Rizzo
254d9d5f73 Fix a bug in the driver -- the chip will always include the CRC
in the received packet size, but the upper level routines want
the length without it.

Reported-by: Doug Ambrisko, ambrisko@freebsd.org
2002-02-07 07:47:00 +00:00
Warner Losh
fd173deae3 Remove DETACH_NOWARN 2002-02-07 06:43:29 +00:00
Warner Losh
3799207059 Get rid of the bogus DETACH_NOWARN and don't warn when asked to detach
a card that isn't there unless we're booting verbose.  It serves no
purpose.
2002-02-07 06:43:02 +00:00
Kirk McKusick
cfdaa88697 Occationally deleted files would hang around for hours or days
without being reclaimed. This bug was introduced in revision 1.95
dealing with filenames placed in newly allocated directory blocks,
thus is not present in 4.X systems. The bug is triggered when a
new entry is made in a directory after the data block containing
the original new entry has been written, but before the inode
that references the data block has been written.

Submitted by:	Bill Fenner <fenner@research.att.com>
2002-02-07 00:54:32 +00:00
Doug Ambrisko
4c2380660a Fix support for 630ET support. We don't need the Linux part to set the
mii access mode.  Fix the device ID and make it read the mac via sis_read_mac.

Reviewed by: 	imp
MFC after:	1 week
2002-02-06 22:06:47 +00:00
Julian Elischer
4ad88f2ca4 Make LINT compile after fruitless attempts to get the authors
to fix their code.

ata stuff:
Change name of ar_attach to not colide with existing ar_attach in if_ar.c.
usb stuff:
Create a dummy function to satisfy a call to it when in DEBUG mode.
2002-02-06 19:35:37 +00:00
John Baldwin
78a1485fd1 Fixes for alpha pmap on SMP machines:
- Create a private list of active pmaps rather than abusing the list of all
  processes when we need to look up pmaps.  The process list needs a sx lock
  and we can't be getting sx locks in the middle of cpu_switch()
  (pmap_activate() can call pmap_get_asn() from cpu_switch()).  Instead, we
  protect the list with a spinlock.  This also means the list is shorter
  since a pmap can be used by more than one process and we could (at least
  in thoery) dink with pmap's more than once, but now we only touch each
  pmap once when we have to update all of them.
- Wrap pmap_activate()'s code to get a new ASN in an explicit critical section
  so that when it is called while doing an exec() we can't get preempted.
- Replace splhigh() in pmap_growkernel() with a critical section to prevent
  preemption while we are adjusting the kernel page tables.
- Fixes abuse of PCPU_GET(), which doesn't return an L-value.
- Also adds some slight cleanups to the ASN handling by adding some macros
  instead of magic numbers in relation to the ASN and ASN generations.

Reviewed by:	dfr
2002-02-06 04:30:26 +00:00
Scott Long
fe94b852b3 Don't attach to Dell PERC2/QC cards that have a firmware rev of 1.x. This
check is complicated by the fact that the Adaptec 5400S cards claim to use
1.x firmware also.  PERC2/QC 1.x firmware is not compatible with this driver
and will cause a system hang.

MFC after:	3 days
2002-02-06 01:34:09 +00:00
Matthew Dillon
0b94a0e9f9 Allow the kern.maxusers boot tuneable to be set to 0 (previously only
the kernel config's maxusers could be set to 0 for autosizing to work).
Reviewed by:	rwatson, imp
MFC after:	3 days
2002-02-06 01:19:19 +00:00
Benno Rice
64eecf3a43 Correctly identify the Intel 82830 AGP bridge. 2002-02-05 23:13:25 +00:00
Alfred Perlstein
582ec34cd8 Fix a race with free'ing vmspaces at process exit when vmspaces are
shared.

Also introduce vm_endcopy instead of using pointer tricks when
initializing new vmspaces.

The race occured because of how the reference was utilized:
  test vmspace reference,
  possibly block,
  decrement reference

When sharing a vmspace between multiple processes it was possible
for two processes exiting at the same time to test the reference
count, possibly block and neither one free because they wouldn't
see the other's update.

Submitted by: green
2002-02-05 21:23:05 +00:00
Poul-Henning Kamp
a305896436 Let the number of timecounters follow hz, otherwise people with
HZ=BIGNUM will strain the assumptions behind timecounters to the
point where they break.

This may or may not help people seeing microuptime() backwards messages.

Make the global timecounter variable volatile, it makes no difference in
the code GCC generates, but it makes represents the intent correctly.

Thanks to:	jdp
MFC after:	2 weeks
2002-02-05 20:44:56 +00:00
Archie Cobbs
a3e232d65b The hardware checksum code makes the assumption that a packet routed out
a particular Ethernet interface will actually be delivered by (only) that
device driver. This is not necessarily true when ng_ether(4) is used.

To word around this, while a ng_ether(4)'s "upper" hook is connected,
turn off all hardware checksum, fragmentation, etc., features for that
interface.

PR:		kern/31586
MFC after:	1 week
2002-02-05 18:27:30 +00:00
Thomas Gellekum
cc9f4eb939 Add support for the Aztech 2320 chip.
Reviewed by:	cg
Obtained from:	NetBSD (partly)
2002-02-05 12:09:23 +00:00
Seigo Tanimura
38b968c3a5 - Do not hang if the resource allocation fails.
- Add another quirk entry of SB AWE64.

PR:		kern/32530
Submitted by:	Magnus Backstrom <b@etek.chalmers.se>
2002-02-05 06:52:56 +00:00
Matthew Dillon
ecde8f7c29 Get rid of the twisted MFREE() macro entirely.
Reviewed by:	dg, bmilekic
MFC after:	3 days
2002-02-05 02:00:56 +00:00
Matt Jacob
75c1e828c0 + A variety of 23XX changes:
disable MWI on 2300

	based on function code, set an 'isp_port' for the 2312- it's a
	separate instance, but the NVRAM is shared, and the second port's
	NVRAM is at offset 256.

+ Enable RIO operation for LVD SCSI cards. This makes a *big* difference
as even under reasonable load we get batched completions of about 30
commands at a time on, say, an ISP1080.

+ Do 'continuation' mailbox commands- this allows us to specify a work
area within the softc and 'continue' repeated mailbox commands. This is
more or less on an ad hoc basis and is currently only used for firmware
loading (which f/w now loads substantially faster becuase the calling
thread is only woken when all the f/w words are loaded- not for each
one of the 40000 f/w words that gets loaded).

+ If we're about to return from isp_intr with a 'bogus interrupt' indication,
and we're not a 23XX card, check to see whether the semaphore register is
currently *2* (not *1* as it should be) and whether there's an async completion
sitting in outgoing mailbox0. This seems to capture cases of lost fast posting
and RIO interrupts that the 12160 && 1080 have been known to pump out under
extreme load (extreme, as in > 250 active commands).

+ FC_SCRATCH_ACQUIRE/FC_SCRATCH_RELEASE macros.

+ Endian correct swizzle/unswizzle of an ATIO2 that has a WWPN in it.

MFC after:	1 week
2002-02-04 21:04:25 +00:00
Dag-Erling Smørgrav
3fd18735a4 Move the pseudofs, procfs and linprocfs modules out from the fs directory.
Keeping them there seemed like a good idea at the time, but it annoys bde
and confuses people who do not understand how MODULES_OVERRIDE works.
2002-02-04 20:16:50 +00:00
Søren Schmidt
6ddce9039b Major update of the ATA RAID code, part 1:
Overhaul of the attach/detach code and structures, there were some nasty
bugs in the old implementation. This made it possible to collapse the
ATA/ATAPI device control structures into one generic structure.

A note here, the kernel is NOT ready for detach of active devices,
it fails all over in random places, but for inactive devices it works.
However for ATA RAID this works, since the RAID abstration layer
insulates the buggy^H^H^H^H^H^Hfragile device subsystem from the
physical disks.

Proberly detect the RAID's from the BIOS, and mark critical RAID1
arrays as such, but continue if there is enough of the mirror left
to do so.

Properly fail arrays on a live system. For RAID0 that means return EIO,
and for RAID1 it means continue on the still working part of the mirror
if possible, else return EIO.
If the state changes, log this to the console.

Allow for Promise & Highpoint controllers/arrays to coexist on the
same machine. It is not possible to distribute arrays over different
makes of controllers though.

If Promise SuperSwap enclosures are used, signal disk state on the
status LED on the front.

Misc fixes that I had lying around for various minor bugs.

Sponsored by: Advanis Inc.
2002-02-04 19:23:40 +00:00
Robert Watson
416031dcb8 Change EPERM to EOPNOTSUPP when failing pseudofs_setattr() arbitrarily.
Quoth the alfred:	The latter would be better.
2002-02-04 18:21:59 +00:00
Robert Watson
dfe5fa8eb7 Return EPERM instead of 0 in the un-implemented pseudofs_setattr().
Conceivably, it should even return EOPNOTSUPP.
2002-02-04 18:09:29 +00:00
Robert Watson
4e1123c738 o Scatter vn_start_write() and vn_finished_write() through ACL code so
that it interacts properly with snapshotting.

Obtained from:	TrustedBSD Project
Sponsored by:	DARPA, NAI Labs
2002-02-04 17:58:15 +00:00
Hajimu UMEMOTO
0e371878c8 Corrected an argument to in6_pcbnotify().
Obtained from:	KAME
MFC after:	1 week
2002-02-04 17:40:36 +00:00
Hajimu UMEMOTO
c5993889d8 In tcp_respond(), correctly reset returned IPv6 header. This is essential
when the original packet contains an IPv6 extension header.

Obtained from:	KAME
MFC after:	1 week
2002-02-04 17:37:06 +00:00
Mark Murray
385fedb640 Back out the "upgrading" of NBBY to unsigned, as it exposes
bugs elsewhere, and also is well understood as a signed quantity.
2002-02-04 16:42:44 +00:00
Robert Watson
eccbb13cb5 Note that Kirk apparently missed adding vn_start_write() and friends
to kern_acl.c when he added snapshotting.  This will need to be added
at some point.
2002-02-04 16:41:59 +00:00
Warner Losh
a0e457a620 Default debugging to OFF now. 2002-02-04 15:55:21 +00:00
Yoshihiro Takahashi
8c84db8edd Supported C-NET(98)P2 PnP mode.
Submitted by:	"Hirokazu WATANABE" <gwna@geocities.co.jp>
MFC after:	3 days
2002-02-04 14:01:27 +00:00
Mike Silbersack
c9fbdd0fa4 Remove mbuf exhaustion warning messages; these are handled by the
mbuf system in a rate-limited fashion now.

Reviewed by:	luigi
MFC after:	1 week
2002-02-04 03:15:27 +00:00
Josef Karthauser
0a7fe9cc0b Follow NetBSD and ANSIfy the function definitions.
Remove trailing whitespaces (submitted to NetBSD).
2002-02-03 17:03:34 +00:00
Mark Murray
6ebd73f0f6 WARNS=n and lint(1) silencer. Declare an array of (const) strings
as const char.
2002-02-03 11:57:32 +00:00
Mark Murray
dc20def492 Zero functional difference; make some integer constants unsigned, as
they are used in unsigned context. This shuts lint(1) up in a few
significant ways with "signed/unsigned" arithmetic warnings.
2002-02-03 11:36:59 +00:00
Mark Murray
9a29e3250d Make the style a little bit more consistant by removing parameter
names from some prototypes. (Other prototypes here already have
these removed).
2002-02-03 11:21:22 +00:00
Bruce Evans
766f247a59 Use osigreturn(2) instead of sigreturn(2) plus broken magic for returning
from old signal handlers.  This is simpler and faster, and fixes (new)
sigreturn(2) when %eip in the new signal context happens to match the
magic value (0x1d516).  0x1d516 is below the default ELF text section,
so this probably never broken anything in practice.

locore.s:
In addition, don't build the signal trampoline for old signal handlers
when it is not used.

alpha:
Not fixed, but seems to be even less broken in practice due to more
advanced magic. A false match occurs for register #32 in mc_regs[].
Since there is no hardware register #32, a false match is only possible
for direct calls to sigreturn(2) that happen to have the magic number
in the spare mc_regs[32] field.
2002-02-03 09:13:58 +00:00
Bruce Evans
5c8d0a85b0 Improve the change in the previous commit: use a stub for osigreturn()
when it is not really used instead of unconditionalizing all of it.
2002-02-03 04:09:02 +00:00
Josef Karthauser
f353db9f9a Regenerate. 2002-02-02 21:12:22 +00:00
Josef Karthauser
8df3da9acc Update comments and product identifiers so that they're the same
as NetBSD's definitions.
2002-02-02 21:09:54 +00:00
Josef Karthauser
a342523198 Add some missing usb vendors (from NetBSD). 2002-02-02 21:02:13 +00:00
Josef Karthauser
c910612aa9 Sync with NetBSD's version, dropping all the 'ltd', 'corp', etc.
It's more important to keep this file easily syncable across the
BSDs, and NetBSD have stated a preference for not adding them to
theirs.
2002-02-02 20:59:43 +00:00
Robert Watson
30969a81c5 o Add the prototype of cr_cansignal() from an earlier change to
kern_prot.c.  This has apparently been sitting in my local tree for
  ages, and has been generating a warning during the building of
  kern_prot.o.

Obtained from:	TrustedBSD Project
Sponsored by:	DARPA, NAI Labs
2002-02-02 03:39:44 +00:00
Bruce Evans
3230a24cb4 Merged cy_pcireg.h into the one file that uses it (cy_pci.c). 2002-02-02 02:22:51 +00:00
Bruce Evans
7e8c3cecdf Fixed breakage of interrupt setup in previous commit. It used an
uninitialized variable in the !CY_PCI_FASTINTR case (*blush*).
2002-02-02 02:05:44 +00:00
Kirk McKusick
64011154e5 In the routines vrele() and vput(), we must lock the vnode and
call VOP_INACTIVE before placing the vnode back on the free list.
Otherwise there is a race condition on SMP machines between
getnewvnode() locking the vnode to reclaim it and vrele()
locking the vnode to inactivate it. This window of vulnerability
becomes exaggerated in the presence of filesystems that have
been suspended as the inactive routine may need to temporarily
release the lock on the vnode to avoid deadlock with the syncer
process.
2002-02-02 01:49:18 +00:00
Kirk McKusick
c9f96392c7 When taking a snapshot, we must check for active files that have
been unlinked (e.g., with a zero link count). We have to expunge
all trace of these files from the snapshot so that they are neither
reclaimed prematurely by fsck nor saved unnecessarily by dump.
2002-02-02 01:42:44 +00:00
Alfred Perlstein
3865fa138b Remove bogus assertion in dup2 that can lead to panics when kernel
threads race for a file slot.

dup2(2) incorrectly assumes that if it needs to grow the ofiles
array that it will get what it wants.  This assertion was valid
before we allowed shared filedescriptor tables but is now incorrect.

The assertion can trigger superfolous panics if the thread doing a
dup2 looses a race with another thread while possibly blocked in
the MALLOC call in fdalloc.  Another thread may grab the slot we
are requesting which makes fdalloc return something other than what
we asked for, this will triggering the bogus assertion.

MFC after: 2 weeks
Reviewed by: phk
2002-02-01 19:25:36 +00:00
Alfred Perlstein
2b39743941 Avoid lock order reversal filedesc/Giant when calling FREE() in fdalloc
by unlocking the filedesc before calling FREE().

Submitted by: bde
2002-02-01 19:19:54 +00:00
Alfred Perlstein
b7184973ed Don't recurse on filedesc lock in chroot_refuse_vdir_fds().
Noticed by: Michael Nottebrock <michaelnottebrock@gmx.net>
2002-02-01 18:27:16 +00:00
Bruce Evans
b6fe6a5d88 Regenerate to make osigreturn standard. 2002-02-01 17:41:45 +00:00
Bruce Evans
860965f144 Made osigreturn(2) standard so that SYS_osigreturn can be used in the
signal trampoline for old signals.  The arches that support old signals
currently abuse sigreturn(2) instead.  This mainly complicates things
and slightly breaks the the new sigreturn(2).

COMPAT is too limited to support the correct configuration of osigreturn,
and this commit doesn't attempt to fix it; it just moves the bogusness:
osigreturn() must now be provided unconditionally even on arches that
don't really need it; previously it had to be provided under the bogus
condition defined(COMPAT_43).
2002-02-01 17:27:14 +00:00
Bruce Evans
55a9536b65 Compile osigreturn() unconditionally since it will always be needed on
some arches and the syscall table is machine-independent.  It was
(bogusly) conditional on COMPAT_43, so this usually makes no difference.

ia64: in addition:
- replace the bogus cloned comment before osigreturn() by a correct one.
  osigreturn() is just a stub fo ia64's.
- fix the formatting of cloned comment before sigreturn().
- fix the return code.  use nosys() instead of returning ENOSYS to get
  the same semantics as if the syscall is not in the syscall table.
  Generating SIGSYS is actually correct here.
- fix style bugs.

powerpc: copy the cleaned up ia64 stub.  This mainly fixes a bogus comment.

sparc64: copy the cleaned up the ia64 stub, since there was no stub before.
2002-02-01 15:44:03 +00:00
Yoshihiro Takahashi
3b8a3187c8 Expand COMBRD(x) macro. 2002-02-01 14:48:44 +00:00
Archie Cobbs
d9bfecab53 Some netgraph parse types (such as for the 'value' field in ng_ksocket's
'struct ng_ksocket_sockopt') like to peek into the ng_mesg header for
information. Make sure when generating default values that we provide
a valid header to peek into.

MFC after:	1 week
2002-02-01 02:21:41 +00:00
David E. O'Brien
b231cb3945 * Remove __P and convert to ANSI prototypes.
* Remove 'register'.  (some functions had 7+ register functions...)
* Fix SCM ID's.
2002-02-01 01:32:19 +00:00
Matthew Dillon
027df6bdd7 GC P_BUFEXHAUST leftovers, we've had a new mechanism to avoid buffer
cache lockups for over a year now.

MFC after:		0 days
2002-01-31 18:39:44 +00:00
Alfred Perlstein
7b9214f0b0 identify GLPRISM2 PCI WaveLAN/IEEE 802.11
Submitted by: Toni Andjelkovic <toni@soth.at>
2002-01-31 16:55:13 +00:00
Bruce Evans
92fd4795fa Finish revs.1.23 and 1.24 so that MCOUNT_ENTER really actually compiles
for SMP in the plain profiling case.  It seems to work too.

This error was not detected by LINT because LINT only compiles the
GUPROF profiling case, which is is a superset of the plain profiling
case for !SMP but which is so broken for SMP that the buggy code is
not compiled.
2002-01-31 13:49:55 +00:00
Maxim Sobolev
e6f56180e3 Add support of PhotoClip USB Camera (http://www.myphotoclip.com):
- Vendor&Device IDs for USB product,
- quirk for SCSI CAM.

PR:		34481
Submitted by:	Olexander Kunytsa <kunia@x-telecom.net>
MFC in:		3 days
2002-01-31 11:39:17 +00:00
Takanori Watanabe
85dff349f4 Fix irq/drq handling. IRQ and DRQ resource information can be get
in one object for one resource. Array of values in a object means
possible values for the object.
2002-01-31 09:18:27 +00:00
Yoshihiro Takahashi
593cedcce3 MFi386: revision 1.489. 2002-01-31 08:35:38 +00:00
Yoshihiro Takahashi
f9df78bb95 Changed iskanji[12] to inline functions. 2002-01-31 08:29:46 +00:00
Yoshihiro Takahashi
e523a353a2 Merged from sys/dev/sio/{sio.c,sio_isa.c} revisions 1.363 and 1.5,
respectively.
2002-01-31 08:26:45 +00:00
Yoshihiro Takahashi
9fdd7481ef Add pc98 support. 2002-01-31 08:24:36 +00:00
Yoshihiro Takahashi
c34cc16d46 Remove obsolete COMBRD* definitions. 2002-01-31 08:23:30 +00:00
Yoshihiro Takahashi
cad5db6416 MFi386: revision 1.180 2002-01-31 04:28:52 +00:00
Yoshihiro Takahashi
ae610d1fc6 MFi386: revision 1.52 2002-01-31 04:22:20 +00:00
Takanori Watanabe
f8372ade81 Fix error handling.
PR:30665
Submitted by:TOMITA Yoshinori <yoshint@flab.fujitsu.co.jp>
2002-01-31 01:23:22 +00:00
Julian Elischer
a3aa8c3ee8 Allow this to compile again
not tested under LINT by: msmith
2002-01-30 23:38:31 +00:00
Alfred Perlstein
8a5c063a41 include sys/lock.h and sys/mutex.h to make compile.
Noticed by: Vincent Poy <vince@oahu.WURLDLINK.NET>
2002-01-30 23:28:25 +00:00
Robert Watson
e98576e76a o Reserve two interface ioctl values, 38, and 38, for SIOCGIFMAC and
SIOCSIFMAC, which are for the Mandatory Access Control
  implementation.  This will prevent collisions on the p4 development
  branch.

Obtained from:	TrustedBSD Project
2002-01-30 21:37:32 +00:00
Alfred Perlstein
0d438f6134 fget_locked fixes.
sort declaration.
  give paramters names.
  remove bogus check for negative fd (u_int) cast does this for us.

Pointed out by: bde
2002-01-30 19:53:57 +00:00
Alfred Perlstein
4658f926c0 Remove unused variables in select(2) from previous delta.
Pointed out by: bde
2002-01-30 19:48:25 +00:00
Bruce Evans
7bf8b8eca9 Backed out the main part of revs.1.14-16. Don't disable interrupts in
the packet transfer routines, since rev.1.468 of machdep.c does this
better.  I'm surprised that disabling interrupts helped much.  Disabling
them in the packet receive routine is too late.

Fixed some minor style bugs in rev.1.14.
2002-01-30 18:51:24 +00:00
Bruce Evans
09c98c2c84 Backed out the last vestiges of rev.1.51. Don't enter a critical
region in Debugger(), since rev.1.468 of machdep.c does this better.
Other cosmetic backouts.
2002-01-30 18:23:31 +00:00
Bruce Evans
e64e121dc1 Cleaned up the 0ldSiG magic check before removing it. Just use fuword()
to fetch the magic word instead of useracc() plus a direct access.
This is more efficient as well as simpler and less incorrect:
- it was inefficent because useracc() takes much longer than just
  accessing the data using a correct access method, at least on i386's.
- it was incorrect because direct access is incorrect unless the address
  has been mapped.  This and nearby direct accesses are mostly handled
  better for other arches because they have to be (direct accesses don't
  work).
- using magic in sigreturn is still fundamentally broken because false
  matches are possible.  On i386's, a false match occurs when %eip in a
  new signal context happens to equal the magic value.  This is not
  handled better for other arches.
2002-01-30 17:47:12 +00:00
John Hay
57019e6041 Add support for different serial clock frequencies and not just the
standard one of 1.8432MHz. This will be used by the puc (PCI
"universal" communication card) device driver.

Reviewed by:	bde
2002-01-30 17:22:04 +00:00
Bruce Evans
aff5957cfd Regenerate just this file after unbreaking makesyscalls.sh. The previous
commit broke the world in libc.
2002-01-30 15:14:24 +00:00
Bruce Evans
9a7f62c577 Oops, fix previous commit to not generate a C comment in syscall.mk. 2002-01-30 15:12:12 +00:00
Bruce Evans
c920faa62e Removed the one use of the mandatory keyword (for npx).
npx is no more mandatory than sc.  Its mandatoryness went away in
rev.1.226 of i386/machdep.c 9 months before it was made mandatory in
rev.1.24 of config/mkmakefile.c.

This change is mainly to test building of minimal kernel configurations.
npx should really be even more standard than clk.  It was optional mainly
so that the usual device driver configuration info could be specified in
the usual way in config files, but this hasn't been necessary for a few
years.
2002-01-30 14:35:58 +00:00
Bruce Evans
586079cc26 Don't include <isa/isavar.h> or compile code depending on it when isa
is not configured.  Including <isa/isavar.h> when it is not used is
harmful as well as bogus, since it includes "isa_if.h" which is not
generated when isa is not configured.

This was fixed in 1999 but was broken by unconditionalizing PNPBIOS.
2002-01-30 12:41:12 +00:00
Bruce Evans
c636c4a872 Removed unused includes. In particular, don't include <isa/isavar.h> since
its only effect is to break the optionality of the isa option.

Sorted includes.
2002-01-30 12:23:49 +00:00
Bruce Evans
581cad5a9c Regenerate _after_ the commit to syscalls.master. 2002-01-30 10:29:12 +00:00
Bruce Evans
0878983ab4 Escape $FreeBSD$ in a different way to avoid using the bogus escapes \$
and \F.  Awk just started warning about these.
2002-01-30 10:22:05 +00:00
Alfred Perlstein
eb20931127 Attempt to fixup select(2) and poll(2), this should fix some races with
other threads as well as speed up the interfaces.

To fix the race and accomplish the speedup, remove selholddrop and
pollholddrop.  The entire concept is somewhat bogus because holding
the individual struct file pointers offers us no guarantees that
another thread context won't close it on us thereby removing our
access to our own reference.

Selholddrop and pollholddrop also would do multiple locks and unlocks
of mutexes _per-file_ in the fd arrays to be scanned, this needed to
be sped up.

Instead of using selholddrop and pollholddrop, simply hold the
filedesc lock over the selscan and pollscan functions.  This should
protect us against close(2)'s on the files as reduce the multiple
lock/unlock pairs per fd into a single lock over the filedesc.
2002-01-29 22:54:19 +00:00
Alfred Perlstein
5980a85f08 Backout 1.120, EINVAL isn't a proper error return when the passed fd is
negative, the 'pointer' referred to by the manpage is actually the
struct file's f_offset field.

Pointed out by: bde
2002-01-29 17:12:10 +00:00
Warner Losh
a91e00697e Move cardaddr to memory structure.
Forgotten by: imp
Reminded by: Dave Cornejo
2002-01-29 16:57:50 +00:00
Warner Losh
2781c18f63 Add EDIMAX ethernet card for NEWCARD from NetBSD 2002-01-29 07:08:56 +00:00
Warner Losh
70fe064ad7 Module for exca. Eventually, this will be shared between pcic and pccbb. 2002-01-29 06:53:32 +00:00
Warner Losh
75e5462e30 pccbb needs exca now. 2002-01-29 06:51:09 +00:00
Warner Losh
473a3d8520 Migrate towards using the new exca module for 16bit stuff. This is a
WIP, but works for me.

Also do some minor code factoring and code cleanup while I'm here.
2002-01-29 06:50:18 +00:00
Warner Losh
c3ee5891b9 First draft of common code between pccbb and pcic drivers for talking
to ExCA register sets.  These registers exist in both ISA and PCI
devices in a couple different ways, and this will provide a common
base for future building.  This code is a rehash of the pccbb 16-bit
code, which was a rehash of the pcic code, which was a rehash of the
netbsd i82365 code.  More hashing to come.
2002-01-29 06:48:38 +00:00
Warner Losh
fa3433e1db Minor sorting orders 2002-01-29 06:15:07 +00:00
Warner Losh
dadd95dbbe Sync to 1.27 of pccarddevs 2002-01-29 06:10:15 +00:00
Warner Losh
a3cc3a9e83 MFNetBSD:
1.159: sorting (not relevant to us, since I'd done thie before)
	1.158: joda; Ericsson PRISM2 WIRELEASS LAN CARD.
	1.157: aymeric Edimax Technology ethernet card
2002-01-29 06:09:39 +00:00
Marcel Moolenaar
75387a278e Have SIOCGIFCONF return all (if any) AF_INET addresses for the
interfaces we encounter. In Linux, all addresses are returned for
which gifconf handlers are installed. This boils down to AF_DECnet
and AF_INET. We care mostly about AF_INET for now. Adding additional
families is simple enough.

Returning the addresses is important for RPC clients to function
properly. Andrew found in some reference code that the logic that
handles the retransmission looks for an interface that's up and has
an AF_INET address. This obviously failed as we didn't return any
addresses at all.

Note also that with this change we don't return interfaces that don't
have AF_INET addresses, whereas before we returned any interface
present in the system. This is in line with what Linux does (modulo
interfaces with only AF_DECnet addresses of course :-)

Reported by: "Andrew Atrens" <atrens@nortelnetworks.com>
MFC after: 1 week
2002-01-29 06:00:11 +00:00
Greg Lehey
93bbd4c8da Grr. The last commit contained update conflicts. It just goes to
show that you should check the code even for a forced commit.

Spotted by:	dd
2002-01-29 02:49:15 +00:00
Greg Lehey
60fc37994f Forced commit. The previous commit log was garbled and didn't even
apply to this file.  The correct message is:

throw_rude_remark: Make sure we're holding the config lock before
                   proceeding.  There's no reason to assume that this
                   has ever happened, but the alternative might be a
                   double fault.
2002-01-29 02:14:51 +00:00
Alfred Perlstein
60eda641fb Bump __FreeBSD_version for sendfile fix to properly send 'nbytes' of
file when headers are supplied (version 1.104 of src/sys/kern/uipc_syscalls.c)
2002-01-29 01:52:30 +00:00
Andrew Gallatin
350cb38b1f Simple fixes to get the powerpc kernel compiling again.
Reviewed by:	mp
2002-01-28 14:07:36 +00:00
Søren Schmidt
684c972cd6 Add support for the Promise TX4.
Rearrange the support for the VIA chips, and add experimental
support for ATA133 on the newest chips.
2002-01-28 13:17:10 +00:00
Søren Schmidt
2405c1cef4 Enable pccard support. 2002-01-28 13:13:14 +00:00
Søren Schmidt
d2e812582d Add support for pccard.
submitted by: imp
2002-01-28 13:12:16 +00:00
Josef Karthauser
a07e9d4af3 Merge from NetBSD.
uhub.c:     revision 1.37
    usb.4:      revision 1.30
    usb.c:      revision 1.38
    usb.h:      revision 1.40
    usb_port.h: revision 1.21
    usb_subr.c: revision 1.65
    usbdi.h:    revision 1.40

Split the attach/detach events up into device, driver and controller
attach and detach events.

The commit message from NetBSD was:
        date: 2000/02/02 07:34:00;  author: augustss;  state: Exp;
        Change the USB event mechanism to include more information
        about devices and drivers.  Partly from FreeBSD.

Also rework usbd to take these new event types into account.
2002-01-28 01:03:19 +00:00
Scott Long
60d1d6861b Recent changes to newpcm require that the CHANNEL_SETFORMAT op return 0
for success, non-zero otherwise.  The maestro and maestro3 drivers were
returning the format code, which was being interpreted as a failure code.
Fixed.  No one seems to have noticed that the maestro driver was broken,
but I'll fix it anyways.

MFC after:	2 weeks
2002-01-27 23:09:41 +00:00
Andrew Gallatin
694ff26473 Prevent the kernel from generating an unaligned sysctl data buffer on
64-bit platforms.  The unaligned access is caused by struct ifa_msghdr
not being a multiple of 8-bytes in size.  If an interface has an odd
number of addresses, this causes the next interface to generate an
unaligned access in the user-level app walking the interfaces (ifconfig).

Submitted by: Bernd Walter <ticso@cicely8.cicely.de>
2002-01-27 20:39:01 +00:00
Joerg Wunsch
87fa2d16c3 Unbreak pcvt, it suffered from common variables. Whoever added the
-fno-common could not have possibly compiled LINT afterwards with
this...
2002-01-27 09:17:27 +00:00
Greg Lehey
98912ee8cc vinumioctl: Fix a double fault caused by calling setjmp() without holding the config lock. The call was in fact superfluous. 2002-01-27 04:20:52 +00:00
John Polstra
586d7c2ef0 Add support for the Netgear GA302T 10/100/1000 adapter. Given that
it's a 32-bit card, it's quite nice for $75.

MFC after:	3 days
2002-01-27 01:00:16 +00:00
Cameron Grant
b8a3639565 * improve error handling
* be more specific in verbose boot messages
* allow the feeder subsystem to veto pcm* attaching if there is an error
  initialising the root feeder
* don't free/malloc a new tmpbuf when resizing a snd_dbuf to the same size as
  it currently is
* store the feeder description in the feeder structure instead of mallocing
  space for it
2002-01-26 22:13:24 +00:00
Josef Karthauser
67a2e47022 Rearrange the code in USB_DETACH, so that it's like NetBSD's. No
functional change.
2002-01-26 14:00:25 +00:00
Josef Karthauser
eb92aa3c3e Back out the last commit. I committed the wrong file by accident.
The commit message wasn't relevant to that change.  This code will
be committed later.
2002-01-26 13:57:08 +00:00
Josef Karthauser
7fac607b74 Rearrange the code in USB_DETACH, so that it's like NetBSD's.
No functional change.
2002-01-26 13:52:53 +00:00
Josef Karthauser
3d21044dd1 Update the $NetBSD$ ident. 2002-01-26 13:09:52 +00:00
Josef Karthauser
baf3f0817e Reduce the diffs between NetBSD and our version where appropriate
(comments, etc.)
2002-01-26 13:08:57 +00:00
Josef Karthauser
31c1f0005b Merge from NetBSD:
usb.c:	revision 1.39

	revision 1.39
	date: 2000/02/22 11:30:56;  author: augustss;  lines: +7 -1
	Prepare a little for having USB interrupt processing done
	outside the hard interrupt level (in a thread or a softintr).
	No real soft processing done yet.
2002-01-26 12:48:57 +00:00
Josef Karthauser
29ac7b3190 Merge from NetBSD:
usb.c:	revision 1.41

	revision 1.41
	date: 2000/03/16 00:46:38;  author: augustss;  lines: +2 -2
	Make the USB event queue longer.  Mine overflows before the
	(user-land) event handler has started.  But then I have
	about 25 devices connected. :)
2002-01-26 12:40:03 +00:00
Josef Karthauser
c2e0959f73 Update the $NetBSD$ ident to show that some patches have been applied
in the past.
2002-01-26 12:25:32 +00:00
Josef Karthauser
b7e4eb198d Merge from NetBSD:
ohci.c:	revision 1.72 and 1.73
    ohcivar.h:	revision 1.19 and 1.20
    uhci.c:	revision 1.85
    usbdi.h:	a small part of revision 1.40
    usbdivar.h:	revision 1.47

Relevant commit messages from NetBSD are:

	date: 2000/02/22 11:30:54;  author: augustss;  state: Exp;
	Prepare a little for having USB interrupt processing done
	outside the hard interrupt level (in a thread or a softintr).
	No real soft processing done yet.
	----------------------------
	date: 2000/02/01 05:42:53;  author: augustss;  state: Exp;
	Put some #ifdefs around power and shutdown hooks.
2002-01-26 12:04:22 +00:00
Crist J. Clark
56962689cc The ipfw(8) 'tee' action simply hasn't worked on incoming packets for
some time. _All_ packets, regardless of destination, were accepted by
the machine as if addressed to it.

Jump back to 'pass' processing for a teed packet instead of falling
through as if it was ours.

PR:		kern/31130
Reviewed by:	-net, luigi
MFC after:	2 weeks
2002-01-26 10:14:08 +00:00
David Malone
d2979f90e7 Remove a parameter name from a prototype. 2002-01-25 21:33:10 +00:00
Poul-Henning Kamp
05a2f79888 Be more conservative about interrupt latency, it aint getting better it seems. 2002-01-25 21:22:34 +00:00
Poul-Henning Kamp
3e72822404 Make st_blksize default to PAGE_SIZE instead of zero. 2002-01-25 16:39:57 +00:00
Scott Long
436c9b651a Fix code that had rotted behind debugging macros.
Approved by:	cg (in principle)
MFC after:	2 weeks
2002-01-25 04:14:12 +00:00
Cameron Grant
be27d718c0 a buffer offset equal to the buffer size is illegal too, fix assertion in
sndbuf_getbufofs()
2002-01-25 02:39:34 +00:00
Cameron Grant
f8db81f347 cosmetic change, free b instead of c->bufhard for consistency within
chn_kill()
2002-01-25 02:36:22 +00:00
Matthew Dillon
4fbd563eb8 Make the 'maxusers 0' auto-sizing code slightly more conservative. Change
from 1 megabyte of ram per user to 2 megabytes of ram per user, and
reduce the cap from 512 to 384.  512 leaves around 240 MB of KVM available
while 384 leaves 270 MB of KVM available.  Available KVM is important
in order to deal with zalloc and kernel malloc area growth.

Reviewed by:	mckusick
MFC: either before 4.5 if re's agree, or after 4.5
2002-01-25 01:54:16 +00:00
Crist J. Clark
f7a54d06e5 Have sysctl() return the correct errno(2) as documented in the
sysctl(3) manpage.

Submitted by:	ru
Obtained from:	BSD/OS
2002-01-25 00:50:49 +00:00
Poul-Henning Kamp
9118ec5a27 Yet a bug with extensible sbufs being marked as OVERFLOWED. This time
because of a signed/unsigned problem.

Approved by:	DES
2002-01-24 20:57:56 +00:00
Josef Karthauser
46d0cbc2cd Merge from NetBSD:
usb.c:	-r1.35 - 1.37
    usb_port.h:	tiny bit of -r1.26 + an extra bit in the FreeBSD config section.

	revision 1.37
	date: 2000/01/24 18:35:51;  author: thorpej;  state: Exp;  lines: +7 -1
	Use config_pending.
	----------------------------
	revision 1.36
	date: 1999/12/22 23:54:09;  author: augustss;  state: Exp;  lines: +2 -2
	Use the flags `locator' to govern if devices are detected early or
	late during cold boot.
	----------------------------
	revision 1.35
	date: 1999/12/20 02:12:23;  author: augustss;  state: Exp;  lines: +8 -5
	Make sure tsleep() is not called during cold boot.
2002-01-24 20:21:17 +00:00
Jonathan Lemon
cd75bfa75f Add entry for EVFILT_NETDEV, which was inadverdently omitted back in Sept. 2002-01-24 17:20:55 +00:00
Guido van Rooij
a3e5380a47 1) Fix a debug statement by filling in its data before the printf in
stead of after
2) Honour NO_TEST_UNIT_READY quirk for atapi devices as well
3) Actually support FujiFilm FinePix 6800 camera's. Will very likely also
work for other FinePix models.

Based on a debug session about half a year ago with Nik Hibma.
MFC after:	2 weeks
2002-01-24 15:10:53 +00:00
Andrew Gallatin
ae967e6461 Regenerated file from previous commit to syscalls.master 2002-01-23 22:47:47 +00:00
Andrew Gallatin
21e06996e4 Linux/alpha uses the same BSDish return mechanism we do for
getpid, getuid, getgid and pipe, since they bootstrapped from
OSF/1 and never cleaned up.  Switch to the native syscalls
on alpha so that the above functions work

MFC after: 7 days
2002-01-23 22:46:14 +00:00
Maxim Sobolev
21367f05ab CG hard sentence breaks.
Submitted by:	ru
2002-01-23 09:35:55 +00:00
Alfred Perlstein
095f670d4e in fget() return EINVAL when the descriptor requested is negative. 2002-01-23 08:40:35 +00:00
Alfred Perlstein
b9a999ddbf Remove holdfp() prototype now that the function no longer exists 2002-01-23 08:28:55 +00:00
Alfred Perlstein
97fa4397d3 make pread use fget_read instead of holdfp. 2002-01-23 08:22:59 +00:00
Matt Jacob
d9f1ea7b2b Roll to latest production level firmware.
MFC after:	1 day
2002-01-23 06:42:54 +00:00
Cameron Grant
4c68642adb improve sndstat output of feederchains so it can be understood without
reading the feeder sourcecode
2002-01-23 06:02:15 +00:00
Cameron Grant
4e60be3473 print warnings if a pcm*.buffersize hint is out of range or a non-power-of-2 2002-01-23 05:49:41 +00:00
Cameron Grant
23bc171b29 fix some comments accidentally hit by search/replace several revisions ago 2002-01-23 05:41:35 +00:00
Cameron Grant
0dd4f3508e set the speeds the right way round for recording using the rate feeder 2002-01-23 05:35:12 +00:00
Cameron Grant
1e59d53c22 add more error checking in chn_init() and chn_reset() 2002-01-23 05:21:27 +00:00
Cameron Grant
79e6a82b48 make the feederchain builder work for recording. this has not been tested
extensively as none of my testboxes have speakers or an audio source at
present, but the chains built look correct and reading /dev/audio (ulaw,
translated from signed 16 bit little-endian) gives values within the
expected range for silence.
2002-01-23 05:10:56 +00:00
Cameron Grant
f6126456ef don't bother checking if an unsigned parameter is less than 0 in a KASSERT 2002-01-23 04:50:51 +00:00
Cameron Grant
095159ecd1 add more error checking to open of /dev/dsp* and /dev/audio* - if the
default format for the chosen subdevice cannot be obtained return an error
instead of returning success with an indeteterminate format selected.

note that this should never happen once the feederchain builder works for
recording.
2002-01-23 04:44:03 +00:00
Cameron Grant
1c72c53f4e don't allow mmap beyond the end of the buffer
Submitted by:	Philippe Anel <philippe.anel@noos.fr> (partially)
2002-01-23 04:32:18 +00:00
Cameron Grant
0b9030a00f remove modules no longer built 2002-01-23 03:43:16 +00:00
Cameron Grant
9480149ab0 consolidate bits that don't need to be seperate modules into the modules
that want them
2002-01-23 03:32:36 +00:00
Kirk McKusick
7b60855308 Add a stub for softdep_request_cleanup() so that compilation without
SOFTUPDATES option works properly.

Submitted by:	Benno Rice <benno@jeamland.net>
2002-01-23 02:18:56 +00:00
Wes Peters
ce6d929bb5 Add missing destroy_dev().
Submitted by:	Maxime Henrion <mux@sneakerz.org>
Reviewed by:	msmith@
MFC after:	3 weeks
2002-01-23 01:11:52 +00:00
Brian Feldman
87e55280fa Remove bogus _POSIX_ACL_PATH_MAX definition. 2002-01-22 21:33:12 +00:00
Jonathan Lemon
d9b7cc1c8d The ENDPTS_EQ macro was comparing the one of the fports to itself. Fix.
Submitted by: emy@boostworks.com
2002-01-22 17:54:28 +00:00
Jonathan Lemon
a1a9c8f7e6 Initialize the sysctl_ctx list early, which avoids a panic in case other
allocatiosn fail and fxp_release() is called.
2002-01-22 17:51:44 +00:00
David Greenman
7228268aaa Fixed bug in calculation of amount of file to send when nbytes !=0 and
headers or trailers are supplied. Reported by Vladislav Shabanov
<vs@rambler-co.ru>.

PR:		33771
Submitted by:	Maxim Konovalov <maxim@macomnet.ru>
MFC after:	3 days
2002-01-22 17:32:10 +00:00
Poul-Henning Kamp
1a25c86b3b In certain cases sbuf_printf() and sbuf_vprintf() could mistakely
make extendable sbufs as overflowed.

Approved by:	des
2002-01-22 11:22:55 +00:00
Giorgos Keramidas
686c8fdcab Tiny style change. Whitespace only change.
Use tab after #define ENOTSUP.

Reviewed by:	mike
2002-01-22 10:44:40 +00:00
Kirk McKusick
03a2057a5b This patch fixes a long standing complaint with soft updates in
which small and/or nearly full filesystems would fail with `file
system full' messages when trying to replace a number of existing
files (for example during a system installation). When the allocation
routines are about to fail with a file system full condition, they
make a call to softdep_request_cleanup() which attempts to accelerate
the flushing of pending deletion requests in an effort to free up
space. In the face of filesystem I/O requests that exceed the
available disk transfer capacity, the cleanup request could take
an unbounded amount of time. Thus, the softdep_request_cleanup()
routine will only try for tickdelay seconds (default 2 seconds)
before giving up and returning a filesystem full error. Under typical
conditions, the softdep_request_cleanup() routine is able to free
up space in under fifty milliseconds.
2002-01-22 06:17:22 +00:00
Andrew Gallatin
500c14f6af Don't read the sigcontext pointer directly from userspace. If the process
is swapped out, this can cause a system panic.  Copy it in, instead

tested by: Bernd Walter <ticso@cicely8.cicely.de>
2002-01-22 02:40:39 +00:00
Peter Wemm
755a585260 List bit 18 (reserved, apparently present on thunderbird cpus)
and bit 19 (athlon XP/MP rev 0x662 and later) for amd_features.

Submitted by:  dwcjr
2002-01-22 01:28:32 +00:00
Poul-Henning Kamp
3ca627fefa Gah! last commit botched indentation, fix indentation and some other
white-space nits while at it.
2002-01-21 20:57:03 +00:00
Poul-Henning Kamp
b4a4f93c5e Restructure slightly, eliminating some repetitive source lines and
making GEOM patches simpler and more readable at the same time.
2002-01-21 20:50:06 +00:00
Hajimu UMEMOTO
a4a6e77341 - Check the address family of the destination cached in a PCB.
- Clear the cached destination before getting another cached route.
  Otherwise, garbage in the padding space (which might be filled in if it was
  used for IPv4) could annoy rtalloc.

Obtained from:	KAME
2002-01-21 20:04:22 +00:00
Hajimu UMEMOTO
54c1b8821b - Check the address family of a cached destination, in case of
sharing the cache with IPv4.
- Check if the cached route is up in in6_selectsrc().

Obtained from:	KAME
2002-01-21 20:02:36 +00:00
Ruslan Ermilov
8c3f5566ae RFC1122 requires that addresses of the form { 127, <any> } MUST NOT
appear outside a host.

PR:		30792, 33996
Obtained from:	ip_input.c
MFC after:	1 week
2002-01-21 13:59:42 +00:00