Commit Graph

42567 Commits

Author SHA1 Message Date
jdolecek f8d1770316 define EXEC_AOUT (if not defined) before including linux_syscallargs.h,
to get linux_sys_uselib() prototype
2000-12-12 17:52:56 +00:00
mycroft 0e5af5b3d1 GC. 2000-12-12 17:51:03 +00:00
thorpej 2a6413983b Only allow superuser to change 802.11 power params. 2000-12-12 17:48:29 +00:00
mycroft 6c96a6759b Update from libc. 2000-12-12 17:44:04 +00:00
mycroft 9e9c8e676b Adjust some profiling stuff for the kernel. 2000-12-12 17:38:45 +00:00
jdolecek 0c74ffb7fd if the third argument in syscall.conf matches [a-z0-9_], use it as
a function alias instead of the function name in { ... }
2000-12-12 17:32:45 +00:00
thorpej d197326e7a Add a missing return after freeing an mbuf. From Dave Huang <khym@bga.com>. 2000-12-12 17:25:34 +00:00
chs 395f8c2177 initialize read creds in nfs_open() too. 2000-12-12 17:13:17 +00:00
fvdl 0b7398458a Allow for passing through of certain ranges of ioctl command values
directly to a device. The device has to be aware of how to handle
with these special ioctls. Useful for LKMs that deal with Linux
binaries.
2000-12-12 15:11:56 +00:00
mycroft 455360f941 Do the __HAVE_SYSCALL_INTERN and __HAVE_MINIMAL_EMUL dance. 2000-12-12 08:00:26 +00:00
mycroft 5e6430ffd8 Clean this up and add profiling stuff. 2000-12-12 07:35:25 +00:00
mycroft 9fc58d6908 Whoops, lay off the crack. 2000-12-12 06:36:19 +00:00
mycroft 446f34fb60 suswintr() and fuswintr() return -1 on error, not 0. 2000-12-12 06:32:39 +00:00
mycroft 7057d01bbc Inline need_resched() and need_proftick(). Make need_proftick() actually *do*
something!
2000-12-12 06:06:05 +00:00
mycroft 6a719db6e7 Still more cleanup. 2000-12-12 05:35:48 +00:00
onoe aa513e6338 add support(?) for PC4500 which is a 2Mbps product.
Though ifconfig -m no longer show 5Mbps/11Mbps for PC4500 by this fix,
I cannot find how to set fixed transmit speed to the firmware.
FreeBSD version of driver apparently ignore the value set by ancontrol(8).
2000-12-12 05:34:02 +00:00
mycroft c656add165 More cleanup. 2000-12-12 05:26:38 +00:00
mycroft e58eb48f25 Begin cleaning up the syscall path, a la i386. 2000-12-12 05:21:02 +00:00
onoe 99675e3dde cleanup headers: remove duplicate definition, split reg.h/var.h. 2000-12-12 05:11:15 +00:00
nisimura a141a84ce1 Relocate boot flag detection from consinit() to more logical place. 2000-12-12 04:07:35 +00:00
nisimura 80195863fc This file is a replicant of hp300. The following is peculair to
the original HPBSD implementation and HP hardware design.

 * Portions of the last segment of KVA space (0xFFF00000 -
 * 0xFFFFFFFF) are mapped for a couple of purposes.  0xFFF00000
 * for UPAGES is used for mapping the current process u-area
 * (u + kernel stack).  The very last page (0xFFFFF000) is mapped
 * to the last physical page of RAM to give us a region in which
 * PA == VA.  We use the first part of this page for enabling
 * and disabling mapping.  The last part of this page also contains
 * info left by the boot ROM.

Nuke lptpa because that is irrelavant for LUNA.
Put #if defined(M68040) for consistency postponing efforts of LUNA-2.
2000-12-12 04:06:08 +00:00
thorpej c0bcfa5994 Support SIOC{G,S}80211POWER. 2000-12-12 04:04:29 +00:00
thorpej 589bc762b7 Add a way to manipulate the power management parameters specified in
802.11.
2000-12-12 04:03:38 +00:00
mycroft 0175db6e40 #ifdef KTRACE some stuff. 2000-12-12 03:33:16 +00:00
thorpej 41d6a62c1c s/Ethernet/802.11/ when printing the address. 2000-12-12 01:32:34 +00:00
onoe c63194c7af To fix panic at "ifconfig an0 down",
define ANCACHE in if_an_pcmcia.c (XXX)
try not to access registers after interface down.
2000-12-11 23:58:55 +00:00
bjh21 afb44982ee Correct the mangled-vectors check. 2000-12-11 23:51:58 +00:00
bjh21 0692c35dda Since BBBB correctly disables the CPU cache at startup, we now decide whether
to leave it disabled based on the bottom bit of cpu0's cf_flags.
2000-12-11 23:46:50 +00:00
onoe 9c25e9208a Port 'an' driver for Aironet PC4500/PC4800 IEEE802.11 card from FreeBSD.
This is very adhoc work for IETF meeting.
- Since it seems that 'an' and 'wi' have similar hardware, low level
  functions should be shared.
- There are PCI/ISA cards of Aironet but not supported yet.
- The wiconfig interface is changed so that wiconfig cannot be used.
- 'ancontrol' of FreeBSD is not ported.
- Only infrastructure mode is tested.
- WEP is not supported.

Though I only have an Aironet card, Cisco card should be expected to work.
2000-12-11 23:16:50 +00:00
bjh21 d606f7e6e0 Move most of the RISC OS shutdown into BASIC code.
Issue Service_PreReset to get the hardware to a sane state.
Use *ShutDown to log off fileservers.
Use the correct arguments to Cache_Control.
Using Service_PreReset seems to have rendered the Podule_ReadID trick
unnecessary, so g/c it.
2000-12-11 22:19:18 +00:00
itojun 0e7d3ce88c split /usr/include/sys/md5.h and /usr/include/md5.h completely.
future direction: nuke /usr/include/sys/md5.h, it shouldn't be there as
we don't provide libkern to userland.
2000-12-11 21:05:14 +00:00
scw b875ed466e Some micro-optimisations to _spl() and _splraise(), saving one instruction
in the former, and three to seven in the latter.
2000-12-11 20:05:33 +00:00
martin ac28b114d2 Make this compilable again on ports without __HAVE_SYSCALL_INTERN. 2000-12-11 19:53:06 +00:00
itojun 1101f217b5 no need to rtalloc1() twice in pmtud. from kame 2000-12-11 19:28:47 +00:00
eeh ce7f4ef73f Don't use rwindow_save() since the stack has already been made COW. 2000-12-11 18:51:55 +00:00
marcus 83334549fb Initial import of port "dreamcast" (cloned from port "evbsh3"). 2000-12-11 18:19:12 +00:00
thorpej 17bf4cff64 Add support for 802.11 authentication frames, required to interoperate
with Aviator Pro cards on Windows.  Written by Steve Weiss for OpenBSD,
ported to NetBSD by me.
2000-12-11 17:53:19 +00:00
mycroft 9a8fbe25bc Handle the VM86-mode syscall problem by changing the syscall vector when
jumping in or out of VM86 mode.
2000-12-11 17:36:03 +00:00
ws 8132c2a6aa Fix the previous differently:
The intent was to protect the full range of ports on the board by the
barriers.  But the start address was wrong.  Fix it.

While here, change two other barriers to also protect the full range
(not only the nic ports), and add yet another similar barrier.
2000-12-11 17:07:38 +00:00
mycroft 1ef2795be9 Separate the syscall handlers into two versions -- one which does ktrace, and
one which doesn't.  Dynamically switch.
There's more to do on this, but I have to go to work.
2000-12-11 16:49:15 +00:00
mycroft 11fcbfe7a6 Call e_syscall_intern every time ktrace flags are modified. 2000-12-11 16:39:01 +00:00
tsutsui c8a3a939e3 space -> TAB 2000-12-11 15:38:43 +00:00
tsutsui 7212823f47 Set USPACE_ALIGN to USPACE on mips. 2000-12-11 15:37:32 +00:00
tsutsui aaa48a8d25 Use USPACE_ALIGN for an alignment argument on allocating U-area.
The default value is 0, and could be overridden by machine/vmparam.h.
2000-12-11 15:35:42 +00:00
jdolecek 128eb4ec07 bring in 'syscall' and 'misc' example modules from former /usr/share/lkm,
updated to current LKM programming style
even through the modules do work, they are not built nor installed by default -
they are here solely as a help to potential LKM writer
2000-12-11 13:48:10 +00:00
ad 2940363203 Report soft-errors-per-unit once per minute at most. 2000-12-11 13:19:50 +00:00
tron d0de1ec852 Protect against multiple inclusion. 2000-12-11 11:39:06 +00:00
tron c6cdb692f3 Include "machine/frame.h" to avoid lint errors while building "libc". 2000-12-11 10:22:55 +00:00
jdolecek 384e2929b7 nuke, mostly obsolete 2000-12-11 09:11:22 +00:00
itojun 93292b8aaa do not touch region after free 2000-12-11 07:52:48 +00:00
mycroft e6d33b69ec Nuke reference to trace.h. 2000-12-11 05:41:06 +00:00
augustss 6e11678a15 Get rid of UQ_ASSUME_CM_OVER_DATA quirk; it's handled differently now. 2000-12-11 05:41:00 +00:00
mycroft 0f17615da7 There is no Berkeley code in any of these files. 2000-12-11 05:37:01 +00:00
mycroft f495cd9dc6 Introduce 2 new flags in types.h:
* __HAVE_SYSCALL_INTERN.  If this is defined, e_syscall is replaced by
  e_syscall_intern, which is called at key places in the kernel.  This can be
  used to set a MD syscall handler pointer.  This obsoletes and replaces the
  *_HAS_SEPARATED_SYSCALL flags.
* __HAVE_MINIMAL_EMUL.  If this is defined, certain (deprecated) elements in
  struct emul are omitted.
2000-12-11 05:28:59 +00:00
thorpej 105cf38061 Add some basic statistics to pool_cache. 2000-12-11 05:22:55 +00:00
mycroft fef5184d84 Regen. 2000-12-11 04:56:01 +00:00
mycroft fc774b14ce getuid -> getuid_with_euid
getgid -> getgid_with_egid
2000-12-11 04:55:50 +00:00
mycroft 75fbdc005e Nuke LINUX_MACHDEP_PASS_PPID. 2000-12-11 04:55:09 +00:00
mycroft cfe0002fc5 Regen. 2000-12-11 04:54:29 +00:00
mycroft 6d0c28a87c getpid -> getpid_with_ppid 2000-12-11 04:54:13 +00:00
chs bb61d9c5e4 in flush_inodedep_deps(), drop the big softdep lock while flushing pages. 2000-12-11 03:53:54 +00:00
mycroft e99a608974 Regen. 2000-12-11 03:09:10 +00:00
mycroft c0341b165d Round up sysent table size. 2000-12-11 03:09:02 +00:00
mycroft f0689d5505 Regen. 2000-12-11 03:07:06 +00:00
mycroft 23babc12e5 Round up sysent table size. 2000-12-11 03:06:49 +00:00
chs a8a757cd0a implement VOP_GETPAGES(). 2000-12-11 02:50:17 +00:00
mycroft 6a4dfe5f24 Slight tweak. 2000-12-11 02:48:07 +00:00
itojun 25296369e5 make sure t_family has the correct protocol family, after connect(2)
and/or bind(2).  sync with kame
2000-12-11 00:07:48 +00:00
itojun 9302f377a6 remove NRL code leftover. sync with kame 2000-12-10 23:39:36 +00:00
fvdl e464d0288a sobind() interface change -> 1.5N 2000-12-10 23:17:28 +00:00
fvdl 405b695086 Make sobind() take a struct proc *. It already took curproc and
passed it down to the appropriate usrreq function, and this
allows usage for contexts that need to be explicitly different
from curproc (like in the NFS code when binding to a reserved port).
2000-12-10 23:16:28 +00:00
fvdl 89cef8992e Update prototype for sobind() to include a struct proc *. 2000-12-10 23:13:42 +00:00
scw 5d5ebb1b73 Simplify the reboot code:
Always jump through the PROM's reset vector, regardless of board type.
  Fix a stack offset problem in the mvme147 reset code path.
2000-12-10 20:00:21 +00:00
eeh 264fbb89af Cleanup types in DEBUG printf()s. 2000-12-10 19:52:17 +00:00
chs 4ab33e73c2 call pgo_flush with (start,end) rather than (start,length). 2000-12-10 19:41:35 +00:00
chs 3a5e4f901b in *_sync(), don't skip vnodes which have (potentially dirty) pages. 2000-12-10 19:36:31 +00:00
eeh 40638d9f35 Zero proc 0 stack pages so the pcb is cleared out before use. 2000-12-10 19:33:02 +00:00
mycroft 66610a4779 Introduce PROC_PC(), which is used to get a process's user PC. If this is
defined, call addupc_intr() directly from statclock() in the system time case,
using the same P_OWEUPC path if the copyin/copyout fails.
Use this in i386 to remove profiling code from the normal userret() path.
2000-12-10 19:29:30 +00:00
chs 837f5c9bd6 we don't need VM_PROT_EXECUTE for UBC mappings. 2000-12-10 19:28:09 +00:00
chs b9423d9d52 in pmap_enter(), do not mark the page modified just because we mapped it
for write to a kernel address.  callers may now use the "flags" argument
to cause this to happen when desired.
2000-12-10 19:25:44 +00:00
eeh af770220fa Fix for chips that don't grok NCRCMD_SELATN3. 2000-12-10 19:25:07 +00:00
scw 8ace7abc75 A small splx()/spl0()/soft interrupt related optimisation. If we're
dropping to spl0, use inline code to check if a soft interrupt is
pending instead of taking the hit of a function call to do the check.
2000-12-10 18:43:02 +00:00
scw c5b6f43634 Define `splzs()' to be `splserial()' instead of `spl4()', which was
wrong anyway since it blindly set SPL to 4 regardless of the prevailing
level.
2000-12-10 18:00:24 +00:00
thorpej a1479e118c Fix previous:
- EBADF, not NULL when a file descriptor can't be found.
- Check FIF_WANTCLOSE properly.
2000-12-10 17:34:25 +00:00
thorpej ce866cd0e8 Don't hold a pool cache lock across any call to pool_get() or pool_put().
This allows us to change a try-lock into a normal lock in the reclaim
case.
2000-12-10 17:03:34 +00:00
jdolecek 48f421c3fa do not try to get/set sample rate on codecs which don't support variable
rate audio - always report/use fixed rate of 44100 for them, so that the
other audio code DTRT
2000-12-10 15:43:02 +00:00
bjh21 4f1ee09e5f It looks like UBC_WINSIZE needs to be at least PAGE_SIZE. 2000-12-10 14:28:45 +00:00
fvdl eb1e790ed3 Add linux_fdio.c and linux_hdio.c 2000-12-10 14:15:04 +00:00
fvdl 538c381225 findblkname is not static (and is in fact used outside this file). 2000-12-10 14:14:15 +00:00
fvdl 813c5d92f7 Bump stackgap size from 400 to 512. 2000-12-10 14:13:04 +00:00
fvdl a499e56944 Add some ioctls for harddisk, floppy disk and console handling.
Implement a few extra cdrom ioctl calls.
Make sure to correctly use FILE_USE and FILE_UNUSE.
2000-12-10 14:12:16 +00:00
fvdl e772d7a6d5 Add i386-specific code for a few ioctl calls. 2000-12-10 14:09:59 +00:00
fvdl ec9b1e3f5e The gist of the Linux _IOX definitions was the same for all platforms;
move it to the MI linux_ioctl.h and only leave the MD bits in the MD
header files.

Add defintions for linux_ioctl_hdio and linux_ioctl_fdio.
2000-12-10 14:08:48 +00:00
fvdl 8488f3e039 The gist of the Linux _IOX definitions was the same for all platforms;
move it to the MI linux_ioctl.h and only leave the MD bits in the MD
header files.
2000-12-10 14:07:22 +00:00
fvdl f86f1f091f Add linux_hdio.c and linux_fdio.c 2000-12-10 14:05:54 +00:00
jdolecek 1683c206a4 provide dymmy symbol 'syscall' to make ppc kernels
linkable after recent emul changes - it's used in emul_netbsd and friends
XXX this is probably wrong solution; should powerpc have separate
XXX syscall() as other ports do ?
2000-12-10 12:49:54 +00:00
jdolecek 7a2157f1f3 emul_unregister(): fix incorrect loop condition - execsw[] is not NULL
terminated
2000-12-10 12:42:30 +00:00
jdolecek 8ca533ee5b since this is now standalone and not called via syscall(), we need to
update statistics and set p->p_md.md_regs accordingly here
do the errno translation uncoditionally
2000-12-10 12:23:50 +00:00
jdolecek 603884ff22 syscall(): no emulation using this needs errno mapping, G/C the code 2000-12-10 12:09:59 +00:00
jdolecek 9b6d040095 fork1(): write the ktrace entry before the parent is put to sleep for
FORK_PPWAIT case, so that this DTRT for vfork() too
2000-12-10 11:41:20 +00:00