Commit Graph

166355 Commits

Author SHA1 Message Date
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
ad dcc13a2839 Regen. 2008-01-25 14:32:46 +00:00
ad 1997a1e1f4 Remove VOP_LEASE. Discussed on tech-kern. 2008-01-25 14:32:11 +00:00
ad 2c1cdef339 Ignore clean vnodes in a couple more places. 2008-01-25 14:16:41 +00:00
he 0d14187892 I'm guessing that there should be no space between the hyphen and
the second word in "hand-lettered".
2008-01-25 13:40:56 +00:00
ad 0eb1c668c6 Regen. 2008-01-25 13:39:24 +00:00
ad baa4a2209f Mark the extattr syscalls MPSAFE. 2008-01-25 13:38:57 +00:00
ad 51d8643120 - Fix a couple of locking botches.
- Remove calls to VOP_LEASE().
2008-01-25 13:31:22 +00:00
skrll f6f787741b ANSIfy a couple of funcs. 2008-01-25 12:48:05 +00:00
skrll 572591cbe8 Update some comments. 2008-01-25 12:35:48 +00:00
skrll ebb5deb738 Define PT_MACHDEP_STRINGS 2008-01-25 11:59:20 +00:00
pooka 1bff00ecec Destroy extattr lock when destroying extattrs associated with the
mountpoint.  Make stopping extattrs always succesful to facilitate
always being able to free resources.
2008-01-25 10:49:32 +00:00
pooka 04177824be spec_node_init() mfs device vnode.
fixes PR kern/37867 by Steve Woodford
2008-01-25 10:30:20 +00:00
dogcow c529b62639 fallout from v_specinfo removal 2008-01-25 08:47:44 +00:00
tls 9675caff5e Some minor opencrypto fixes, one with a major performance impact for
OpenSSL:

1) Fix extremely misleading text in crypto.4 manual page so it does not
   appear to claim that a new cloned file descriptor is required for every
   session.

2) Fix severe performance problem (and fd leak!) in openssl cryptodev
   engine resulting from misunderstanding probably caused by said manual
   page text.

3) Check for session-ID wraparound in kernel cryptodev provider.  Also,
   start allocating sessions at 1, not 0 -- this will be necessary when
   we add ioctls for the creation of multiple sessions at once, so we
   can tell which if any creations failed.
2008-01-25 07:09:56 +00:00