Commit Graph

68111 Commits

Author SHA1 Message Date
cube
d3730f1c68 o Fix a bug in ksyms that changed the real meaning of st_name entries for
symbols, and made it impossible for the kernel to use that value, and
  correctly find symbols from LKMs.
o Allow LKM users to use DDB to debug the entry function of a LKM by
  loading the symbol table with the temporary name /lkmtemp/ before calling
  it, and then renaming it once we know the module name.

Approved by ragge@.
2003-11-17 10:16:18 +00:00
keihan
0714799990 www.netbsd.org -> www.NetBSD.org 2003-11-17 10:07:58 +00:00
lukem
9009139507 Deprecate <sourcefile>_G now that conf/Makefile.kern.inc modifies
COPTS.<sourcefile> instead
2003-11-17 09:41:19 +00:00
lukem
8ec8bba0a9 Add support for MAKEVERBOSE (a first pass, at least).
Use COPTS.<sourcefile> instead of <sourcefile>_G.
Use HOST_SH (which defaults to `sh' if not set).
2003-11-17 09:39:29 +00:00
sekiya
014a2cd0f4 Rationalize the machine-links creation mechanism. 2003-11-17 09:32:58 +00:00
jonathan
30cbe1194d Fix hanging-paren typo. 2003-11-17 02:02:31 +00:00
manu
144bfac97b First work on Mach exceptions. Things that can turn into signals on UNIX
may turn into exceptions on Mach: a small message sent by the kernel to
the task that requested the exception.
On Darwin, when an exception is sent, no signal can be delivered.

TODO: more exceptions: arithmetic, bad instructions, emulation, s
software, and syscalls (plain and Mach). There is also RPC alert, but
I have no idea about what it is.

While we are there, remove some user ktrace in notification code, and add
a NODEF qualifier in mach_services.master: it will be used for notifications
and exceptions, where the kernel is always client and never server: we
don't want the message to be displayed as "unimplemented xxx" in kdump (thus
UNIMPL is not good), but we don't want to generate the server prototype
(therefore, STD is not good either). NODEF will declare it normally in the
name tables without creating the prototype.
2003-11-17 01:52:14 +00:00
jonathan
cc1346b1a2 Change previous patch to have same effect as patch posted to
tech-kern. Suggested reformatting inadvertently changed the meaning of
the code, as noted by YAMAMOTO Takashi <yamt@mwd.biglobe.ne.jp>.
2003-11-17 01:44:49 +00:00
jonathan
6ddd119256 Commit fix for NFS write deadlock, on filesystems mounted via
local-loopback (lo0). As posted for review on tech-kern 2003-18-09,
with a long  comment explaining (one of) the deadlock scenarios.

I've used this since shortly after 2002-09-12-, without noticing
performance degradataion or instability for non-loopback mounts.
2003-11-17 00:28:32 +00:00
oster
3c778e952c infoFunc doesn't exist any more. Nuke commented out bits refering
to infoFunc.
2003-11-16 20:32:05 +00:00
tsutsui
da9776152f Misc cleanup:
- tweak some attach messages
- establish interrupt after all dma resouces are successfully allocated
- wrap an assertion with #ifdef DIAGNOSTIC
- assume NCRCFG2_FE bit is always enabled
- call bus_dmamap_sync for mdldmap at POSTWRITE for consistency
- pass proper dmamapsize for mdldmap
2003-11-16 18:31:45 +00:00
tsutsui
1dad999926 Fix address calculation for split segment address when the buffer is
crossing boundary in iommu_dvmamap_load().
Fixes E2BIG error on dmamap with smaller boundary size than maxxfersize
(which is used by recent changed pcscp(4)).

While here, some KNF around debug printf etc.
2003-11-16 18:18:59 +00:00
pk
dbaf4e4ad1 Drop the old cpu_switch() code. 2003-11-16 14:56:05 +00:00
scw
5801c73162 - Remove ixpsip_bs_tag (ixp425_sip_io.c). It just duplicated some of
the functionality of ixp425_bs_tag.
 - Add missing stream_{read,write}_1 ops to ixp425_bs_tag.
 - Re-work the delay() implementation to use the free-running Time-
   Stamp counter. This removes the need to bootstrap TMR0 early on.
2003-11-16 12:41:03 +00:00
tls
ad6779479c Oops. I missed this file in my previous commit. Add inclusion of
"files.skipjack" now that Skipjack has been moved from
sys/opencrypto to crypto/skipjack.
2003-11-16 12:10:41 +00:00
tls
1f93975cf8 Move the Skipjack algorithm from sys/opencrypto to sys/crypto/skipjack.
There are now no cryptographic algorithms in sys/opencrypto, which,
according to the comment formerly in files.opencrypto, was the original
intent.
2003-11-16 12:07:50 +00:00
tls
2a94b617f1 We can't use bf_cbc.S if I386_CPU is defined; the 80386 doesn't have
bswapl, and bf_cbc.S uses it.  Unfortunately, this means that GENERIC
will no longer use the asm code -- though it will still use the asm
for the basic Blowfish transform.  This won't slow down the KAME IPsec
(since it rolls its own CBC) but may slow down fast-ipsec in kernels
that have I386_CPU defined.
2003-11-16 12:02:15 +00:00
pk
95ad31d40c __cpu_simple_unlock: use __insn_barrier() instead of a "memory" clobber. 2003-11-16 11:22:30 +00:00
pk
fdd5b03782 Use __insn_barrier() in all bus_space read/write operations. 2003-11-16 11:09:07 +00:00
pk
97bb6a9d59 Introduce __insn_barrier(), designed to prevent instruction re-ordering
with minimal side-effects across its location in the source code.
2003-11-16 11:07:57 +00:00
dyoung
18652e3785 From Steve Woodford (scw@): fix wi(4) and wiconfig(8) on big-endian
machines.
2003-11-16 09:41:01 +00:00
dyoung
0c32f8693f So that the internal bridge works in AP mode, call ath_start after
processing Rx packets.
2003-11-16 09:32:01 +00:00
dyoung
fe919dfeb0 Fix spelling/grammar in a comment. 2003-11-16 09:05:53 +00:00
dyoung
23d8f48692 Add data-link type DLT_IEEE802_11_RADIO to wi and atw. DLT_IEEE802_11_RADIO
lets you monitor radio stats like received signal strength, which
diversity antenna was used, channel/frequency, modulation, and data
rate.
2003-11-16 09:02:42 +00:00
manu
5d86e6465f Typos in make_memory_entry_64 name definitions 2003-11-16 01:14:07 +00:00
manu
ce84f3934f Implement swtch_pri() and swtch() 2003-11-16 01:12:30 +00:00
jonathan
3638f1686a Support symmetric crypto ops, including AES, on hifn 7955 and 7956.
Not tested on 795[56],  but compiles and matches FreeBSD-tested diffs.

Suggested by Sam Leffler <sam@errno.com>, as imported into FreeBSD by Sam.
Submitted to FreeBSD by Rajesh Vaidyanath <RVaidyanath@hifn.com>.
2003-11-16 00:22:09 +00:00
jonathan
2862355ab1 Remove '#ifdef notdef' around userspace ioctl() requests for
pure (non-HMAC) MD5 and SHA1.
2003-11-16 00:16:06 +00:00
uwe
66008dfef1 Fix cpu_switchto() to correctly prepare new lwp before switching to it.
Fixes PR port-sh3/19956.

Big thanks to Christian Limpach <cl@> for pointing this out and
explaning what the fix is.
2003-11-16 00:07:13 +00:00
uwe
60f0942660 Tweak KDASSERT to avoid double negation. 2003-11-15 23:47:58 +00:00
manu
4513f19345 iTry to gather as much Mach services names as possible, this way we
will have unimplemented services showing their names in ktrace

Add a new generated file with only service id and name, which will
be included by kdump to display services names.

This removes the need for using the user ktrace facility for services names.
2003-11-15 22:55:35 +00:00
thorpej
052ba0ec50 We have CVS; there is no reason to make .bak files when generating the
syscall tables.
2003-11-15 20:30:59 +00:00
thorpej
48afa79adc We have CVS; there is no reason to make .bak files when generating the
syscall table and vnode interface tables.
2003-11-15 20:26:02 +00:00
scw
07acf64710 Re-instate the behaviour of sending SIGKILL to a process if uvm_fault()
returns ENOMEM. SIGSEGV just doesn't cut it. The original code looks to
have been lost in revision 1.34.
2003-11-15 20:18:34 +00:00
bouyer
6fb817f5dd Commit changes proposed on tech-kern Thu, 6 Nov 2003
- factor out disksubr.c between sun3, sparc and sparc64. Keep the sun3
  groveling code to find a NetBSD disklabel in the first sector (so that it
  can find a label at the old sun3 LABELOFFSET) as a fallback is not
  label at LABELOFFSET, or sun label is present.
- Fix the sun3 LABELOFFSET (was 64, but the kernel wrote the NetBSD label at
  128)
- Make next68k disksubr.c always write a next-compatible disklabel.
- remove #ifdef __sparc__ hack from disklabel(8), and change it to issue
  a DIOCWDINFO after writing the disklabel to the raw partition in the
  -r/-I case (so that the kernel can convert the label if needed).
2003-11-15 17:52:30 +00:00
manu
527b59366e regen 2003-11-15 17:45:34 +00:00
manu
26853377eb Try to add all mach servers defined in Darwin in the server list. Most of
them will never be implemented, of course.
2003-11-15 17:44:38 +00:00
bouyer
5741c101e5 Clear interrupts at end of attach, in case there is one pending.
Avoid "bogus intr" messages when interrupts are enabled later.
Patch tested by myself and Chuck Silvers.
2003-11-15 16:40:46 +00:00
isaki
ae90c838ab make it compilable even if FDDEBUG was defined. 2003-11-15 15:02:08 +00:00
scw
a7533e4cdc - Add LOCKDEBUG-protected calls to sched_lock_idle() to cpu_switchto and
the idle loop. They seem to have gone AWOL sometime in the past.
   Fixes port-arm/23390.
 - While here, tidy up the idle loop.
 - Add a cheap DIAGNOSTIC check for run queue sanity.
2003-11-15 08:44:18 +00:00
petrov
5af3af05f4 Compile GENERIC.MP. 2003-11-15 05:24:51 +00:00
petrov
b1f1e5e073 Add stub for cpu_boot_secondary_processors. 2003-11-15 05:24:03 +00:00
petrov
e6b350b339 Generic SMP configuration. 2003-11-15 04:03:00 +00:00
thorpej
001102c808 Regen: fsync_range(2) system call. 2003-11-15 01:20:48 +00:00
thorpej
857f24339f Kernel portion of the fsync_range(2) system call. Written by Bill
Studenmund, and contributed by Wasabi Systems, Inc.
2003-11-15 01:19:38 +00:00
jmcneill
1708376e44 Don't set VR_EECSR_LOAD before reading the MAC address on the VT6102 either. 2003-11-14 22:33:29 +00:00
briggs
dfa839f16b Make sure that L_SA_PAGEFAULT gets cleared from l_flag if pmap_fault_fixup
returns non-zero and we want to shortcut out.  This avoids a bogus pagefault
condition being detected in sa_switch().
Many thanks to Christian Limpach for finding this, obviating my band-aid
patch to kern_sa.c (posted on tech-kern).
2003-11-14 21:22:08 +00:00
scw
4eeb1be7e4 Check alignment of the fault PC before de-referencing it.
Give the process a Illegal Instruction fault if the PC is misaligned.
2003-11-14 19:03:17 +00:00
scw
a590a31135 - In data_abort_handler(), move the fault pc alignment check to before
the call to data_abort_fixup() as the fixup routines also try to
   de-reference the fault pc.

 - If a fault came from kernel mode, and the fault address looks to be in
   the kernel's address space, and pcb_onfault is *set*, check the
   instruction which caused the fault. If it's LDR{B,}T or STR{B,}T
   then one of the copy in/out routines is trying to read/write a
   kernel address with the wrong privilege. If that address is actually
   mapped, we could end up in an infinite loop because we failed to
   notice that it's really a 'user mode' access. Yay for "crashme".
   I suspect this also fixes PR port-arm/23052.

   Note: This *could* be fixed by adding sanity checks to copyin et al,
   but that would add extra overhead to the non-error path...

 - Fix a couple of __predict_false cases.
2003-11-14 19:00:03 +00:00
christos
b7fd779233 We really don't want frame.h... 2003-11-14 17:44:05 +00:00