]> Zhao Yanbai Git Server - minix.git/log
minix.git
11 years agoAdding shlib_version for libsys
Lionel Sambuc [Sat, 22 Sep 2012 21:08:20 +0000 (23:08 +0200)]
Adding shlib_version for libsys

11 years agoLibc update to simplify merge.
Lionel Sambuc [Mon, 17 Sep 2012 09:09:12 +0000 (11:09 +0200)]
Libc update to simplify merge.

Bumping libc files for unsupported architectures, to simplify merging.
A bunch of small fixes:
 * in libutil update
 * the macro in endian.h
 * some undefined types due to clear separation from host.
 * Fix a warning for cdbr.c

Some modification which were required for the new build system:
 * inclusion path for const.h in sconst, still hacky
 * Removed default malloc.c which conflicts on some occasions.

11 years agoUpdating libutil from netbsd
Lionel Sambuc [Tue, 11 Sep 2012 16:02:49 +0000 (18:02 +0200)]
Updating libutil from netbsd

11 years agoReplaced tar with bsdtar to ensure disponibility of -o, which is
Lionel Sambuc [Tue, 9 Oct 2012 16:51:33 +0000 (18:51 +0200)]
Replaced tar with bsdtar to ensure disponibility of -o, which is
needed during builds as root

11 years agoVFS: do not save device node for new regular files
David van Moolenbroek [Thu, 15 Nov 2012 14:15:54 +0000 (14:15 +0000)]
VFS: do not save device node for new regular files

The VFS/FS protocol does not require the file server to supply a
special device node number in response to a REQ_CREATE request, as
this call creates only regular files. Therefore, VFS should not
erroneously save this piece of information from the REQ_CREATE reply
either.

11 years agoUse proper uid when mounting NTFS partition
Thomas Veerman [Wed, 14 Nov 2012 13:42:13 +0000 (13:42 +0000)]
Use proper uid when mounting NTFS partition

11 years agoVFS: fix TOCTOU bug in sync
Thomas Veerman [Wed, 14 Nov 2012 13:24:53 +0000 (13:24 +0000)]
VFS: fix TOCTOU bug in sync

11 years agoVFS: fix reboot panic with mounted FUSE FS
Thomas Veerman [Wed, 14 Nov 2012 13:18:16 +0000 (13:18 +0000)]
VFS: fix reboot panic with mounted FUSE FS

Upon reboot VFS semi-exits all processes and unmounts the file system.
However, upon unmount, exiting FUSE file systems might need service from
the file system (due to libc). As the FUSE process is halfway the exit
procedure, it doesn't have a valid root directory and working directory.
Trying to do system calls then triggers a sanity check in VFS.

This fix first exits normal processes which should then allow for
unmounting FUSE file systems. Then VFS exits all processes including
File Servers and unmounts the rest of the file system.

11 years agoVFS: fix deadlock when out of worker threads
Thomas Veerman [Wed, 14 Nov 2012 13:12:37 +0000 (13:12 +0000)]
VFS: fix deadlock when out of worker threads

There is a deadlock vulnerability when there are no worker threads
available and all of them blocked on a worker thread that's waiting for a
reply from a driver or a reply from an FS that needs to make a back call. In
these cases the deadlock resolver thread should kick in, but didn't in all
cases. Moreover, POSIX calls from File Servers weren't handled properly
anymore, which also could lead to deadlocks.

11 years agovm: reduce noise in merged pagetable.c
Ben Gras [Fri, 9 Nov 2012 18:00:46 +0000 (19:00 +0100)]
vm: reduce noise in merged pagetable.c

11 years agovm: merge i386 and arm pagetable code
Ben Gras [Wed, 31 Oct 2012 18:24:14 +0000 (19:24 +0100)]
vm: merge i386 and arm pagetable code

11 years agovm: fix a null dereference on out-of-memory
Ben Gras [Fri, 9 Nov 2012 15:50:31 +0000 (16:50 +0100)]
vm: fix a null dereference on out-of-memory

. also make other out-of-memory conditions less fatal
. add a test case for a user program using all the memory
  it can
. remove some diagnostic prints for situations that are normal
  when running out of memory so running the test isn't noisy

11 years agoPM: do not panic if sys_sigsend returns ENOMEM
David van Moolenbroek [Fri, 9 Nov 2012 16:09:20 +0000 (16:09 +0000)]
PM: do not panic if sys_sigsend returns ENOMEM

12 years agoremove extra mkfs.1
Ben Gras [Thu, 8 Nov 2012 11:36:38 +0000 (12:36 +0100)]
remove extra mkfs.1

12 years agokernel: some boottime sanitychecks
Ben Gras [Tue, 6 Nov 2012 14:36:53 +0000 (15:36 +0100)]
kernel: some boottime sanitychecks

. Check if we have the right number of boot modules
. Check if the ELF parsing of VM actually succeeded

Both these are root causes of less-than-obvious other
errors/asserts a little further down the line; uncovered
while experimenting with booting by iPXE, specifically
(a) iPXE having a 8-multiboot-modules limit and
(b) trying to boot a gzipped VM.

12 years agomkfs: support indirect blocks in directories
Ben Gras [Wed, 7 Nov 2012 17:59:03 +0000 (18:59 +0100)]
mkfs: support indirect blocks in directories

12 years agomkfs: move directory entry manipulation
Ben Gras [Wed, 7 Nov 2012 17:48:30 +0000 (18:48 +0100)]
mkfs: move directory entry manipulation

12 years agomkfs: drop support for zone != block
Ben Gras [Wed, 7 Nov 2012 17:23:03 +0000 (18:23 +0100)]
mkfs: drop support for zone != block

12 years agomkfs: drop support for running on DOS
Ben Gras [Wed, 7 Nov 2012 16:54:00 +0000 (17:54 +0100)]
mkfs: drop support for running on DOS

12 years agomkfs: separate inode retrieval function
Ben Gras [Wed, 7 Nov 2012 16:41:52 +0000 (17:41 +0100)]
mkfs: separate inode retrieval function

12 years agomkfs: drop support for creating non-v3 FSes
Ben Gras [Wed, 7 Nov 2012 14:50:03 +0000 (15:50 +0100)]
mkfs: drop support for creating non-v3 FSes

12 years agomkfs: symlink support
Ben Gras [Wed, 7 Nov 2012 10:06:56 +0000 (11:06 +0100)]
mkfs: symlink support

. mkproto too

12 years agomkfs, mkproto: minor improvements
Ben Gras [Wed, 7 Nov 2012 18:19:46 +0000 (19:19 +0100)]
mkfs, mkproto: minor improvements

. mkfs: -x feature for extra space
. rename manpage to mkfs.mfs.1 to follow the binary
. move mkproto so it can become part of the tools easily

12 years agoretire nonsymbolic rootdev, dev2name
Ben Gras [Thu, 1 Nov 2012 18:40:56 +0000 (19:40 +0100)]
retire nonsymbolic rootdev, dev2name

12 years agoTTY: fix crash obtaining kernel messages
David van Moolenbroek [Mon, 5 Nov 2012 23:11:16 +0000 (00:11 +0100)]
TTY: fix crash obtaining kernel messages

Also fix a case of potential message loss in TTY and LOG.

12 years ago/bin/pax: Fix cross compilation problem on some platform by removing
Lionel Sambuc [Thu, 1 Nov 2012 12:01:30 +0000 (13:01 +0100)]
/bin/pax: Fix cross compilation problem on some platform by removing
          unneeded dependency on libutil.

12 years agodrop safemap code
Ben Gras [Thu, 25 Oct 2012 14:38:38 +0000 (16:38 +0200)]
drop safemap code

12 years agotestsh2.sh: change output to new cksum util
Thomas Veerman [Tue, 30 Oct 2012 13:08:45 +0000 (13:08 +0000)]
testsh2.sh: change output to new cksum util

12 years agoTTY: seperate hardware dependent parts + add new serial driver
Thomas Veerman [Wed, 17 Oct 2012 14:07:53 +0000 (14:07 +0000)]
TTY: seperate hardware dependent parts + add new serial driver

.Split TTY in order to support both x86 and ARM.
.Add support for the TI 16750 UARTs on OMAP35x.
.Various other improvements:
  .Kernel messages are printed using generic terminal write
   functions. That is, they are no longer directly displayed
   on the console.
  .The console can now be displayed on any terminal. This
   is configured by the "console={tty00,tty01,ttyc2,ttyc3,ttyc4}"
   boot variable -- basically any valid /dev/tty* terminal.
  .Cutify kernel messages with colors. Configured by
   "kernelclr={1,2,3,4,5,6,7}" boot variable.

12 years agoKernel: reenable interrupts before halting
Thomas Veerman [Thu, 18 Oct 2012 10:03:34 +0000 (10:03 +0000)]
Kernel: reenable interrupts before halting

12 years agoKernel: busy wait until serial out has finished
Thomas Veerman [Wed, 17 Oct 2012 14:57:08 +0000 (14:57 +0000)]
Kernel: busy wait until serial out has finished

12 years agovm: fix potential null deref
Ben Gras [Wed, 24 Oct 2012 17:47:47 +0000 (19:47 +0200)]
vm: fix potential null deref

12 years agoUpgrading bsdtar 86/86/2
Lionel Sambuc [Thu, 18 Oct 2012 15:22:21 +0000 (17:22 +0200)]
Upgrading bsdtar

 * Removing commands/tar
 * Updated external/bsd/libarchive
 * Adding external/bsd/libarchive/bin/tar compiled bsdtar instead
   of just tar
 * (tar is taken care of through the pax utility)

Change-Id: Ie773b4502fbf4e3880f28f01bb528b063a60c668

12 years agoUpgrading pax. 85/85/2
Lionel Sambuc [Mon, 22 Oct 2012 14:10:38 +0000 (16:10 +0200)]
Upgrading pax.

This also means importing librmt.

Change-Id: Ie5b314aeaad28dca46acb64f20f2d70746ea52d0

12 years agoFixed up new mtree description file NetBSD.dist.base (removed end of line spaces... 84/84/2
Lionel Sambuc [Thu, 11 Oct 2012 10:34:16 +0000 (12:34 +0200)]
Fixed up new mtree description file NetBSD.dist.base (removed end of line spaces, added a few missing directories)

Fixed lchflags error under MINIX3 as host OS

Change-Id: I00f708e82753fdae85ac54bc903db06a7775ab5a

12 years agomtree mknod 83/83/2
Ben Gras [Wed, 10 Oct 2012 15:20:17 +0000 (17:20 +0200)]
mtree mknod

Change-Id: I887437c7b84839fc644da4c55bd59b6a414408ef

12 years agodrivers: fix various sys_irqsetpolicy calls
David van Moolenbroek [Tue, 23 Oct 2012 12:23:26 +0000 (12:23 +0000)]
drivers: fix various sys_irqsetpolicy calls

12 years agoMove primary cache code to libminixfs.
Ben Gras [Tue, 16 Oct 2012 15:40:39 +0000 (17:40 +0200)]
Move primary cache code to libminixfs.

Add primary cache management feature to libminixfs as mfs and ext2
currently do separately, remove cache code from mfs and ext2, and make
them use the libminixfs interface. This makes all fields of the buf
struct private to libminixfs and FS clients aren't supposed to access
them at all. Only the opaque 'void *data' field (the FS block contents,
used to be called bp) is to be accessed by the FS client.

The main purpose is to implement the interface to the 2ndary vm cache
just once, get rid of some code duplication, and add a little
abstraction to reduce the code inertia of the whole caching business.

Some minor sanity checking and prohibition done by mfs in this code
as removed from the generic primary cache code as a result:
        - checking all inodes are not in use when allocating/resizing
          the cache
        - checking readonly filesystems aren't written to
        - checking the superblock isn't written to on mounted filesystems

The minixfslib code relies on fs_blockstats() in the client filesystem to
return some FS usage information.

12 years agoImporting cksum (needed by NetBSD build system)
Lionel Sambuc [Mon, 22 Oct 2012 13:42:09 +0000 (15:42 +0200)]
Importing cksum (needed by NetBSD build system)

Change-Id: I47308635f6307066643f83f07b6751b1f2a05eb4

12 years agommc:Fixes for coverity.
Kees Jongenburger [Mon, 22 Oct 2012 11:34:40 +0000 (13:34 +0200)]
mmc:Fixes for coverity.

Change-Id: I25e406126deb9172276844e1bb756e22e1f449f8

12 years agoImporting postinstall
Lionel Sambuc [Thu, 11 Oct 2012 08:46:39 +0000 (10:46 +0200)]
Importing postinstall

Change-Id: I5813064164e2d6ca4cf353fb184194b2aaa8caa3

12 years agoAdding -nt flag to test
Lionel Sambuc [Fri, 19 Oct 2012 19:32:34 +0000 (21:32 +0200)]
Adding -nt flag to test

This is needed by build.sh.

12 years agoPatch mkdep to make sure tested values are not mistaken
Lionel Sambuc [Tue, 9 Oct 2012 16:50:05 +0000 (18:50 +0200)]
Patch mkdep to make sure tested values are not mistaken
as test flags.

12 years agommc:driver development added dummy driver. 82/82/3
Kees Jongenburger [Fri, 19 Oct 2012 09:09:52 +0000 (11:09 +0200)]
mmc:driver development added dummy driver.

* Add dummy driver to allow independent testing of mmcblk.
* Always build the mmc driver to prevent breakage.
* Allow to specify the mmc driver to be used at load time.

Change-Id: I4e14b912fb8f3612e252864b53733968b23ac023

12 years agolibvboxfs: fix setting file mtimes
David van Moolenbroek [Tue, 16 Oct 2012 21:11:30 +0000 (23:11 +0200)]
libvboxfs: fix setting file mtimes

12 years agomount(1)/umount(1)/format(1): remove setuid bits
David van Moolenbroek [Tue, 16 Oct 2012 20:42:30 +0000 (22:42 +0200)]
mount(1)/umount(1)/format(1): remove setuid bits

This is a security measure. We may want to bring back user access to
mounting and formatting media in the future, but this should be done
only once we are sure that this is safe from a security perspective.

12 years agomount(1): do not include system headers
David van Moolenbroek [Tue, 16 Oct 2012 20:30:02 +0000 (22:30 +0200)]
mount(1): do not include system headers

12 years agoRetire checkhier(8)
David van Moolenbroek [Tue, 16 Oct 2012 20:27:03 +0000 (22:27 +0200)]
Retire checkhier(8)

12 years agoformat(1): access floppy as block device
David van Moolenbroek [Tue, 16 Oct 2012 18:45:10 +0000 (20:45 +0200)]
format(1): access floppy as block device

Accessing block devices as character devices is no longer supported.

12 years agoMAKEDEV(8): don't make /dev/filter user-accessible
David van Moolenbroek [Tue, 16 Oct 2012 18:33:55 +0000 (20:33 +0200)]
MAKEDEV(8): don't make /dev/filter user-accessible

12 years agoRetire badblocks(8) and readall(1)
David van Moolenbroek [Tue, 16 Oct 2012 17:50:53 +0000 (19:50 +0200)]
Retire badblocks(8) and readall(1)

12 years agorelease.sh: call df(1) with -k
David van Moolenbroek [Tue, 16 Oct 2012 17:34:18 +0000 (19:34 +0200)]
release.sh: call df(1) with -k

12 years agosetup(8): only call df(1) on mounted file systems
David van Moolenbroek [Tue, 16 Oct 2012 17:04:40 +0000 (19:04 +0200)]
setup(8): only call df(1) on mounted file systems

12 years agodf(1): use statvfs instead of raw disk access
David van Moolenbroek [Wed, 17 Oct 2012 20:51:17 +0000 (22:51 +0200)]
df(1): use statvfs instead of raw disk access

As of this patch, df(1) no longer performs raw disk access; it
operates exclusively on mounted file systems. This also means
that df no longer needs to be setuid.

12 years agopart(8)/autopart(8): remove partition hack
David van Moolenbroek [Sun, 14 Oct 2012 23:00:51 +0000 (01:00 +0200)]
part(8)/autopart(8): remove partition hack

We have actually had lseek64 for quite a while now, so it's no longer
necessary to do horrible things to the partition table just to be able
to access large offsets into a device.

Also fix the compiler warnings in these commands.

12 years agoInstallation CD: add AHCI option to boot menu
David van Moolenbroek [Sat, 13 Oct 2012 15:04:55 +0000 (17:04 +0200)]
Installation CD: add AHCI option to boot menu

12 years agoupdate_bootcfg(8): various improvements
David van Moolenbroek [Mon, 15 Oct 2012 22:40:35 +0000 (00:40 +0200)]
update_bootcfg(8): various improvements

- inherit a predefined set of system environment variables
  (the current set of inherited variables is: ahci; acpi; no_apic);
- auto-adjust the default menu option when lines are auto-removed;
- add variable substitution support for /etc/boot.cfg.local;
- make default menu options in boot.cfg.local relative to itself,
  allowing one to set the default to a menu option from this file.

12 years agommc:Indenting and code cleanup. 60/60/2
Kees Jongenburger [Wed, 10 Oct 2012 13:26:03 +0000 (15:26 +0200)]
mmc:Indenting and code cleanup.

Change-Id: Ia1156c6b5e4dbc6c8af37d61b118258053f347ce

12 years agommc:Small fixup to run the driver on hardware. 59/59/2
Kees Jongenburger [Mon, 8 Oct 2012 14:02:32 +0000 (16:02 +0200)]
mmc:Small fixup to run the driver on hardware.

Change-Id: I8e8d048da7cdfce5c9f2091969b0db5240e3e89f

12 years agoRemove some usage of 64bit functions (minix/u64.h)
Prasanna Kumar T S M [Mon, 24 Sep 2012 19:05:01 +0000 (00:35 +0530)]
Remove some usage of 64bit functions (minix/u64.h)

. Removed the usage of 64 bit functions in top.c. Compiles successfully.
. Scaling 64 bit values to 32 bit is removed.
. Retain make64 instead of using | with shift.
. Add order cycling display

12 years agoblocktest: make fewer assumptions about driver
David van Moolenbroek [Fri, 12 Oct 2012 12:55:55 +0000 (12:55 +0000)]
blocktest: make fewer assumptions about driver

In particular, allow partial results to be returned in some cases,
and do not require that the driver fail on word-unaligned access.

12 years agommc: various small fixes
David van Moolenbroek [Fri, 12 Oct 2012 12:54:08 +0000 (12:54 +0000)]
mmc: various small fixes

- call blockdriver_announce() on startup;
- restart statelessly after a crash;
- resolve a clang warning.

12 years agoVM: munmap fix
David van Moolenbroek [Sat, 13 Oct 2012 17:07:47 +0000 (19:07 +0200)]
VM: munmap fix

12 years agoexpose some terminal definitions by default
Ben Gras [Fri, 12 Oct 2012 12:43:18 +0000 (14:43 +0200)]
expose some terminal definitions by default

12 years agomkfs.mfs: dynamically size image from proto
Mohamed Katri [Mon, 10 Sep 2012 02:13:50 +0000 (04:13 +0200)]
mkfs.mfs: dynamically size image from proto

12 years agoVM: make mapping types explicit
Ben Gras [Thu, 11 Oct 2012 13:15:49 +0000 (15:15 +0200)]
VM: make mapping types explicit

Introduce explicit abstractions for different mapping types,
handling the instantiation, forking, pagefaults and freeing of
anonymous memory, direct physical mappings, shared memory and
physically contiguous anonymous memory as separate types, making
region.c more generic.

Also some other genericification like merging the 3 munmap cases
into one.

COW and SMAP safemap code is still implicit in region.c.

12 years agoVM: munmap used by VM for itself is no longer used
Ben Gras [Thu, 11 Oct 2012 13:15:48 +0000 (15:15 +0200)]
VM: munmap used by VM for itself is no longer used

12 years agobootloader: usability improvements
David van Moolenbroek [Wed, 10 Oct 2012 22:09:19 +0000 (00:09 +0200)]
bootloader: usability improvements

- add "edit" menu option, to edit menu commands before executing them;
- add "menu" boot command, to return to the menu from the prompt;
- provide more line editing features when getting input;
- fix a few potential buffer overflows as a side effect.

12 years agotests: fix IPC test set fix
David van Moolenbroek [Wed, 10 Oct 2012 18:10:14 +0000 (20:10 +0200)]
tests: fix IPC test set fix

Partial rollback of git-df39752.

12 years agoMerge branch 'master' of git.minix3.org:minix
Tomas Hruby [Thu, 11 Oct 2012 09:47:24 +0000 (09:47 +0000)]
Merge branch 'master' of git.minix3.org:minix

12 years agoLIBC - getifaddrs() fix
Tomas Hruby [Thu, 11 Oct 2012 09:43:33 +0000 (09:43 +0000)]
LIBC - getifaddrs() fix

ifpa must be set to something meaningful every time it returns 0.

12 years agominor fixes for safecopy & safemap tests
Ben Gras [Wed, 10 Oct 2012 16:35:08 +0000 (18:35 +0200)]
minor fixes for safecopy & safemap tests

12 years agoMMC driver. 58/58/3
Kees Jongenburger [Wed, 3 Oct 2012 08:55:40 +0000 (10:55 +0200)]
MMC driver.

Change-Id: I0d460d63070855df9b11eaf3d33eb7bb89c570f1

12 years agoImport MMC related bsd headers. 57/57/3
Kees Jongenburger [Wed, 3 Oct 2012 08:53:48 +0000 (10:53 +0200)]
Import MMC related bsd headers.

Copyright (c) 2006 Uwe Stuehler <uwe@openbsd.org>

Change-Id: Ia183d522a6ef1528b045a6fc6cd2e8930c669c32

12 years agoARM support for kernel and vm
Arun Thomas [Mon, 8 Oct 2012 01:38:03 +0000 (21:38 -0400)]
ARM support for kernel and vm

12 years agoVFS: fix check_bsf() locking
Arne Welzel [Thu, 27 Sep 2012 20:23:49 +0000 (22:23 +0200)]
VFS: fix check_bsf() locking

The check_bsf() macro uses assert(mutex_trylock(&bsf_lock)) and
assumes bsf_lock is locked afterwards. This breaks when compiling
with NOASSERTS="yes". Also: macro to function transition.

12 years agoVFS: resolve unused parameter if NOASSERTS="yes"
Arne Welzel [Thu, 27 Sep 2012 20:22:06 +0000 (22:22 +0200)]
VFS: resolve unused parameter if NOASSERTS="yes"

If VFS is compiled with NOASSERTS="yes", ctty_opcl() does not
use the op parameter. Change to "non-assert()" sanity check.

12 years agodaily: makewhatis -f
pikpik [Thu, 27 Sep 2012 21:12:14 +0000 (23:12 +0200)]
daily: makewhatis -f

. use a little less memory and the processor will be
  freer during start-up.

12 years agounstack, sort: cleanup and improvement
Ben Gras [Wed, 26 Sep 2012 16:29:11 +0000 (18:29 +0200)]
unstack, sort: cleanup and improvement

lets unstack
(a) know about in-kernel ipc entry points and
(b) be able handle >2GB symbol offsets.

. sort: add -x for hex numerical sort
. unstack: gnm is obsolete
. unstack: datasizes is obsolete (use nm --size-sort instead)
. unstack: add ipc entry points read from procfs (hex)
. unstack: use sort -x to sort symbol order so the procfs ones are
  sorted independent of position and original ordering

12 years agoprocfs: make ipc vectors available
Ben Gras [Wed, 26 Sep 2012 15:14:14 +0000 (17:14 +0200)]
procfs: make ipc vectors available

12 years agomemory: use sys_safememset() for /dev/zero
Arne Welzel [Sat, 22 Sep 2012 21:21:43 +0000 (21:21 +0000)]
memory: use sys_safememset() for /dev/zero

12 years agolibsys: add sys_safememset()
Arne Welzel [Sat, 22 Sep 2012 20:02:14 +0000 (20:02 +0000)]
libsys: add sys_safememset()

12 years agokernel: add safememset() kernel call
Arne Welzel [Sat, 22 Sep 2012 20:01:05 +0000 (20:01 +0000)]
kernel: add safememset() kernel call

12 years agokernel: handle pagefaults in vm_memset()
Arne Welzel [Sat, 22 Sep 2012 19:58:05 +0000 (19:58 +0000)]
kernel: handle pagefaults in vm_memset()

12 years agoTTY: printer better diagnostics
Thomas Veerman [Mon, 24 Sep 2012 15:25:37 +0000 (15:25 +0000)]
TTY: printer better diagnostics

.tell when a line is not initialized
.don't print when a request has failed, we use error codes for that

12 years agogetty: return speed option
Thomas Veerman [Mon, 24 Sep 2012 13:37:20 +0000 (13:37 +0000)]
getty: return speed option

12 years agoSYSENTER/SYSCALL support
Ben Gras [Sun, 10 Jun 2012 17:50:17 +0000 (17:50 +0000)]
SYSENTER/SYSCALL support

. add cpufeature detection of both
. use it for both ipc and kernelcall traps, using a register
  for call number
. SYSENTER/SYSCALL does not save any context, therefore userland
  has to save it
. to accomodate multiple kernel entry/exit types, the entry
  type is recorded in the process struct. hitherto all types
  were interrupt (soft int, exception, hard int); now SYSENTER/SYSCALL
  is new, with the difference that context is not fully restored
  from proc struct when running the process again. this can't be
  done as some information is missing.
. complication: cases in which the kernel has to fully change
  process context (i.e. sigreturn). in that case the exit type
  is changed from SYSENTER/SYSEXIT to soft-int (i.e. iret) and
  context is fully restored from the proc struct. this does mean
  the PC and SP must change, as the sysenter/sysexit userland code
  will otherwise try to restore its own context. this is true in the
  sigreturn case.
. override all usage by setting libc_ipc=1

12 years agophys_memset improvements
Arne Welzel [Fri, 21 Sep 2012 12:15:44 +0000 (14:15 +0200)]
phys_memset improvements

. verify length argument
. use rep stosl / stosb

12 years agoremove unused <tools.h>
Ben Gras [Thu, 20 Sep 2012 10:24:22 +0000 (12:24 +0200)]
remove unused <tools.h>

12 years agovm: fix failed alloc condition
Ben Gras [Wed, 19 Sep 2012 20:23:56 +0000 (22:23 +0200)]
vm: fix failed alloc condition

12 years agotop task uid clear
Ben Gras [Wed, 19 Sep 2012 17:38:19 +0000 (19:38 +0200)]
top task uid clear

12 years agotests: don't chmod 777 everything upon cleanup
Thomas Veerman [Wed, 19 Sep 2012 14:58:32 +0000 (14:58 +0000)]
tests: don't chmod 777 everything upon cleanup

rm -rf works just fine no matter what mode bits are set (modulo
file ownership and current user id). Test 43 creates a symlink
to / and the chmod operation would change file permissions outside
of the test directory.

12 years agocoverity appeasement - redundant check
Ben Gras [Wed, 19 Sep 2012 15:18:02 +0000 (17:18 +0200)]
coverity appeasement - redundant check

12 years agovfs: pm_dumpcore: always clean up process
Ben Gras [Wed, 19 Sep 2012 14:57:27 +0000 (16:57 +0200)]
vfs: pm_dumpcore: always clean up process

. whenever this function is called, pm will expect
  the process to be cleaned up
. so don't abort the process entirely on error
. fixes a later 'forking on top of in-use child' vfs panic

12 years agovm: change NO_MEM to a more impossible value
Ben Gras [Wed, 19 Sep 2012 13:29:53 +0000 (15:29 +0200)]
vm: change NO_MEM to a more impossible value

fixes an assert() firing when starting X. thanks to the report by pikpik.

. NO_MEM was 0, which is actually an existing piece
  of physical memory. it can't be allocated because it's reserved
  for bios data (by the kernel), but it can be mapped in (e.g.
  by X), causing sanity check disaster.
. NONCONTIGUOUS is also obsolete as all allocations are single-page
  now, i.e. NONCONTIGUOUS is really the default and only mode.

12 years agoworldstone: add -s for statistical profiling
Ben Gras [Wed, 5 Sep 2012 21:42:41 +0000 (23:42 +0200)]
worldstone: add -s for statistical profiling

12 years agocoverity appeasement
Ben Gras [Wed, 19 Sep 2012 11:07:18 +0000 (13:07 +0200)]
coverity appeasement

12 years agovm, kernel, top: report memory usage of vm, kernel
Ben Gras [Tue, 18 Sep 2012 20:19:22 +0000 (22:19 +0200)]
vm, kernel, top: report memory usage of vm, kernel

12 years agoVM: remove dead code
Ben Gras [Tue, 18 Sep 2012 16:40:13 +0000 (18:40 +0200)]
VM: remove dead code

12 years agosome coverity fixes.
Ben Gras [Tue, 18 Sep 2012 13:10:59 +0000 (15:10 +0200)]
some coverity fixes.