]> Zhao Yanbai Git Server - minix.git/log
minix.git
12 years agobuild shared versions of libraries
Ben Gras [Sat, 31 Mar 2012 00:28:03 +0000 (02:28 +0200)]
build shared versions of libraries

building defaults to off until clang is updated.

current clang does not handle -shared, necessary to change the ld
invocation to build shared libraries properly. a new clang should be
installed and MKPIC defaults to no unless the newer clang is detected.

changes:

. mainly small imports of a Makefile or two and small fixes
  (turning things back on that were turned off in Makefiles)
. e.g.: dynamic librefuse now depends on dynamic
  libpuffs, so libpuffs has to be built dynamically too
  and a make dependency barrier is needed in lib/Makefile
. all library objects now have a PIC (for .so) and non-PIC
  version, so everything is built twice.
. generate PIC versions of the compat (un-RENAMEd) jump files,
  include function type annotation in generated assembly
. build progs with -static by default for now
. also build ld.elf_so
. also import NetBSD ldd

12 years agorecognize and execute dynamically linked executables
Ben Gras [Tue, 3 Apr 2012 13:52:25 +0000 (15:52 +0200)]
recognize and execute dynamically linked executables

   . generalize libexec slightly to get some more necessary information
  from ELF files, e.g. the interpreter
. execute dynamically linked executables when exec()ed by VFS
. switch to netbsd variant of elf32.h exclusively, solves some
  conflicting headers

12 years agokernel: align gdt and idt base addresses
Ben Gras [Sun, 15 Apr 2012 18:39:36 +0000 (20:39 +0200)]
kernel: align gdt and idt base addresses

patch my fdmanana:
As recommended by the Intel 64 and IA-32 Architectures Developer's
Manual Volume 3A, the GDT and IDT base addresses should be aligned on an
8 byte boundary to yield better processor performance.

12 years agoProvide boot option to boot into single user mode
Thomas Veerman [Fri, 13 Apr 2012 13:54:31 +0000 (13:54 +0000)]
Provide boot option to boot into single user mode

12 years agoFix booting into single user mode
Thomas Veerman [Fri, 13 Apr 2012 13:52:48 +0000 (13:52 +0000)]
Fix booting into single user mode

Due to a shift, mountfstab was unable to locate the fstab file and
mount other file systems causing a number of errors to be generated.

12 years agoservice: make clear who is printing the error
Thomas Veerman [Fri, 13 Apr 2012 13:51:56 +0000 (13:51 +0000)]
service: make clear who is printing the error

12 years agoVFS: fix filp reuse race
Thomas Veerman [Fri, 13 Apr 2012 09:08:39 +0000 (09:08 +0000)]
VFS: fix filp reuse race

Pipes consist of two filps (read filp and write filp) and a shared
vnode. When the writer leaves the filp reference count drops to
zero and subsequent find_filp()s should not find the filp when a
reader looks for it and the reader gets EOF. However, the pipe()
system call tries to find two filps, marks them in use, and only
after a successful node creation on PFS, overwrites the shared
vnode with the new vnode. Consequently, this leaves a small window
where a just closed 'pipe write filp' gets reused and marked as
present, before becoming the actual new 'pipe write filp' for a new
pipe. A reader for the old pipe will think a writer is present and
wait for that writer to write something or to leave; both actions
should revive the suspended reader. This will never happen and the
reader will be stuck forever.

12 years agoVFS: more three-level-lock sanity checking
Thomas Veerman [Wed, 11 Apr 2012 09:13:49 +0000 (09:13 +0000)]
VFS: more three-level-lock sanity checking

12 years agoTTY: don't allow multiple readers on tty minor
Thomas Veerman [Wed, 4 Apr 2012 13:46:34 +0000 (13:46 +0000)]
TTY: don't allow multiple readers on tty minor

TTY has no way of keeping track of multiple readers for a tty minor
device. Instead, it stores a read request for the last reader only.
Consequently, the first ("overwritten") reader gets stuck on a read
request that's never going to be finished. Also, the overwriting
causes a grant mismatch in VFS when TTY returns a reply for the
second reader.

This patch is a work around for the actual problem (i.e., keeping track
of multiple readers). It checks whether there is a read operation in
progress and returns an error if it is --preventing that reader from
getting overwritten and stuck. It fixes a bug triggered by executing
'top | more' and pressing the space bar for a while (easily reproducable
in a VM, not on hardware).

12 years agoVFS: add getting active threads control msg
Thomas Veerman [Mon, 2 Apr 2012 15:25:37 +0000 (15:25 +0000)]
VFS: add getting active threads control msg

12 years agoVFS: remove debug print
Thomas Veerman [Mon, 2 Apr 2012 15:24:04 +0000 (15:24 +0000)]
VFS: remove debug print

12 years agoVFS: let know when skipping reply
Thomas Veerman [Mon, 2 Apr 2012 15:23:33 +0000 (15:23 +0000)]
VFS: let know when skipping reply

12 years agoVFS: fix dead lock
Thomas Veerman [Mon, 2 Apr 2012 15:20:05 +0000 (15:20 +0000)]
VFS: fix dead lock

When running out of worker threads to handle device replies a dead
lock resolver thread is used. However, it was only used for FS
endpoints; it is now used for "system processes" (drivers and FS
endpoints). Also, drivers were marked as system process when they
were not "forced" to map (i.e., mapping was done before endpoint was
alive).

12 years agoVFS: fix new signed/unsigned comparisons
Thomas Veerman [Mon, 2 Apr 2012 15:16:44 +0000 (15:16 +0000)]
VFS: fix new signed/unsigned comparisons

12 years agoVFS: warnings are errors
Thomas Veerman [Mon, 2 Apr 2012 15:10:53 +0000 (15:10 +0000)]
VFS: warnings are errors

12 years agoAdd a simple utility to send control messages
Thomas Veerman [Fri, 13 Apr 2012 12:58:41 +0000 (12:58 +0000)]
Add a simple utility to send control messages

The svrctl utility allows you to send control messages to VFS or PM.
This way you can retrieve runtime information or alter behavior.

12 years agoVFS: enable sending control messages
Thomas Veerman [Fri, 30 Mar 2012 09:24:44 +0000 (09:24 +0000)]
VFS: enable sending control messages

12 years agolibmthread: add stack traces
Thomas Veerman [Fri, 30 Mar 2012 09:16:46 +0000 (09:16 +0000)]
libmthread: add stack traces

12 years agoVFS: find job only if request is an transaction
Thomas Veerman [Fri, 30 Mar 2012 09:05:28 +0000 (09:05 +0000)]
VFS: find job only if request is an transaction

12 years agoVFS: make m_in job local
Thomas Veerman [Fri, 13 Apr 2012 12:50:38 +0000 (12:50 +0000)]
VFS: make m_in job local

By making m_in job local (i.e., each job has its own copy of m_in instead
of refering to the global m_in) we don't have to store and restore m_in
on every thread yield. This reduces overhead. Moreover, remove the
assumption that m_in is preserved. Do_XXX functions have to copy the
system call parameters as soon as possible and only pass those copies to
other functions.

Furthermore, this patch cleans up some code and uses better types in a lot
of places.

12 years agovm: add MAP_FIXED
Ben Gras [Wed, 11 Apr 2012 15:15:15 +0000 (17:15 +0200)]
vm: add MAP_FIXED

12 years agovfs: more regions for coredumps
Ben Gras [Tue, 10 Apr 2012 09:12:53 +0000 (09:12 +0000)]
vfs: more regions for coredumps

12 years agoswitch to netbsd csu
Ben Gras [Fri, 30 Mar 2012 22:35:32 +0000 (00:35 +0200)]
switch to netbsd csu

        . file- and functionality-compatible with previous situation
          (FreeBSD csu) (with a crt1.o -> crt0.o symlink in /usr/lib)
        . harmonizes source with netbsd
        . harmonizes linker invocation (e.g. clang) with netbsd
        . helpful to get some arm code in there for the arm port project

12 years agotest: convert to bsdish Makefile
Ben Gras [Sun, 8 Apr 2012 17:22:02 +0000 (19:22 +0200)]
test: convert to bsdish Makefile

. smaller, simpler, less duplication, exceptions still
  encodeable
. fix for test10: too small a buffer to copy executables

12 years agoretire bios_wini
Ben Gras [Wed, 11 Apr 2012 15:22:26 +0000 (17:22 +0200)]
retire bios_wini

12 years agovm: full memory view
Ben Gras [Thu, 5 Apr 2012 01:37:17 +0000 (03:37 +0200)]
vm: full memory view

for user-space processes, increase text segment so it reaches the full
address space, so code can be executed anywhere.

12 years agovm: break: allow brk() on any region
Ben Gras [Fri, 6 Apr 2012 23:19:28 +0000 (01:19 +0200)]
vm: break: allow brk() on any region

use the user-supplied point to lookup which region to perform brk() on,
and if it's a reasonable one, do it, no matter what vm's notion of the
heap region is.

12 years agofix gcc test62
Ben Gras [Tue, 10 Apr 2012 02:14:55 +0000 (02:14 +0000)]
fix gcc test62

12 years agoImport NetBSD usr.bin/login
Ben Gras [Sat, 7 Apr 2012 01:41:28 +0000 (03:41 +0200)]
Import NetBSD usr.bin/login

12 years agoAdd VBFS: VirtualBox Shared Folder File System
David van Moolenbroek [Mon, 9 Apr 2012 17:56:45 +0000 (19:56 +0200)]
Add VBFS: VirtualBox Shared Folder File System

Refer to "man vbfs" on how to mount it.

12 years agoAdd libvboxfs: VirtualBox shared folders library
David van Moolenbroek [Mon, 9 Apr 2012 17:20:37 +0000 (19:20 +0200)]
Add libvboxfs: VirtualBox shared folders library

12 years agoCreate SFFS library out of HGFS
David van Moolenbroek [Mon, 9 Apr 2012 16:08:26 +0000 (18:08 +0200)]
Create SFFS library out of HGFS

This Shared Folders File System library (libsffs) now contains all the
file system logic originally in HGFS. The actual HGFS server code is
now a stub that passes on all the work to libsffs. The libhgfs library
is changed accordingly.

12 years agoHGFS: move all VMware-specific code into libhgfs
David van Moolenbroek [Mon, 9 Apr 2012 15:17:42 +0000 (17:17 +0200)]
HGFS: move all VMware-specific code into libhgfs

12 years agoSEF: add sef_cancel()
David van Moolenbroek [Mon, 9 Apr 2012 14:35:57 +0000 (16:35 +0200)]
SEF: add sef_cancel()

This function allows the caller to cancel receiving a message from a
SEF callback. The receive function will then return EINTR.

12 years agoVBOX: add host/guest communication interface
David van Moolenbroek [Mon, 9 Apr 2012 13:56:20 +0000 (15:56 +0200)]
VBOX: add host/guest communication interface

This interface can be used by other system processes by means of the
newly provided vbox API in libsys.

12 years agoImport NetBSD file(1)
Ben Gras [Sat, 31 Mar 2012 18:24:03 +0000 (20:24 +0200)]
Import NetBSD file(1)

12 years agoadd UPDATING note about genassym
Ben Gras [Mon, 2 Apr 2012 14:32:32 +0000 (16:32 +0200)]
add UPDATING note about genassym

12 years agoclean up master Makefile a bit
Ben Gras [Sat, 31 Mar 2012 16:09:06 +0000 (18:09 +0200)]
clean up master Makefile a bit

. a bit more abstraction (macros) and less duplication
. also build and install csu, libc, then rest of libraries
  for future dependency

12 years agomanpages: fix options and examples
David van Moolenbroek [Sat, 31 Mar 2012 21:44:29 +0000 (23:44 +0200)]
manpages: fix options and examples

12 years agoimport genassym and use it for sconst.h in kernel
Ben Gras [Fri, 30 Mar 2012 16:35:18 +0000 (18:35 +0200)]
import genassym and use it for sconst.h in kernel

12 years agouse __restrict instead of restrict
Ben Gras [Fri, 30 Mar 2012 15:11:01 +0000 (17:11 +0200)]
use __restrict instead of restrict

. doesn't choke gcc without -std=c99
. also used in prototypes already

12 years agoKernel/servers/drivers: resolve a few warnings
David van Moolenbroek [Fri, 30 Mar 2012 14:53:07 +0000 (16:53 +0200)]
Kernel/servers/drivers: resolve a few warnings

Flagged by clang 3.1.

12 years agoActually consider the new su(1)
Antoine Leca [Fri, 30 Mar 2012 00:34:45 +0000 (02:34 +0200)]
Actually consider the new su(1)

12 years agohgfs: subsecond timestamp precision
David van Moolenbroek [Thu, 29 Mar 2012 23:39:12 +0000 (01:39 +0200)]
hgfs: subsecond timestamp precision

Slightly cleaned up version of patch contributed by Antoine Leca.

12 years agodrop /usr/lib/advent dir (no more advent)
Ben Gras [Thu, 29 Mar 2012 14:53:56 +0000 (16:53 +0200)]
drop /usr/lib/advent dir (no more advent)

12 years agoDrop obsolete sdump
Antoine Leca [Thu, 29 Mar 2012 12:15:42 +0000 (14:15 +0200)]
Drop obsolete sdump

The code cannot be compiled, and is not included for over a year.
And it creates a corefile which is obsolete.

12 years agokernel: Remove unnecessary ACK conditionals
Arun Thomas [Thu, 29 Mar 2012 11:29:09 +0000 (13:29 +0200)]
kernel: Remove unnecessary ACK conditionals

12 years agoioapic - missing volatiles
Tomas Hruby [Thu, 29 Mar 2012 07:53:38 +0000 (00:53 -0700)]
ioapic - missing volatiles

leads to a kernel panic when using clang and SMP

reported by trd <trdempsey.201201@gmail.com>

12 years agovarious kernel printing fixes
Ben Gras [Wed, 28 Mar 2012 16:23:12 +0000 (18:23 +0200)]
various kernel printing fixes

. remove some call cycles by low-level functions invoking printf(); e.g.
  send_sig() gets a return value that the caller should check
. reason: very-early-phase printf() would trigger a printf() causing
  infinite recursion -> GPF
. move serial initialization a little earlier so DEBUG_EXTRA works for
  serial earlier (e.g. its first instance, for "cstart")
. closes tracker item 583:
  System Fails to Complete Startup with Verbose 2 and 3 Boot Parameters,
  reported by Stephen Hatton / pikpik.

12 years agoadjust netconf for new su behaviour
Ben Gras [Wed, 28 Mar 2012 15:30:56 +0000 (17:30 +0200)]
adjust netconf for new su behaviour

reported and debugged by Ryan Lie, tracker item 594.

12 years agoboot: use high baud rate by default
Thomas Veerman [Tue, 27 Mar 2012 15:09:37 +0000 (15:09 +0000)]
boot: use high baud rate by default

12 years agobuild: don't -L/usr/pkg/lib
Ben Gras [Tue, 6 Mar 2012 16:57:34 +0000 (17:57 +0100)]
build: don't -L/usr/pkg/lib

You might have to update the compiler-rt package! See UPDATING.

. the purpose of this -L was solely to find compiler-rt, which contains
  runtime support code for clang-compiled binaries
. this also makes all other packaged libraries visible, however
. it is cleaner to isolate the base system from packages, and so
  compiler-rt puts itself in /usr/pkg/compiler-rt/lib/ too, which the
  base system henceforth uses exclusively
. e.g. this solves a link failure when libfetch is installed as a
  package
. the new compiler-rt package also puts itself in /usr/pkg/lib for 'old'
  systems; that is harmless. The benefit of 'new' systems is that the other
  packages are hidden.

12 years agonext release will be 3.2.1
Ben Gras [Tue, 6 Mar 2012 16:41:26 +0000 (17:41 +0100)]
next release will be 3.2.1

12 years agoimport NetBSD su
Ben Gras [Tue, 27 Mar 2012 00:19:46 +0000 (02:19 +0200)]
import NetBSD su

12 years agolibutil: add O_NOCTTY to old pty open code
Ben Gras [Mon, 26 Mar 2012 15:00:45 +0000 (17:00 +0200)]
libutil: add O_NOCTTY to old pty open code

. fixes e.g. ssh sessions not getting their own
  controlling tty (causing ^C getting broadcast to too
  many processes)
. previously (before -lutil) handled like this by bsd-openpty.c in
  openssh
. reported by Andy Kosela, debugged by ThomasV

12 years agoKernel: arch-related cleanup
David van Moolenbroek [Mon, 26 Mar 2012 12:15:26 +0000 (14:15 +0200)]
Kernel: arch-related cleanup
- move umap_bios() into arch-specific code
- move proc.p_fpu_state access into arch-specific blocks

12 years agoretire _ANSI and <minix/ansi.h>
Ben Gras [Sun, 25 Mar 2012 19:04:28 +0000 (21:04 +0200)]
retire _ANSI and <minix/ansi.h>

12 years agoget rid of __LONG_LONG_SUPPORTED
Ben Gras [Sun, 25 Mar 2012 18:57:58 +0000 (20:57 +0200)]
get rid of __LONG_LONG_SUPPORTED

. also drop minix-specific code in libarchive
  that was needed for not supporting 64 bit ints

12 years agoget rid of _RESTRICT
Ben Gras [Sun, 25 Mar 2012 18:51:30 +0000 (20:51 +0200)]
get rid of _RESTRICT

12 years agoretire _CONST, _VOLATILE, _SIZET, _ARGS, _VOID
Ben Gras [Sun, 25 Mar 2012 18:38:37 +0000 (20:38 +0200)]
retire _CONST, _VOLATILE, _SIZET, _ARGS, _VOID

12 years agoretire PUBLIC, PRIVATE and FORWARD
Ben Gras [Sun, 25 Mar 2012 18:25:53 +0000 (20:25 +0200)]
retire PUBLIC, PRIVATE and FORWARD

12 years agoretire _PROTOTYPE
Ben Gras [Sat, 24 Mar 2012 15:16:34 +0000 (16:16 +0100)]
retire _PROTOTYPE

. only good for obsolete K&R support
. also remove a stray ansi.h and the proto cmd

12 years agoTest set for sys_vumap()
David van Moolenbroek [Sun, 18 Mar 2012 01:07:18 +0000 (02:07 +0100)]
Test set for sys_vumap()

Located in test/kernel. Invoke "run" to run tests.

12 years agovm: if mmap address is given, try that first
David van Moolenbroek [Sun, 22 Jan 2012 17:20:45 +0000 (18:20 +0100)]
vm: if mmap address is given, try that first

Previously, the mmap address (if given) was merely used as a lower
bound, and then possibly overriden with a hint. Now, the mapping is
first tried at the exact given address. If that fails, the start of
the mmap range is used as lower bound (which is then still overridden
by the hint for efficiency).

This allows two pages to be mapped in at predefined addresses, where
the second address is lower than the first. That was not possible.

12 years agoblocktest: updates for sys_vumap()
David van Moolenbroek [Wed, 11 Jan 2012 22:56:10 +0000 (23:56 +0100)]
blocktest: updates for sys_vumap()

12 years agoahci: use sys_vumap() instead of sys_umap()
David van Moolenbroek [Wed, 11 Jan 2012 22:54:53 +0000 (23:54 +0100)]
ahci: use sys_vumap() instead of sys_umap()

This is only an optimization for CPU performance. Callers are
currently still required to supply contiguous memory.

12 years agoAdd sys_vumap() kernel call
David van Moolenbroek [Wed, 21 Mar 2012 22:51:18 +0000 (23:51 +0100)]
Add sys_vumap() kernel call

This new call is a vectored version of sys_umap(). It supports batch
lookups, non-contiguous memory, faulting in memory, and basic access
checks.

12 years agoKernel: introduce vm_check_range
David van Moolenbroek [Sun, 8 Jan 2012 23:38:29 +0000 (00:38 +0100)]
Kernel: introduce vm_check_range

12 years agoKernel: replace vm_contiguous with vm_lookup_range
David van Moolenbroek [Wed, 21 Mar 2012 22:46:51 +0000 (23:46 +0100)]
Kernel: replace vm_contiguous with vm_lookup_range

12 years agoimport NetBSD /usr/share/misc/
Ben Gras [Fri, 16 Mar 2012 16:33:49 +0000 (17:33 +0100)]
import NetBSD /usr/share/misc/

. for /usr/share/misc/style, NetBSD coding style
. and for indent.pro (style-compatible indent(1) indenting profile)

12 years agoClean up a stale a.out-related declaration
David van Moolenbroek [Sat, 17 Mar 2012 14:31:10 +0000 (15:31 +0100)]
Clean up a stale a.out-related declaration

12 years agoRemove unsupported legacy TIOC[GS]ET[PC] ioctls
David van Moolenbroek [Sat, 17 Mar 2012 13:14:59 +0000 (14:14 +0100)]
Remove unsupported legacy TIOC[GS]ET[PC] ioctls

12 years agolibcompat_minix-centric cleanup
Ben Gras [Fri, 16 Mar 2012 15:03:49 +0000 (16:03 +0100)]
libcompat_minix-centric cleanup

remove some old minix-userland-specific stuff

. /etc/ttytab as a file, and minix-compat function (fftyslot()),
  replaced by /etc/ttys and new libc functions
. also remove minix-specific nlist(), cuserid(), fttyslot(), v8 regex
  functions and <compat/regex.h>
. and remaining minix-only utilities that use them
. also unused <compat/pwd.h> and <compat/syslog.h> and
  redundant <sys/sigcontext.h>

12 years agoBootloader reinstall mode for setup.
Evgeniy Ivanov [Tue, 14 Feb 2012 19:17:58 +0000 (23:17 +0400)]
Bootloader reinstall mode for setup.

12 years agoupdate_bootcfg improvements.
Evgeniy Ivanov [Thu, 16 Feb 2012 13:38:38 +0000 (17:38 +0400)]
update_bootcfg improvements.

- Fix a glitch (don't glob '*' in for).
- update_bootcfg should be a /bin command.
- update_bootcfg should not add menu entries for missing kernels.

12 years agoImport NetBSD cat(1)
Andy Kosela [Tue, 13 Mar 2012 00:01:42 +0000 (00:01 +0000)]
Import NetBSD cat(1)

12 years agoImport NetBSD ed(1)
Andy Kosela [Fri, 9 Mar 2012 23:17:50 +0000 (23:17 +0000)]
Import NetBSD ed(1)

12 years agoimported code harmonisation
Ben Gras [Tue, 13 Mar 2012 01:37:22 +0000 (02:37 +0100)]
imported code harmonisation

. common/include/arch/i386 is not actually an imported
  sys/arch/i386/include but leftover Minix files;
  remove and move to include/
. move include/ufs to sys/ufs, where it came from, now that
  we have a sys/ hierarchy
. move mdocml/ to external/bsd/, now we have that
. single sys/arch/i386/stand/ import for boot stuff

12 years agotools: some nbsd_ports fixes
Ben Gras [Tue, 13 Mar 2012 01:07:22 +0000 (02:07 +0100)]
tools: some nbsd_ports fixes

. figure out which dates were used for various nbsd imports
  and specify them for each one in the nbsd_ports file
. other minor fixes and improvements

12 years agosprofalyze forgets a.out and learns that ELF binaries have larger addresses
Erik van der Kouwe [Tue, 13 Mar 2012 10:22:19 +0000 (11:22 +0100)]
sprofalyze forgets a.out and learns that ELF binaries have larger addresses

12 years agolibminc-related updates
David van Moolenbroek [Thu, 8 Mar 2012 23:49:46 +0000 (00:49 +0100)]
libminc-related updates
- add files needed for acpi, ahci, fbd, vfs to libminc
- remove "-lc" from their respective makefiles
- remove setenv from libminc (requires initialization)

12 years agoTest48: resolve existing hostname with static IP address
Thomas Veerman [Fri, 9 Mar 2012 11:44:03 +0000 (11:44 +0000)]
Test48: resolve existing hostname with static IP address

12 years agotest48: disable failing resolver test
David van Moolenbroek [Fri, 9 Mar 2012 01:01:03 +0000 (02:01 +0100)]
test48: disable failing resolver test

Temporary, until a better solution comes along.
Also, .xxx is now a valid TLD!

12 years agolibddekit: resolve compiler warnings
David van Moolenbroek [Thu, 8 Mar 2012 21:15:00 +0000 (22:15 +0100)]
libddekit: resolve compiler warnings

Introduced by commit ca95f69.

12 years agopci: apply ACLs to device reservations
David van Moolenbroek [Wed, 7 Mar 2012 22:45:55 +0000 (23:45 +0100)]
pci: apply ACLs to device reservations

12 years agopci: USER_SPACE cleanup
David van Moolenbroek [Tue, 6 Mar 2012 23:55:22 +0000 (00:55 +0100)]
pci: USER_SPACE cleanup

12 years agodrivers: slightly better use of PCI constants
David van Moolenbroek [Wed, 7 Mar 2012 23:01:25 +0000 (00:01 +0100)]
drivers: slightly better use of PCI constants
- introduce PCI_BAR_{IO|MEM}_MASK
- remove redundant PCI definitions from lance
- fix vbox BAR retrieval

12 years agodrivers: remove redundant PCI ID tables
David van Moolenbroek [Tue, 6 Mar 2012 23:49:16 +0000 (00:49 +0100)]
drivers: remove redundant PCI ID tables
- remove PCI tables where system.conf suffices
- remove drivers' ability to mess up NIC order
- fix dp8390 PCI enumeration
- convert ti1225 to instance model
- add system.conf entry for ti1225

12 years agodp8390,ti1225: reenable register memory mapping
David van Moolenbroek [Wed, 7 Mar 2012 22:57:34 +0000 (23:57 +0100)]
dp8390,ti1225: reenable register memory mapping

12 years agopci: remove pci_init1 API call
David van Moolenbroek [Wed, 7 Mar 2012 00:10:04 +0000 (01:10 +0100)]
pci: remove pci_init1 API call

12 years agoswifi: modernize a bit
David van Moolenbroek [Sun, 4 Mar 2012 19:13:55 +0000 (20:13 +0100)]
swifi: modernize a bit
- ELF support
- update of one example script
- warning fixes

12 years agoKernel: do not retry message delivery upon failure
David van Moolenbroek [Sun, 4 Mar 2012 20:08:59 +0000 (21:08 +0100)]
Kernel: do not retry message delivery upon failure

12 years agodrivers: resolve compiler warnings
David van Moolenbroek [Sun, 4 Mar 2012 23:11:41 +0000 (00:11 +0100)]
drivers: resolve compiler warnings

12 years agoImport NetBSD du(1)
David van Moolenbroek [Sat, 3 Mar 2012 23:53:03 +0000 (00:53 +0100)]
Import NetBSD du(1)

12 years agomfs: more accurate stat.st_blocks estimation
David van Moolenbroek [Sun, 4 Mar 2012 11:14:06 +0000 (12:14 +0100)]
mfs: more accurate stat.st_blocks estimation

On MFS file systems, the stat(2) call now counts indirect blocks as
part of the st_blocks calculation, in addition to proper initial
rounding of the file size. The returned value is now a true upper
bound on the actual number of 512-byte blocks allocated to the file.
As before, it is not accurate for sparse files.

12 years agomfs: remove legacy stat code
David van Moolenbroek [Sat, 3 Mar 2012 19:59:58 +0000 (20:59 +0100)]
mfs: remove legacy stat code

12 years agoKernel: only reset/reload FPU state when necessary
David van Moolenbroek [Sat, 3 Mar 2012 19:33:02 +0000 (20:33 +0100)]
Kernel: only reset/reload FPU state when necessary

12 years agoKernel: retain FPU state upon save
David van Moolenbroek [Sat, 3 Mar 2012 16:48:14 +0000 (17:48 +0100)]
Kernel: retain FPU state upon save

On the x86, saving FPU state has the side effect of resetting this
state. In some cases (fork, getcontext), this would cause the state
to be lost. This patch restores the FPU state right after saving it,
except when different state is loaded immediately after.

12 years agoKernel: pass FPU restore exception to user process
David van Moolenbroek [Sat, 3 Mar 2012 18:25:57 +0000 (19:25 +0100)]
Kernel: pass FPU restore exception to user process

Previously, user processes could cause a kernel panic upon FPU state
restore, by passing bogus FPU state to the kernel (through e.g.
sigreturn). With this patch, the process is now sent a SIGFPE signal
instead.

12 years agoKernel: adjust FPU state upon process slot swap
David van Moolenbroek [Sat, 3 Mar 2012 00:05:27 +0000 (01:05 +0100)]
Kernel: adjust FPU state upon process slot swap

This fixes seemingly random FPU exceptions and kernel panics occurring
after a system server restart.