dragonfly.git
17 years agoSync zoneinfo database with tzdata2007a from elsie.
Sascha Wildner [Tue, 9 Jan 2007 09:56:27 +0000 (09:56 +0000)]
Sync zoneinfo database with tzdata2007a from elsie.

africa:         8.5  -> 8.7
australasia:    8.4  -> 8.5
backward:       8.2  -> 8.3
europe:         8.6  -> 8.7
northamerica:   8.10 -> 8.11
southamerica:   8.6  -> 8.8
zone.tab:       8.6  -> 8.8

From Paul Eggert's comments:

* Changes affecting future time stamps.

  - The Bahamas also observe the new US DST rules this year.
    (Thanks to Sue Williams for this.)

* Changes affecting TZ names, to reflect typical English practice better.
  The old names are still supported, in the 'backward' file.

  - Rename Africa/Asmera to Africa/Asmara.

  - Rename Atlantic/Faeroe to Atlantic/Faroe.

* A new zone Australia/Eucla, covering the Eucla area.  (Thanks to
  Alex Livingston for this.)

* Changes affecting old time stamps.

  - The 1982 transition for Pacific/Easter occurred Mar 13, not Jan 18.
    Also, the pre-1932 time stamps are now labeled EMT, not MMT, since
    they are not Mataveri Mean Time.  (Thanks to Jesper Norgaard Welen
    for this.)

17 years agoRemove old MLINKS.
Sascha Wildner [Tue, 9 Jan 2007 08:28:10 +0000 (08:28 +0000)]
Remove old MLINKS.

17 years agoA virtual kernel running another virtual kernel running an emulated process
Matthew Dillon [Tue, 9 Jan 2007 07:23:03 +0000 (07:23 +0000)]
A virtual kernel running another virtual kernel running an emulated process
context must pop back into its virtual kernel context before posting
any signal.  Correct a number of cases that were not being handled.

Clear the signal mask before starting the emulated user process context
loop.

Fix a reinit bug in the console callout polling code that was causing
a lockup.

17 years agoA virtual kernel running an emulated process context must pop back into
Matthew Dillon [Tue, 9 Jan 2007 07:03:32 +0000 (07:03 +0000)]
A virtual kernel running an emulated process context must pop back into
its virtual kernel context before posting any signal.  Correct a number
of cases that were not being handled.

17 years agoFix two incorrect sigblock() calls.
Matthew Dillon [Tue, 9 Jan 2007 06:04:59 +0000 (06:04 +0000)]
Fix two incorrect sigblock() calls.

17 years agoUse our interrupt infrastructure to handle the clock interrupt, but
Matthew Dillon [Tue, 9 Jan 2007 00:49:03 +0000 (00:49 +0000)]
Use our interrupt infrastructure to handle the clock interrupt, but
for the moment we have no common 'hard interrupt' (i.e. signal) core
so do the critical section check manually.

17 years agoDisable terminal control characters while the virtual kernel is running,
Matthew Dillon [Tue, 9 Jan 2007 00:20:20 +0000 (00:20 +0000)]
Disable terminal control characters while the virtual kernel is running,
so typing ^C, ^Z, etc on the console gets fed through to the virtual
kernel.

Enable terminal control characters when the virtual kernel is in DDB,
so e.g. a ^C while it is in DDB will kill the virtual kernel.

The QUIT signal (^\) is left enabled throughout and will force the virtual
kernel into its DDB.

17 years agoAdd a missing pmap_enter() in vm_fault_page(). If a write fault does a COW
Matthew Dillon [Mon, 8 Jan 2007 23:41:31 +0000 (23:41 +0000)]
Add a missing pmap_enter() in vm_fault_page().  If a write fault does a COW
and must replace a read-only page, the pmap must be updated so the process
sees the new page.

17 years agoRename the following special extended I/O system calls. Only libc, libc_r,
Matthew Dillon [Mon, 8 Jan 2007 21:41:59 +0000 (21:41 +0000)]
Rename the following special extended I/O system calls.  Only libc, libc_r,
and VKERNEL are currently known to use these calls so the rename should have
no major effects.

Fix broken prototypes in unistd.h.

__accept    ->      extaccept
__connect   ->      extconnect
__pread     ->      extpread
__preadv    ->      extpreadv
__pwrite    ->      extpwrite
__pwritev   ->      extpwritev

Broken-Prototypes-Reported-by: Joe Talbott <josepht@cstone.net>
17 years agoFix the obscure at(1) permission problem.
Simon Schubert [Mon, 8 Jan 2007 21:32:57 +0000 (21:32 +0000)]
Fix the obscure at(1) permission problem.

change_[er]uid() both use cratom(), however their consumers happened to cache
the original cred in a variable.  If the cred happened to be shared before
(for example due to an open(2)), a conditional lateron would still reference
the old cred instead of the new one, which was instanciated in change_[er]uid.

Fix this by returning the new cred from change_[er]uid and using this in
subsequent conditionals.

DragonFly-bug: http://bugs.dragonflybsd.org/issue509

17 years agoInstall gdb docs.
Simon Schubert [Mon, 8 Jan 2007 20:05:42 +0000 (20:05 +0000)]
Install gdb docs.

17 years agoAdd the virtual kernel's virtual disk device to the fray (vd*).
Matthew Dillon [Mon, 8 Jan 2007 19:48:35 +0000 (19:48 +0000)]
Add the virtual kernel's virtual disk device to the fray (vd*).

17 years agoUse CBREAK mode for the console.
Matthew Dillon [Mon, 8 Jan 2007 19:45:39 +0000 (19:45 +0000)]
Use CBREAK mode for the console.

Adjust code for new vm_fault_page*() semantics (it now marks the page as
referenced and dirties it automatically so the caller doesn't have to).

Fix a VPTE_W or VPTE_WIRED snafu.
FIx a PG_MANAGED vs VPTE_MANAGED snafu.

Add additional VPTE_ bit definitions.

17 years agoRewrite vmapbuf() to use vm_fault_page_quick() instead of vm_fault_quick().
Matthew Dillon [Mon, 8 Jan 2007 19:42:24 +0000 (19:42 +0000)]
Rewrite vmapbuf() to use vm_fault_page_quick() instead of vm_fault_quick().
Overhead is slightly increased (until we can optimize vm_fault_page_quick()),
but the code is greatly simplified.

17 years agoImplement vm_fault_page_quick(), which will soon be replacing
Matthew Dillon [Mon, 8 Jan 2007 19:41:01 +0000 (19:41 +0000)]
Implement vm_fault_page_quick(), which will soon be replacing
vm_fault_quick().  vm_fault_quick() does not hold the underlying page
in any way and is not SMP friendly.  It also uses architecture-specific
tricks to force the page into a pmap which do not work with the VKERNEL.

17 years agoMake libc prototypes available to kernel builds
Matthew Dillon [Mon, 8 Jan 2007 19:29:23 +0000 (19:29 +0000)]
Make libc prototypes available to kernel builds

17 years agoMake more libc prototypes available to _KERNEL builds.
Matthew Dillon [Mon, 8 Jan 2007 17:19:26 +0000 (17:19 +0000)]
Make more libc prototypes available to _KERNEL builds.

17 years agoAdd missing header file.
Matthew Dillon [Mon, 8 Jan 2007 16:34:10 +0000 (16:34 +0000)]
Add missing header file.

Reported-by: Sascha Wildner <saw@online.de>
17 years agoWhen removing a page directory from a page map, the KVA representing
Matthew Dillon [Mon, 8 Jan 2007 16:03:25 +0000 (16:03 +0000)]
When removing a page directory from a page map, the KVA representing
the page table page in the self-mapping must also be invalidated.

17 years ago[committed on behalf of sephe]
Sascha Wildner [Mon, 8 Jan 2007 12:21:50 +0000 (12:21 +0000)]
[committed on behalf of sephe]

Don't call device_busy() when /dev/psmN is opened.  DS_BUSY is used to
prevent recursive bus scanning on DragonFly.  Strip the device_unbusy()
in psmclose().
This should make module loading after system startup work on some system.

Explained-by: dillon@
17 years ago[committed on behalf of sephe]
Sascha Wildner [Mon, 8 Jan 2007 12:15:27 +0000 (12:15 +0000)]
[committed on behalf of sephe]

- Add {TAILQ,STAILQ}_CONCAT() macros
- Add comment about *_FOREACH_MUTABLE()
- Sync ath(4) with FreeBSD (sam@freebsd.org):
  o  Add/Correct some debug information.
  o  Add more statistics.
  o  Receive control frames in monitor mode.
  o  Close race in handling mcast traffic when operating as an ap with
     stations in power save: add a new q where mcast frames are stashed
     and on beacon update (at DTIM) move frames from the mcast q to the
     cabq and start it.  This ensures the cabq is only manipulated in
     one place.
  o  Correct the type of ath_descdma.dd_desc_len
  o  Correct max segement size when creating DMA tag

17 years agoAdd a vkernel(7) manpage which I hacked together from Matt's comments.
Sascha Wildner [Mon, 8 Jan 2007 08:55:44 +0000 (08:55 +0000)]
Add a vkernel(7) manpage which I hacked together from Matt's comments.

17 years agoThe signal return code was trying to access user mode addresses
Matthew Dillon [Mon, 8 Jan 2007 08:17:17 +0000 (08:17 +0000)]
The signal return code was trying to access user mode addresses
directly, which doesn't work when the user process is in an entirely
different vmspace.  Use copyin() instead.

Assign SIGQUIT (^\) on the console to cause a virtual kernel to enter
its internal db> debugger.

Quickly hack a callout() based poller for console input so the console
works (sorta).

Allow a kernel environment to specified as an option in the form
-e name=value:name=value:...

NULL-out the pmap self-mapping cache when a pmap is destroyed.

17 years agoModify the trapframe sigcontext, ucontext, etc. Add %gs to the trapframe
Matthew Dillon [Mon, 8 Jan 2007 03:33:43 +0000 (03:33 +0000)]
Modify the trapframe sigcontext, ucontext, etc.  Add %gs to the trapframe
and xflags and an expanded floating point save area to sigcontext/ucontext
so traps can be fully specified.

Remove all the %gs hacks in the system code and signal trampoline and handle
%gs faults natively, like we do %fs faults.

Implement writebacks to the virtual page table to set VPTE_M and VPTE_A and
add checks for VPTE_R and VPTE_W.

Consolidate the TLS save area into a MD structure that can be accessed by MI
code.

Reformulate the vmspace_ctl() system call to allow an extended context to be
passed (for TLS info and soon the FP and eventually the LDT).

Adjust the GDB patches to recognize the new location of %gs.

Properly detect non-exception returns to the virtual kernel when the virtual
kernel is running an emulated user process and receives a signal.

And misc other work on the virtual kernel.

17 years ago* Remove some zoneinfo files from 'make upgrade' that were re-added to
Sascha Wildner [Mon, 8 Jan 2007 01:52:14 +0000 (01:52 +0000)]
* Remove some zoneinfo files from 'make upgrade' that were re-added to
  the distribution for compatibility reasons.

* Remove obsolete SystemV directory.

17 years ago* Sync with FreeBSD-RELENG_6.
Sascha Wildner [Mon, 8 Jan 2007 01:38:02 +0000 (01:38 +0000)]
* Sync with FreeBSD-RELENG_6.

* Add some devices to LINT.

* Do some cleanup in sys/conf/files.

OK-by: corecode
17 years agoUpdate the man page, now jail returns a non-negative integer if succesful
Victor Balada Diaz [Sun, 7 Jan 2007 18:33:38 +0000 (18:33 +0000)]
Update the man page, now jail returns a non-negative integer if succesful
or -1 on error.

Imported-From: FreeBSD

17 years agoAdd support for -l and -U. -l creates a jail in a clear environment and
Victor Balada Diaz [Sun, 7 Jan 2007 18:12:46 +0000 (18:12 +0000)]
Add support for -l and -U. -l creates a jail in a clear environment and
-U runs a program with the given username from the jail.

Imported-From: FreeBSD

17 years agoFix expanding of quoted positional parameters in case patterns.
Peter Avalos [Sun, 7 Jan 2007 16:58:30 +0000 (16:58 +0000)]
Fix expanding of quoted positional parameters in case patterns.

When parsing an invalid parameter expansion (eg. ${} or ${foo@bar}) do not
issue a syntax error immediately but save the information that it is erroneous
for later when the parameter expansion is actually done.  This means eg. "false
&& ${}" will not generate an error which seems to be required by POSIX.

Remove some white space at EOL.

The sub-expression "(nulonly || 1)" always evaluates to true and
according to CVS logs seems to be just a left-over from some
debugging and introduced by accident.

Remove collate_range_cmp() stabilization, it conflicts with ranges

Replace various spellings with FALLTHROUGH which is lint()able

Obtained-from:  FreeBSD

17 years ago/usr/include/machine/physio_proc.h is no longer there.
Sascha Wildner [Sun, 7 Jan 2007 15:36:54 +0000 (15:36 +0000)]
/usr/include/machine/physio_proc.h is no longer there.

17 years agoOops, wrong year.
Sascha Wildner [Sun, 7 Jan 2007 11:26:56 +0000 (11:26 +0000)]
Oops, wrong year.

17 years agoUpdate ktr.9 for Matt's rewrite.
Sascha Wildner [Sun, 7 Jan 2007 11:25:12 +0000 (11:25 +0000)]
Update ktr.9 for Matt's rewrite.

17 years agoImplement nearly all the remaining items required to allow the virtual kernel
Matthew Dillon [Sun, 7 Jan 2007 08:37:37 +0000 (08:37 +0000)]
Implement nearly all the remaining items required to allow the virtual kernel
to actually execute code on behalf of a virtualized user process.  The
virtual kernel is now able to execute the init binary through to the point
where it sets up a TLS segment.

* Create a pseudo tf_trapno called T_SYSCALL80 to indicate system call traps.

* Add MD shims when creating or destroying a struct vmspace, allowing the
  virtual kernel to create and destroy real-kernel vmspaces along with.

  Add appropriate calls to vmspace_mmap() and vmspace_mcontrol() to map
  memory inside the user process vmspace.  The memory is mapped VPAGETABLE
  and the page table directory is set to point to the pmap page directory.

* Clean up user_trap, handle T_PAGEFLT properly.

* Implement go_user().  It calls vmspace_ctl(... VMSPACE_CTL_RUN) and
  user_trap() in a loop, allowing the virtual kernel to 'run' a user
  mode context under its control.

* Reduce VM_MAX_USER_ADDRESS to 0xb8000000 for now, until I figure out the
  best way to have the virtual kernel query the actual max user address from
  the real kernel.

* Correct a pm_pdirpte assignment.  We can't look up the PTE until after
  we have entered it into the kernel pmap.

17 years agoAdd the "wordexp" shell built-in command.
Peter Avalos [Sun, 7 Jan 2007 08:26:55 +0000 (08:26 +0000)]
Add the "wordexp" shell built-in command.

Obtained-from:  FreeBSD

17 years agoMake the vmspace_*() system call prototypes available to (virtual) kernel
Matthew Dillon [Sun, 7 Jan 2007 05:54:01 +0000 (05:54 +0000)]
Make the vmspace_*() system call prototypes available to (virtual) kernel
builds.

17 years agoSet rootdevnames[0] to automatically boot from ufs:vd0a when a root disk
Matthew Dillon [Sun, 7 Jan 2007 05:52:53 +0000 (05:52 +0000)]
Set rootdevnames[0] to automatically boot from ufs:vd0a when a root disk
image is specified.

17 years agoHandle page faults within the virtual kernel process itself (what would be
Matthew Dillon [Sun, 7 Jan 2007 05:45:06 +0000 (05:45 +0000)]
Handle page faults within the virtual kernel process itself (what would be
called kernel mode page faults in a real kernel).  Fortunately the system
trapframe is a subset of the ucontext supplied to userland signal function.

Since user vs kernel addresses and trap types cannot be discerned by looking
at the frame (because they are in entirely different VM spaces), separate
trap() into user_trap() and kern_trap().

Implement a poor-man's (really kludgy) version of copyin, copyout, and related
functions.

Implement and process T_PAGEFLT virtual kernel traps.  They work about 85% of
the time.

UFS is now able to mount the root filesystem.

17 years agoThe stack frame available from a signal to user mode stores the fault address
Matthew Dillon [Sun, 7 Jan 2007 05:41:02 +0000 (05:41 +0000)]
The stack frame available from a signal to user mode stores the fault address
in tf_err.  The PGEX bits that used to be stored in tf_err are lost.

When a process a virtual kernel (p->p_vkernel != NULL), store the PGEX bits
in the high 16 bits of the tf_trapno field so the virtual kernel can
figure out whether the page fault was a read fault or a write fault.

17 years agoremove extra crit_exit()
YONETANI Tomokazu [Sun, 7 Jan 2007 04:06:51 +0000 (04:06 +0000)]
remove extra crit_exit()

17 years agoSort by bltincmd and remove lines that have been commented out for years.
Peter Avalos [Sun, 7 Jan 2007 02:52:07 +0000 (02:52 +0000)]
Sort by bltincmd and remove lines that have been commented out for years.

17 years agoAdd support for a root disk device file.
Matthew Dillon [Sun, 7 Jan 2007 02:42:24 +0000 (02:42 +0000)]
Add support for a root disk device file.

Initialize the time of day.

17 years agoAdd a virtual disk device for virtual kernels to boot from.
Matthew Dillon [Sun, 7 Jan 2007 02:41:20 +0000 (02:41 +0000)]
Add a virtual disk device for virtual kernels to boot from.

17 years ago* Add documentation for KERNCONF and KERNCONFDIR.
Sascha Wildner [Sun, 7 Jan 2007 01:28:51 +0000 (01:28 +0000)]
* Add documentation for KERNCONF and KERNCONFDIR.

* Use .Ev for environment variables.

* Fix wording a bit.

17 years agoUse -s to flag POSIX's "special built-in" utilities in builtins.def. Add a
Peter Avalos [Sun, 7 Jan 2007 01:14:53 +0000 (01:14 +0000)]
Use -s to flag POSIX's "special built-in" utilities in builtins.def.  Add a
new member to struct builtincmd and set it to 1 if -s was specified.  This
is done because there are cases where special builtins must be treated
differently from other builtins.

Implement some of the differences between special built-ins and other builtins
demanded by POSIX.
- A redirection error is only fatal (meaning the execution of a shell script is
  terminated) for special built-ins.  Previously it was fatal for all shell
  builtins, causing problems like the one reported in FreeBSD PR 88845.
- Variable assignments remain in effect for special built-ins.
- Option or operand errors are only fatal for special built-ins.

Add the times builtin.  It reports the user and system time for the shell
itself and its children.  Instead of calling times() (as implied by POSIX) this
implementation directly calls getrusage() to get the times because this is more
convenient.

Print pointers with %p rather than casting them to long.

Replace home-grown dup2() implementation with actual dup2() calls.  This
should slightly reduce the number of system calls in critical portions of
the shell, and select a more efficient path through the fdalloc code.

Implement the PS4 variable which is defined by the POSIX User Portability
Utilities option.  Its value is printed at the beginning of the line if tracing
(-x) is active.  PS4 defaults to the string "+ " which is compatible with the
old behaviour to always print "+ ".

Don't crash on "<cmd> | { }".

Remove some white space at EOL.

Add the POSIX options -v and -V to the 'command' builtin.  Both describe the
type of their argument, if it is a shell function, an alias, a builtin, etc.
-V is more verbose than -v.

Do not assume there is only a space between #define and the macro name
when grepping for JOBS in mkbuiltins

Obtained-from:  FreeBSD

17 years agoUse itimers to implement the virtual kernel's SYSTIMER backend.
Matthew Dillon [Sun, 7 Jan 2007 00:44:33 +0000 (00:44 +0000)]
Use itimers to implement the virtual kernel's SYSTIMER backend.

17 years agoAllow certain cpufunc.h inlines to be overridden by virtual kernel builds.
Matthew Dillon [Sun, 7 Jan 2007 00:43:22 +0000 (00:43 +0000)]
Allow certain cpufunc.h inlines to be overridden by virtual kernel builds.

17 years agoMake libc prototypes available for kernel builds.
Matthew Dillon [Sun, 7 Jan 2007 00:42:55 +0000 (00:42 +0000)]
Make libc prototypes available for kernel builds.

17 years agodefine _KERNEL_VIRTUAL if not defined to hack-fix conflicts with normal
Matthew Dillon [Sun, 7 Jan 2007 00:42:26 +0000 (00:42 +0000)]
define _KERNEL_VIRTUAL if not defined to hack-fix conflicts with normal
include files.

17 years agoFix symbol conflict with falloc()
Matthew Dillon [Sun, 7 Jan 2007 00:41:29 +0000 (00:41 +0000)]
Fix symbol conflict with falloc()

17 years agoSignal handlers usually inherit %gs. Make them inherit %fs as well. This
Matthew Dillon [Sun, 7 Jan 2007 00:39:15 +0000 (00:39 +0000)]
Signal handlers usually inherit %gs.  Make them inherit %fs as well.  This
may or may not be a good idea but I am hard pressed to find a reason why
it would hurt anything.

The virtual kernel uses %gs for the libc TLS support, and %fs for its
globaldata base.

17 years agoFix compiler warnings
Matthew Dillon [Sun, 7 Jan 2007 00:02:17 +0000 (00:02 +0000)]
Fix compiler warnings

17 years agoFix a conflict with libc's killpg().
Matthew Dillon [Sun, 7 Jan 2007 00:02:03 +0000 (00:02 +0000)]
Fix a conflict with libc's killpg().

17 years agoAssign proc0 a dummy frame to bootstrap vm_fork().
Matthew Dillon [Sat, 6 Jan 2007 22:43:20 +0000 (22:43 +0000)]
Assign proc0 a dummy frame to bootstrap vm_fork().

17 years agoAdd a new procedure, vm_fault_page(), which does all actions related to
Matthew Dillon [Sat, 6 Jan 2007 22:35:47 +0000 (22:35 +0000)]
Add a new procedure, vm_fault_page(), which does all actions related to
faulting in a VM page given a vm_map and virtual address, include any
necessary I/O, but returns the held page instead of entering it into a pmap.

Use the new function in procfs_rwmem, allowing gdb to 'see' memory that
is governed by a virtual page table.

17 years agoIf no memory image file is specified, locate or create one by running
Matthew Dillon [Sat, 6 Jan 2007 19:57:01 +0000 (19:57 +0000)]
If no memory image file is specified, locate or create one by running
through available indices instead of using the PID.

Make sure the kernel page table is properly cleared since the image file may
be reused.

17 years agoOffset KernelPTD and KernelPTA so we can directly translate a kernel virtual
Matthew Dillon [Sat, 6 Jan 2007 19:40:55 +0000 (19:40 +0000)]
Offset KernelPTD and KernelPTA so we can directly translate a kernel virtual
address without subtracting KvaStart, simplifying the pmap code.  Also
clean up the page table initialization (make it actually work properly).

Make sure the set_sysinit_set and set_sysuninit_set sections are R/W,
because the kernel SYSINIT modifies them.

Successfully boot the virtual kernel through to the first vm_fork.

17 years agoInitialize thread0.td_gd prior to calling various gdinit functions, because
Matthew Dillon [Sat, 6 Jan 2007 19:38:20 +0000 (19:38 +0000)]
Initialize thread0.td_gd prior to calling various gdinit functions, because
crit_exit() uses thread->td_gd to get back to the globaldata structure.

17 years agoUse Maxmem instead of physmem. physmem is used only within pc32
Matthew Dillon [Sat, 6 Jan 2007 19:37:20 +0000 (19:37 +0000)]
Use Maxmem instead of physmem.  physmem is used only within pc32

17 years agoRemove old debugging printf.
Matthew Dillon [Sat, 6 Jan 2007 19:35:30 +0000 (19:35 +0000)]
Remove old debugging printf.

17 years agoRemove the hack.So hack for virtual kernels.
Matthew Dillon [Sat, 6 Jan 2007 08:57:30 +0000 (08:57 +0000)]
Remove the hack.So hack for virtual kernels.

17 years agoVKERNEL work, deal with remaining undefined symbols.
Matthew Dillon [Sat, 6 Jan 2007 08:34:53 +0000 (08:34 +0000)]
VKERNEL work, deal with remaining undefined symbols.

17 years agoRemove all physio_proc_*() calls. They were all NOPs anyhow and used
Matthew Dillon [Sat, 6 Jan 2007 08:33:36 +0000 (08:33 +0000)]
Remove all physio_proc_*() calls.  They were all NOPs anyhow and used
inconsistently.  busdma handles the related issue anyway.

17 years agoRename errno to error to avoid conflict with errno.h
Matthew Dillon [Sat, 6 Jan 2007 08:27:54 +0000 (08:27 +0000)]
Rename errno to error to avoid conflict with errno.h

17 years agoConditionalize the existance of a gdt[] array for the in-kernel disassembler.
Matthew Dillon [Sat, 6 Jan 2007 08:25:01 +0000 (08:25 +0000)]
Conditionalize the existance of a gdt[] array for the in-kernel disassembler.

17 years agoConditionalize the existance of a gdt[] array for the in-kernel disassembler.
Matthew Dillon [Sat, 6 Jan 2007 08:24:41 +0000 (08:24 +0000)]
Conditionalize the existance of a gdt[] array for the in-kernel disassembler.

17 years agoConditionalize all of the subdirectories in dev so we skip them for
Matthew Dillon [Sat, 6 Jan 2007 08:08:24 +0000 (08:08 +0000)]
Conditionalize all of the subdirectories in dev so we skip them for
VKERNEL builds.

17 years agoConvert the remaining callers of errmsg() to use strerror(), and remove
Peter Avalos [Sat, 6 Jan 2007 03:44:04 +0000 (03:44 +0000)]
Convert the remaining callers of errmsg() to use strerror(), and remove
errmsg() and its table of error messages.

Remove some white space at EOL.

Restore "not found" error message when searching for (or executing)
a program fails because the file or a path component does not exist.

Remove dead code which supported systems without O_APPEND, O_CREAT or SIGTSTP.

Obtained-from:  FreeBSD

17 years agoThe last commit was incomplete, correct.
Matthew Dillon [Sat, 6 Jan 2007 03:34:39 +0000 (03:34 +0000)]
The last commit was incomplete, correct.

17 years agoGDB stubs were only being compiled on systems with serial I/O installed,
Matthew Dillon [Sat, 6 Jan 2007 03:33:48 +0000 (03:33 +0000)]
GDB stubs were only being compiled on systems with serial I/O installed,
but DCONS can use it too.  Remove the SIO requirement.

17 years agoRepo-move machine/pc32/i386/i386-gdbstub.c to cpu/i386/misc/i386-gdbstub.c.
Matthew Dillon [Sat, 6 Jan 2007 03:29:12 +0000 (03:29 +0000)]
Repo-move machine/pc32/i386/i386-gdbstub.c to cpu/i386/misc/i386-gdbstub.c.

17 years agoRemove fuswintr() and suswintr(), they were never implemented and it was a
Matthew Dillon [Sat, 6 Jan 2007 03:23:20 +0000 (03:23 +0000)]
Remove fuswintr() and suswintr(), they were never implemented and it was a
bad idea to try to write to a userspace context from an interrupt anyway.

17 years agoMove uiomove_fromphyhs() source from MD to MI.
Matthew Dillon [Sat, 6 Jan 2007 03:16:24 +0000 (03:16 +0000)]
Move uiomove_fromphyhs() source from MD to MI.

17 years agoRename system calls, removing a "sys_" prefix that turned out not to be
Matthew Dillon [Sat, 6 Jan 2007 01:46:45 +0000 (01:46 +0000)]
Rename system calls, removing a "sys_" prefix that turned out not to be
such a good idea.

sys_set_tls_area() to set_tls_area()
sys_get_tls_area() to get_tls_area()

17 years agoAdd handler for timespec values.
Simon Schubert [Fri, 5 Jan 2007 23:00:10 +0000 (23:00 +0000)]
Add handler for timespec values.

Noticed-by: Jeremy C. Reed
17 years agoDon't strip a leading ./ from the path for the cd builtin to avoid interpreting
Peter Avalos [Fri, 5 Jan 2007 22:18:52 +0000 (22:18 +0000)]
Don't strip a leading ./ from the path for the cd builtin to avoid interpreting
.//dir as /dir.  Rather strip it only for the purpose of checking if the
directory path should be printed.

Obtained-from:  FreeBSD

17 years agoContinue fleshing out the VKERNEL.
Matthew Dillon [Fri, 5 Jan 2007 22:18:20 +0000 (22:18 +0000)]
Continue fleshing out the VKERNEL.

17 years agoMove dumplo from MD to kern/kern_shutdown.c
Matthew Dillon [Fri, 5 Jan 2007 22:16:32 +0000 (22:16 +0000)]
Move dumplo from MD to kern/kern_shutdown.c

Move db_disasm.c from the platform architecture to the cpu architecture

Move add missing __volatile to cpu_halt()'s HLT function to prevent it from
being optimized out.

Remove the vm_page_zero_idle() function (that has not been used for a while).

Move some more function prototypes for MD functions used by MI code into MI
header files.

17 years agoRemove page in cat4 as well.
Sascha Wildner [Fri, 5 Jan 2007 20:27:53 +0000 (20:27 +0000)]
Remove page in cat4 as well.

17 years agoMove makewhatis to the end so that pages which will be removed in this
Simon Schubert [Fri, 5 Jan 2007 17:14:31 +0000 (17:14 +0000)]
Move makewhatis to the end so that pages which will be removed in this
run will not be indexed before.

17 years agoremove old man pages and modules
Simon Schubert [Fri, 5 Jan 2007 17:09:10 +0000 (17:09 +0000)]
remove old man pages and modules

17 years agoUse \."- to begin license clause.
Peter Avalos [Fri, 5 Jan 2007 03:59:34 +0000 (03:59 +0000)]
Use \."- to begin license clause.

Deal with double whitespace.

Mechanically kill hard sentence breaks.

Obtained-from:  FreeBSD

17 years agoSay hello to a sound system update from FreeBSD. This includes the long
Simon Schubert [Thu, 4 Jan 2007 21:47:03 +0000 (21:47 +0000)]
Say hello to a sound system update from FreeBSD.  This includes the long
awaited Intel High Definition Audio (HDA) a.k.a. Azalia support.

The generic sound support module has been renamed to sound.ko and the
"everything included" module is called snd_driver.ko now.  Apart from
that, everything should continue working as normal, just better.

17 years agoAs bridge_rtupdate() can be called from interrupt context and must not
Thomas E. Spanjaard [Thu, 4 Jan 2007 21:14:40 +0000 (21:14 +0000)]
As bridge_rtupdate() can be called from interrupt context and must not
block, change it to use M_INTNOWAIT instead of M_WAITOK.

Reported-by: Joerg Sonnenberger <joerg@britannica.bec.de>

17 years agoAdjust a couple of kmalloc calls to use M_WAITOK instead of M_RNOWAIT. It
Thomas E. Spanjaard [Thu, 4 Jan 2007 18:55:18 +0000 (18:55 +0000)]
Adjust a couple of kmalloc calls to use M_WAITOK instead of M_RNOWAIT. It
appears there is no problem in waiting here, and use of M_RNOWAIT without
M_USE_RESERVE is dangerous. If this doesn't work 'right' either, the
proper solution is to use M_INTNOWAIT instead.

Dragonfly-bug: <http://bugs.dragonflybsd.org/issue410>

17 years agouname(1) is still used in a few places during buildworld,
YONETANI Tomokazu [Thu, 4 Jan 2007 14:19:03 +0000 (14:19 +0000)]
uname(1) is still used in a few places during buildworld,
put it back as a boot strap tool.

Submitted-by: sephe@
17 years agoSync with FreeBSD:
Peter Avalos [Thu, 4 Jan 2007 14:06:21 +0000 (14:06 +0000)]
Sync with FreeBSD:

Implement missing shell arithmetic operators in $(()) expansion
and variable recognition.

Provide missing prototypes and variable declarations in arith.h.

Spelling/style fixes.

17 years agoReturn 1 from the unalias builtin if _any_ removal fails, not just the last
Peter Avalos [Thu, 4 Jan 2007 06:35:12 +0000 (06:35 +0000)]
Return 1 from the unalias builtin if _any_ removal fails, not just the last
one.

Obtained-from:  FreeBSD

17 years agoCorrect assorted grammos and typos.
Peter Avalos [Thu, 4 Jan 2007 06:24:11 +0000 (06:24 +0000)]
Correct assorted grammos and typos.

Obtained-from:  FreeBSD

17 years agoUnbreak ndis(4) building.
Sascha Wildner [Wed, 3 Jan 2007 14:12:52 +0000 (14:12 +0000)]
Unbreak ndis(4) building.

17 years agoRemove redundant #ifdefs.
Sascha Wildner [Wed, 3 Jan 2007 13:33:02 +0000 (13:33 +0000)]
Remove redundant #ifdefs.

17 years agoAs discussed with sephe: uncomment awi(4), seems to build ok.
Sascha Wildner [Wed, 3 Jan 2007 13:24:13 +0000 (13:24 +0000)]
As discussed with sephe: uncomment awi(4), seems to build ok.

17 years ago- little mdoc cleanup
Sascha Wildner [Tue, 2 Jan 2007 23:42:20 +0000 (23:42 +0000)]
- little mdoc cleanup

- fix typo in committer.7

Typo-noticed-by: Steve Mynott <steve.mynott@gmail.com>
17 years ago[committed on behalf of sephe]
Sascha Wildner [Tue, 2 Jan 2007 23:28:49 +0000 (23:28 +0000)]
[committed on behalf of sephe]

- Fix ieee80211_node leakage.  The leakage is caused by calling IF_DRAIN()
  on management ifqueue whose mbuf's m_pkthdr.rcvif has special meaning:
  it holds ieee80211_node to which the management frame should be sent and
  the node has its reference count bumped.
  Add a new function ieee80211_drain_mgtq(), which frees ieee80211_node
  pointed by mbuf's m_pkthdr.rcvif before freeing the mbuf.  Use this function
  to drain management ifqueue instead of IF_DRAIN().
- In acx(4), ipw(4), ral(4) and rum(4) 'stop' routines, move
  ieee80211_new_state(IEEE80211_S_INIT) before clearing IFF_RUNNING in
  ifnet.if_flags, so these drivers may send out management frames injected
  by ieee80211_newstate(IEEE80211_S_INIT). (*)

# (*) Without proper hardware TX queue drain functionality, the management
#     frames injected by ieee80211_newstate(IEEE80211_S_INIT) almost no
#     chance to float in the air.

17 years agoRepo-copy malloc.9 to kmalloc.9 and clean up.
Sascha Wildner [Tue, 2 Jan 2007 23:08:59 +0000 (23:08 +0000)]
Repo-copy malloc.9 to kmalloc.9 and clean up.

17 years agoFix typo in sctp_output.c. The lwp structure has lwp_ru embedded directly,
Thomas E. Spanjaard [Tue, 2 Jan 2007 19:30:57 +0000 (19:30 +0000)]
Fix typo in sctp_output.c. The lwp structure has lwp_ru embedded directly,
not via a substructure lwp_stats.

Reported-by: Sascha Wildner <saw@online.de>

17 years agoRemove pmap_kernel() (which just returned a pointer to kernel_pmap), and
Matthew Dillon [Tue, 2 Jan 2007 04:52:31 +0000 (04:52 +0000)]
Remove pmap_kernel() (which just returned a pointer to kernel_pmap), and
change the kernel_pmap global from a pointer to a directly accessed
structure.  Adjust code accordingly.

17 years agoGet most of the VKERNEL pmap handling code in.
Matthew Dillon [Tue, 2 Jan 2007 04:24:26 +0000 (04:24 +0000)]
Get most of the VKERNEL pmap handling code in.

17 years agoTry to locate any instances where pmap_enter*() is called with a kernel
Matthew Dillon [Tue, 2 Jan 2007 04:21:16 +0000 (04:21 +0000)]
Try to locate any instances where pmap_enter*() is called with a kernel
virtual address on a pmap other then kernel_pmap by adding some debugging
printfs.

Remove pmap_kernel() (which just returned a pointer to kernel_pmap), and
change the kernel_pmap global from a pointer to a directly accessed
structure.  Adjust code accordingly.

17 years agoprintf -> kprintf
Sascha Wildner [Tue, 2 Jan 2007 00:25:43 +0000 (00:25 +0000)]
printf -> kprintf

17 years agoAdd a kprintf(9) manual page.
Sascha Wildner [Tue, 2 Jan 2007 00:16:56 +0000 (00:16 +0000)]
Add a kprintf(9) manual page.

Adapted from: FreeBSD