Commit Graph

166269 Commits

Author SHA1 Message Date
ad
ea9faa6742 lockstat: no longer track lockmgr() events. 2008-01-26 14:29:31 +00:00
tsutsui
af15dc6cc2 - call mec_reset() to make sure DMA stopped (inspired by OpenBSD)
- also stop DMA in mec_reset() before resetting chip
- set MAC address to MAC_STATION reg in mec_attach(), not in mec_reset()

Possibly fixes occasional interrupt storm from mec(4) (i.e. hangup) at boot.
2008-01-26 14:28:49 +00:00
wiz
a7f30b5c9c Sort options. Remove superfluous .Pp. Grammar improvements.
Simplify macro usage. Use more macros.
2008-01-26 14:27:42 +00:00
ad
29426ebab2 - Fix several problems with the inode hash.
- Replace use of lockmgr().
2008-01-26 14:25:38 +00:00
tsutsui
6ca5886d93 Add a wakeup instruction which is taken from Realtek driver.
Untested on newer chips, but no bad side effect on my 8169S.
2008-01-26 14:24:14 +00:00
wiz
491885cb8a Document that cv_timedwait with a ticks argument of zero behaves like
cv_wait.
2008-01-26 14:16:27 +00:00
ad
2763af2195 rw_write_held: return true only if held by the current LWP. 2008-01-26 14:13:37 +00:00
tsutsui
9e319fb40f Wakeup some newer chips from powerdown mode. From FreeBSD/Linux driver
via OpenBSD.

Tested by wiz@ in PR kern/37868.
2008-01-26 14:13:06 +00:00
tsutsui
d0ea2c0ffa Also account idepth in clock interrupt handlers
(which are registered directly by isr_add_custom())
and use the idepth value for CLKF_INTR().
2008-01-26 14:02:54 +00:00
nakayama
5da5bac16f Fix for 32-bit kernels. 2008-01-26 11:43:36 +00:00
nakayama
7a559cd1c0 Fix include. 2008-01-26 11:42:45 +00:00
scw
fe86b93506 g/c an unused variable.
From Donald T Hayford on port-arm@
2008-01-26 10:46:39 +00:00
dsl
a94c98311a Don't try to bound the return value for pread/pwrite/pathconf by casting
an 'ssize_t' or 'long' variable to 'register_t'.
If the sizes were different it would either overwrite stack or return
uninitialised stack.  On big-endian systems things would be worse!
2008-01-26 09:07:01 +00:00
dsl
fe0f1a7e5d regen 2008-01-26 08:44:48 +00:00
dsl
be09b9791a Add a wrapper for posix_fadvise() 2008-01-26 08:35:51 +00:00
simonb
2c3f5b99b6 Add some aligned tests for the more "normal" cases. Even though this is
primarily a regression tool, it's still a useful benchmark tool so we
might as well try relatively real-world tests as well.

Ok joerg@.
2008-01-26 04:56:45 +00:00
chris
8184079c4d Fix typo, assum.h -> assym.h 2008-01-26 02:07:13 +00:00
chris
bb382cd142 Add arm version of cpu_in_cksum. Based on previous in_cksum4 code.
In fact it's mostly the same code, with a different stub on it.

On a cats the regress/sys/net/in_cksum tests show that it takes around
50-60% of the time the C version takes.  In some cases it takes as low as
20%.
2008-01-26 02:06:04 +00:00
chris
be877f2c8a Add support to support code for Kinetic card. The kernel is loaded into
the Processor local memory, so that should provide a speed up.

Currently DMA won't work, as we only tell the kernel about the kinetic
memory, and exclude the motherboard memory. I'll look at fixing this over
the weekend.

Add support for kernels > 4MiB.  The -current INSTALL kernel has now hit
25KiB over 4MiB and we were only adding L1 mappings for 4MiB.

Also added lots of tracing which I used to work out what boot32 was doing,
and so what the kernel was meant to be doing.  This is disabled by default.

Out of paranoia also become a client of all domains before setting the ttb,
just in case RISC-OS ever decides to use domains.

All of this has been tested on my Kinetic Risc-PC.  I've carried out a full
install onto it, and hope to use it for testing out the interrupt work I've
been doing.
2008-01-26 00:16:57 +00:00
tls
49444bc037 Make /dev/crypto properly cloning. Leave CRIOGET in place but note that
it is deprecated, no longer required, and will be removed in a future
release of NetBSD.

Dramatically reduce the size of the session structure by removing an
IOV_MAX array of iovecs where only the first was use.  Saves an 8k
bzero on each session creation.

Convert fixed-size allocations in cryptodev.c to pools.
2008-01-26 00:04:27 +00:00
chris
f6be197e27 Fix support for kinetic in the bootloader.
With these changes the kinetic dram blocks are correctly identified and
passed into the kernel.

Note that I've a pending kernel change to understand the kinetic blocks
and do something useful with them.
2008-01-26 00:01:54 +00:00
dsl
7ddd81a137 Add support for mbr code with ascii keycodes 2008-01-25 23:19:10 +00:00
chris
3f1a682126 Leave the SA's clockswitching enabled. It allows the SA to run at full
speed when running things from cache, rather than being in step with the
memory clock.
2008-01-25 23:18:59 +00:00
xtraeme
6b037e2408 Make it print the correct version for AHCI 1.2 controllers. 2008-01-25 21:41:48 +00:00
dsl
671c873837 Somehow this file won some extra tab characters, nuke them to align the code. 2008-01-25 21:40:58 +00:00
chris
71e0e0cf4f Rename acorn26's switchframe sf_r14 to sf_pc.
This should allow gdb to compile, although it won't understand acorn26
switchframes.
2008-01-25 21:23:50 +00:00
chris
2294481ee4 Replace current_intr_depth with curcpu()->ci_idepth.
This makes acorn26 GENERIC compile, not run-time tested.
2008-01-25 21:21:04 +00:00
joerg
2a492bc9f9 Annotate cpu_in_cksum changes. 2008-01-25 21:16:48 +00:00
joerg
6e869e402d Refactor in_cksum/in4_cksum/in6_cksum implementations:
- All three functions are included in the kernel by default.
  They call a backend function cpu_in_cksum after possibly
  computing the checksum of the pseudo header.
- cpu_in_cksum is the core to implement the one-complement sum.
  The default implementation is moderate fast on most platforms
  and provides a 32bit accumulator with 16bit addends for L32 platforms
  and a 64bit accumulator with 32bit addends for L64 platforms.
  It handles edge cases like very large mbuf chains (could happen with
  native IPv6 in the future) and provides a good base for new native
  implementations.
- Modify i386 and amd64 assembly to use the new interface.

This disables the MD implementations on !x86 until the conversion is
done. For Alpha, the portable version is faster.
2008-01-25 21:12:10 +00:00
ad
e49174fa0c - Fix probelms with inode hash: make MPSAFE, don't allocate with held locks.
- Replace use of lockmgr().
2008-01-25 20:49:15 +00:00
jmcneill
e60a9e5d81 Note Portege 3440 support, and change working for X11 switching bug, from
Martin S. Weber on current-users.
2008-01-25 20:41:22 +00:00
ad
632e64ed4e lockmgr() not used here, remove ref to it. 2008-01-25 20:39:28 +00:00
ad
de81194d0c - Make new vnode construction MPSAFE.
- Replace use of lockmgr().
2008-01-25 20:29:28 +00:00
oster
d7fd120577 Fix fallout from v_specinfo removal. hp300 builds again. 2008-01-25 20:21:44 +00:00
joerg
d28597deae Add some assym.h dependencies. 2008-01-25 20:02:06 +00:00
christos
0666855359 PR/37865: Wolfgang Stukenbrock: yppoll uses only UDP to request the map-info 2008-01-25 19:58:53 +00:00
christos
5c8db85ac9 wait for 15 seconds, not 15 microseconds. 2008-01-25 19:54:40 +00:00
christos
a1e4f75af9 PR/37864: Wolfgang Stukenbrock: when requesting TCP rcp-service port numbers
UDP is used
2008-01-25 19:43:53 +00:00
joerg
3a35c33b92 Add assym.h dependencies. 2008-01-25 19:39:22 +00:00
christos
787a0bbadb minor lint 2008-01-25 19:36:27 +00:00
christos
1b761c7278 PR/37863: Wolfgang Stukenbrock: yp_passwd command may destroy NIS database entries when used on a server that includes users via netgroups 2008-01-25 19:36:12 +00:00
ad
501eb05cc2 - Prevent LOCKDEBUG from complaining if we do rw_tryenter() on a lock
that we already own.
- Add an assembly stub for rw_tryenter().
2008-01-25 19:02:31 +00:00
xtraeme
85adc21249 Some indentation for a few printfs that weren't respecting 80 chars
per line.
2008-01-25 18:56:55 +00:00
joerg
ce67bf568b Fix dependencies on assym.h. 2008-01-25 18:54:26 +00:00
joerg
218115037a Simplify the calibration code a great bit by just waiting around 100ms
polling the i8254 as reference and counting the cycles with that.
Disable interrupts. This should be relatively stable even in the light
of SMIs as long as they happen in the middle of the loop. This fixes
long delays during boot.

If greater precision for the calibration is desired, a second run should
be done at a different time when the HPET or ACPI timer is present. Both
provide much faster access (less jitter) and a higher frequency.
2008-01-25 18:50:22 +00:00
ad
e0f8c5ca59 vrelel: remove a bogus KASSERT. 2008-01-25 16:59:31 +00:00
hannken
5ab6217754 Spec_open(): clear sd_bdevvp if bdev_open() failed.
Ok: Andrew Doran <ad@netbsd.org>
2008-01-25 16:21:04 +00:00
riz
960857eb6d Since VOP_LEASE is gone, remove genfs_lease_check() too. Now my kernel
builds again.  :)
2008-01-25 15:34:59 +00:00
ad
38076b60ea vn_setrecurse: if no lock is exported, use v_lock. Works around issue
described in PR kern/37808. The ideal solution here is to kill vnode
lock recursion, which should not be hard once it is understood what
the two remaining callers of vn_setrecurse() are doing.
2008-01-25 14:37:33 +00:00
ad
dd1ca367a6 4.99.50 - goodbye VOP_LEASE 2008-01-25 14:33:08 +00:00