]> Zhao Yanbai Git Server - minix.git/log
minix.git
14 years ago.align replaced by .balign in mpx386.S
Tomas Hruby [Fri, 13 Nov 2009 09:30:45 +0000 (09:30 +0000)]
.align replaced by .balign in mpx386.S

14 years agogas2ack does not understand .align
Tomas Hruby [Fri, 13 Nov 2009 09:29:37 +0000 (09:29 +0000)]
gas2ack does not understand .align

- as .align is target dependent we for usage of .balign for byte alignment

15 years agogas2ack support for rdmsr and wrmsr
Tomas Hruby [Thu, 12 Nov 2009 16:19:01 +0000 (16:19 +0000)]
gas2ack support for rdmsr and wrmsr

15 years agoNo need for a special idle queue
Tomas Hruby [Thu, 12 Nov 2009 08:47:25 +0000 (08:47 +0000)]
No need for a special idle queue

- as the idle task is never placed on any run queue, we don't need any special
  idle queue.

- one more queue available for user processes

15 years agoIdle task never runs
Tomas Hruby [Thu, 12 Nov 2009 08:42:18 +0000 (08:42 +0000)]
Idle task never runs

- idle task becomes a pseudo task which is never scheduled. It is never put on
  any run queue and never enters userspace. An entry for this task still remains
  in the process table for time accounting

- Instead of panicing if there is not process to schedule, pick_proc() returns
  NULL which is a signal to put the cpu in an idle state and set everything in
  such a way that after receiving and interrupt it looks like idle task was
  preempted

- idle task is set non-preemptible to avoid handling in the timer interrupt code
  which make userspace scheduling simpler as idle task does not need to be
  handled as a special case.

15 years agoUse of isemptyp() macro instead of testing RTS_SLOT_FREE flag
Tomas Hruby [Thu, 12 Nov 2009 08:35:26 +0000 (08:35 +0000)]
Use of isemptyp() macro instead of testing RTS_SLOT_FREE flag

- some code used to test if only this flag is set, some if also this flag is
  set. This change unifies the test

15 years agoThe rest of the r5641 commit
Tomas Hruby [Wed, 11 Nov 2009 17:02:45 +0000 (17:02 +0000)]
The rest of the r5641 commit

15 years agoenable printing of 64-bit ints with gcc.
Tomas Hruby [Wed, 11 Nov 2009 12:15:08 +0000 (12:15 +0000)]
enable printing of 64-bit ints with gcc.

15 years agoallow kernel to tell VM extra physical addresses it wants mapped in.
Tomas Hruby [Wed, 11 Nov 2009 12:07:06 +0000 (12:07 +0000)]
allow kernel to tell VM extra physical addresses it wants mapped in.
used in the future for mapping in local APIC memory.

15 years agokernel/proc.h can be included in kernel assembky files
Tomas Hruby [Tue, 10 Nov 2009 09:14:50 +0000 (09:14 +0000)]
kernel/proc.h can be included in kernel assembky files

- the gnu .S are compiled with __ASSEMBLY__ macro set which allows us to
  conditionaly remove C stuff from the proc.h file when included in assembly
  files

15 years agoAll macros defining rts flags are prefixed with RTS_
Tomas Hruby [Tue, 10 Nov 2009 09:11:13 +0000 (09:11 +0000)]
All macros defining rts flags are prefixed with RTS_

- macros used with RTS_SET group of macros to define struct proc p_rts_flags are
  now prefixed with RTS_ to make things clear

15 years agopick_proc() called only just before returning to userspace
Tomas Hruby [Mon, 9 Nov 2009 17:48:31 +0000 (17:48 +0000)]
pick_proc() called only just before returning to userspace

- new proc_is_runnable() macro to test whether process is runnable. All tests
  whether p_rts_flags == 0 converted to use this macro

- pick_proc() calls removed from enqueue() and dequeue()

- removed the test for recursive calls from pick_proc() as it certainly cannot
  be called recursively now

- PREEMPTED flag to mark processes that were preempted by enqueueuing a higher
  priority process in enqueue()

- enqueue_head() to enqueue PREEMPTED processes again at the head of their
  current priority queue

- NO_QUANTUM flag to block and dequeue processes preempted by timer tick with
  exceeded quantum. They need to be enqueued again in schedcheck()

- next_ptr global variable removed

15 years agopci: extend NR_DRIVERS to cover all system processes
David van Moolenbroek [Mon, 9 Nov 2009 10:43:46 +0000 (10:43 +0000)]
pci: extend NR_DRIVERS to cover all system processes

15 years agoRemoval of the executable flag from files that cannot be executed
Tomas Hruby [Mon, 9 Nov 2009 10:26:00 +0000 (10:26 +0000)]
Removal of the executable flag from files that cannot be executed

- 755 -> 644

15 years agoactivate new ptrace test, too
David van Moolenbroek [Mon, 9 Nov 2009 09:26:09 +0000 (09:26 +0000)]
activate new ptrace test, too

15 years agoFix ptrace bug when reattaching to a detached process
David van Moolenbroek [Mon, 9 Nov 2009 08:12:25 +0000 (08:12 +0000)]
Fix ptrace bug when reattaching to a detached process

15 years agoComplete ovehaul of mode switching code
Tomas Hruby [Fri, 6 Nov 2009 09:08:26 +0000 (09:08 +0000)]
Complete ovehaul of mode switching code

- after a trap to kernel, the code automatically switches to kernel
  stack, in the future local to the CPU

- k_reenter variable replaced by a test whether the CS is kernel cs or
  not. The information is passed further if needed. Removes a global
  variable which would need to be cpu local

- no need for global variables describing the exception or trap
  context. This information is kept on stack and a pointer to this
  structure is passed to the C code as a single structure

- removed loadedcr3 variable and its use replaced by reading the %cr3
  register

- no need to redisable interrupts in restart() as they are already
  disabled.

- unified handling of traps that push and don't push errorcode

- removed save() function as the process context is not saved directly
  to process table but saved as required by the trap code. Essentially
  it means that save() code is inlined everywhere not only in the
  exception handling routine

- returning from syscall is more arch independent - it sets the retger
  in C

- top of the x86 stack contains the current CPU id and pointer to the
  currently scheduled process (the one right interrupted) so the mode
  switch code can find where to save the context without need to use
  proc_ptr which will be cpu local in the future and therefore
  difficult to access in assembler and expensive to access in general

- some more clean up of level0 code. No need to read-back the argument
  passed in
  %eax from the proc structure. The mode switch code does not clobber
  %the general registers and hence we can just call what is in %eax

- many assebly macros in sconst.h as they will be reused by the apic
  assembly

15 years agoClock task split
Tomas Hruby [Fri, 6 Nov 2009 09:04:15 +0000 (09:04 +0000)]
Clock task split

- preemption handled in the clock timer interrupt handler, not in the clock task

- more achitecture independent clock timer handling code

- smp ready as each CPU can have its own timer

15 years agoFix for broken parsing of memory environment string in pci driver
Tomas Hruby [Fri, 6 Nov 2009 08:58:05 +0000 (08:58 +0000)]
Fix for broken parsing of memory environment string in pci driver

- unfixed parsing could run away from the the string and fail on a correct
  string in complete_bars()

- it reanables the body of complete_bars()

15 years agoinodes - using types with known size
Tomas Hruby [Fri, 6 Nov 2009 08:55:07 +0000 (08:55 +0000)]
inodes - using types with known size

- fixes a problem in inodes truct definitions. The original definitions use
  posix types. These types don't have well defined size. Therefore when
  compiling mkfs on a different system natively the inodes sizes do not match.
  This patch replaces the posix types with interger types of the same size and
  signedness as the original types in use.

15 years agoChanges to the include files in order to make cross-compilation possible.
Tomas Hruby [Fri, 6 Nov 2009 08:46:22 +0000 (08:46 +0000)]
Changes to the include files in order to make cross-compilation possible.

- The primary reason is that mkfs and installboot need to run natively during
  the cross compilation (host and target versions are compiled). There is a
  collision of include files though. E.g. a.out.h is very minix-specific.
  Therefore some files we moved and replaced by stubs that include the original
  file if compiling on or for Minix :

  include/a.out.h -> include/minix/a.out.h
  include/sys/dir.h -> include/minix/dir.h
  include/dirent.h -> include/minix/dirent.h
  include/sys/types.h -> include/minix/types.h

- This does not break any native compilation on Minix. Other headers that were
  including the original files are changed according to include directly the
  new, minix specific location not to pick up the host system includes while
  cross-compiling.

- role of this patch is to make rebasing of the build branch simpler until the
  new build system is merged

15 years agovmassert reports also the source file in which it was triggered
Tomas Hruby [Wed, 4 Nov 2009 15:30:08 +0000 (15:30 +0000)]
vmassert reports also the source file in which it was triggered

15 years agoHardware interrupts code path cleanup
Tomas Hruby [Wed, 4 Nov 2009 13:24:56 +0000 (13:24 +0000)]
Hardware interrupts code path cleanup

- the PIC master and slave irq handlers don't pass the irq hook pointer but just
  the irq number. It gives a little bit more information to the C handler as the
  irq number is not lost

- the irq code path is more achitecture independent. i386 hw interrupts are
  called irq and whereever the code is arch independent enough hw_intr_
  functions are called to mask/unmask interrupts

- the legacy PIC is not the only possible interrupt controller in the x86 world,
  therefore the intr_(un)mask functions were renamed to signal their
  functionality explicitly. APIC will add their own.

- masking and unmasking PIC interrupt lines is removed from assembler and all
  the functionality is rewriten in C and moved to i8259.c

- interrupt handlers have to unmask the interrupt line if all irq handlers are
  done. Assembler does not do it anymore

15 years ago - enable remembering of device memory ranges set by PCI and
Ben Gras [Tue, 3 Nov 2009 11:12:23 +0000 (11:12 +0000)]
  - enable remembering of device memory ranges set by PCI and
    told to kernel
  - makes VM ask the kernel if a certain process is allowed
    to map in a range of physical memory (VM rounds it to page
    boundaries afterwards - but it's impossible to map anything
    smaller otherwise so I assume this is safe, i.e. there won't
    be anything else in that page; certainly no regular memory)
  - VM permission check cleanup (no more hardcoded calls, less
    hardcoded logic, more readable main loop), a loose end left
    by GQ
  - remove do_copy warning, as the ipc server triggers this but
    it's no more harmful than the special cases already excluded
    explicitly (VFS, PM, etc).

15 years agoVarious small IS, TTY, isofs fixes
David van Moolenbroek [Mon, 2 Nov 2009 23:04:52 +0000 (23:04 +0000)]
Various small IS, TTY, isofs fixes

IS:
- do not use p_getfrom_e for a process that is sending
- register with TTY only function keys that are used
- various header and formatting fixes
- proper shutdown code

TTY:
- restore proper Ctrl+F1 dump contents

isofs:
- don't even try to call sys_exit()

15 years agoKernel: add support for indirect grants
David van Moolenbroek [Mon, 2 Nov 2009 22:30:37 +0000 (22:30 +0000)]
Kernel: add support for indirect grants

15 years agoash: only execute regular files
David van Moolenbroek [Sun, 1 Nov 2009 22:25:54 +0000 (22:25 +0000)]
ash: only execute regular files

15 years agoKernel, servers: remove unused proto.h definitions
David van Moolenbroek [Sat, 31 Oct 2009 14:11:50 +0000 (14:11 +0000)]
Kernel, servers: remove unused proto.h definitions

15 years agoPM: clean up endpoint info API/ABI
David van Moolenbroek [Sat, 31 Oct 2009 14:09:28 +0000 (14:09 +0000)]
PM: clean up endpoint info API/ABI

15 years agoConversion of kernel assembly from ACK to GNU
Tomas Hruby [Fri, 30 Oct 2009 16:00:44 +0000 (16:00 +0000)]
Conversion of kernel assembly from ACK to GNU

- .s files removed and replaced by .S as the .S is a standard extension for assembly that needs preprocessing

15 years ago gas2ack
Tomas Hruby [Fri, 30 Oct 2009 15:57:35 +0000 (15:57 +0000)]
gas2ack

    - an asmconv based tool for conversion from GNU ia32 assembly to ACK assembly

    - in contrast to asmconv it is a one way tool only

    - as the GNU assembly in Minix does not prefix global C symbols with _ gas2ack
      detects such symbols and prefixes them to be compliant with the ACK convention

    - gas2ack preserves comments and unexpanded macros

    - bunch of fixes to the asmconv GNU->ACK direction

    - support of more instructions that ACK does not know but are in use in Minix

    - it is meant as a temporary solution as long as ACK will be a supported
      compiler for the core system

15 years agoPM, VFS: remove unused param.h definitions
David van Moolenbroek [Thu, 29 Oct 2009 13:29:04 +0000 (13:29 +0000)]
PM, VFS: remove unused param.h definitions

15 years agoPM: remove unused core_name variable
David van Moolenbroek [Thu, 29 Oct 2009 12:07:53 +0000 (12:07 +0000)]
PM: remove unused core_name variable

15 years agoDS: do not panic when sending reply fails
David van Moolenbroek [Tue, 27 Oct 2009 17:06:45 +0000 (17:06 +0000)]
DS: do not panic when sending reply fails

15 years agoCreate man pages for bigsh and dev2name
Erik van der Kouwe [Tue, 27 Oct 2009 15:34:22 +0000 (15:34 +0000)]
Create man pages for bigsh and dev2name

15 years agoGround work for larger file systems, and miscellaneous fixes:
David van Moolenbroek [Mon, 26 Oct 2009 13:35:39 +0000 (13:35 +0000)]
Ground work for larger file systems, and miscellaneous fixes:
- MFS and mkfs(1) now perform extra sanity checks
- fsck(1) can now deal with inode tables extending beyond the file
  system's first 4GB
- badblocks(8) no longer writes out the superblock for no reason
- mkfs(1) no longer crashes when given no parameters
- more(1) no longer crashes when standard output is redirected

15 years agoDon't check DMA_ST_ERROR before DMA_ST_INT is set (which is done too)
Ben Gras [Thu, 22 Oct 2009 14:31:29 +0000 (14:31 +0000)]
Don't check DMA_ST_ERROR before DMA_ST_INT is set (which is done too)

15 years agoIncrease limits on PCI devices to have space for the new RTL8139 ACLSs
Erik van der Kouwe [Wed, 21 Oct 2009 09:14:58 +0000 (09:14 +0000)]
Increase limits on PCI devices to have space for the new RTL8139 ACLSs

15 years agoif from branch, include branch name in in-image tag and .iso filename.
Ben Gras [Mon, 19 Oct 2009 15:46:27 +0000 (15:46 +0000)]
if from branch, include branch name in in-image tag and .iso filename.

15 years agothrow out unnecessary drive1 thing
Ben Gras [Mon, 19 Oct 2009 15:45:43 +0000 (15:45 +0000)]
throw out unnecessary drive1 thing

15 years agonewer at_wini.c (really incl atapi dma this time)
Ben Gras [Mon, 19 Oct 2009 15:45:14 +0000 (15:45 +0000)]
newer at_wini.c (really incl atapi dma this time)

15 years agoinclude OSS on CD
Ben Gras [Mon, 19 Oct 2009 15:13:44 +0000 (15:13 +0000)]
include OSS on CD

15 years ago - reverse order of transfer command and DMA initiation - fixes DMA problem
Ben Gras [Mon, 19 Oct 2009 14:23:04 +0000 (14:23 +0000)]
 - reverse order of transfer command and DMA initiation - fixes DMA problem
   that some hardware had
 - clear DMA_ST_INT after DMA - fixes infinite number of interrupts
   that some hardware had
 - initial ATAPI DMA implementation, doesn't actually increase performance
   on my test hardware so possibly not right yet, disabled by default

15 years agono DEBUG_VMASSERT committed
Ben Gras [Sun, 18 Oct 2009 20:08:55 +0000 (20:08 +0000)]
no DEBUG_VMASSERT committed

15 years agoSuppress spurious scancodes in VMWare
Erik van der Kouwe [Sun, 18 Oct 2009 07:12:42 +0000 (07:12 +0000)]
Suppress spurious scancodes in VMWare

15 years agoAdd more identifiers to drivers.conf for orinoco and rtl8137.
Erik van der Kouwe [Wed, 14 Oct 2009 07:20:13 +0000 (07:20 +0000)]
Add more identifiers to drivers.conf for orinoco and rtl8137.
Increase RSS_NR_PCI_ID and remove dumplicate reference
to /etc/drivers.conf; each such reference uses _PATH_DRIVERS_CONF
from <minix/paths.h> now.

15 years agomoving OSS to a package.
Ben Gras [Mon, 12 Oct 2009 12:53:36 +0000 (12:53 +0000)]
moving OSS to a package.

15 years agosupport for head -n (suggested by xorquewasp)
David van Moolenbroek [Sat, 10 Oct 2009 22:36:46 +0000 (22:36 +0000)]
support for head -n (suggested by xorquewasp)

15 years agoNetwork card autodetection in netconf.sh
Erik van der Kouwe [Sat, 10 Oct 2009 15:54:05 +0000 (15:54 +0000)]
Network card autodetection in netconf.sh

15 years agoAdd lspci command and SI_PCI_INFO getsysinfo call
Erik van der Kouwe [Fri, 9 Oct 2009 10:48:46 +0000 (10:48 +0000)]
Add lspci command and SI_PCI_INFO getsysinfo call

15 years agoinet: fix TCP connection corruption bug (causing test40 to fail sometimes)
David van Moolenbroek [Tue, 6 Oct 2009 20:32:58 +0000 (20:32 +0000)]
inet: fix TCP connection corruption bug (causing test40 to fail sometimes)

15 years agoReport make issue in UPDATING (approved by Ben)
Erik van der Kouwe [Tue, 6 Oct 2009 14:17:13 +0000 (14:17 +0000)]
Report make issue in UPDATING (approved by Ben)

15 years agoAdd nohup tool (approved by Ben)
Erik van der Kouwe [Tue, 6 Oct 2009 14:16:35 +0000 (14:16 +0000)]
Add nohup tool (approved by Ben)

15 years agofix compiler warning by including for prototype.
Ben Gras [Mon, 5 Oct 2009 16:45:03 +0000 (16:45 +0000)]
fix compiler warning by including for prototype.

15 years agoadd prototype for wait_for() to fix compiler warning.
Ben Gras [Mon, 5 Oct 2009 16:43:02 +0000 (16:43 +0000)]
add prototype for wait_for() to fix compiler warning.

15 years agofix compiler warnings using dubious casts.
Ben Gras [Mon, 5 Oct 2009 16:41:28 +0000 (16:41 +0000)]
fix compiler warnings using dubious casts.

15 years agofix compiler warning
Ben Gras [Mon, 5 Oct 2009 16:40:21 +0000 (16:40 +0000)]
fix compiler warning

15 years agofix compiler warning due to const char * -> char *
Ben Gras [Mon, 5 Oct 2009 16:38:12 +0000 (16:38 +0000)]
fix compiler warning due to const char * -> char *

15 years agoreally revert endpoint_t -> int
Ben Gras [Mon, 5 Oct 2009 15:47:23 +0000 (15:47 +0000)]
really revert endpoint_t -> int

debugging info on panic: decode segment selectors and descriptors, now moved
to arch-specific part, prototypes added; sanity checking in debug.h made
optional with vmassert().

15 years agothanks to tomas: fix for level0() race condition - global variable can
Ben Gras [Mon, 5 Oct 2009 15:22:31 +0000 (15:22 +0000)]
thanks to tomas: fix for level0() race condition - global variable can
be used concurrently.  pass the function in eax instead; this gets rid
of the global variable.  also execute the function directly if we're
already trapped into the kernel.

revert of u32_t endpoint_t to int (some code assumes endpoints are
negative for negative slot numbers).

15 years agolittle more info in pagefault exception handler.
Ben Gras [Sat, 3 Oct 2009 12:23:02 +0000 (12:23 +0000)]
little more info in pagefault exception handler.

15 years ago - exact magic values for entered/nonentered states in recursive enter check
Ben Gras [Sat, 3 Oct 2009 12:17:46 +0000 (12:17 +0000)]
 - exact magic values for entered/nonentered states in recursive enter check
 - read_*() functions to read segment selector values
 - decode loaded segments on panic

15 years ago - panic if there's no runnable process
Ben Gras [Sat, 3 Oct 2009 11:30:35 +0000 (11:30 +0000)]
 - panic if there's no runnable process
 - more basic sanity check before recursive enter check (data segment)
 - try to jump to boot monitor instantly on recursive panic

15 years agopackman -y: noninteractive mode to install all packages
Ben Gras [Sat, 3 Oct 2009 09:57:37 +0000 (09:57 +0000)]
packman -y: noninteractive mode to install all packages

15 years agofixed grep usage in filter (again)
Ben Gras [Fri, 2 Oct 2009 13:29:36 +0000 (13:29 +0000)]
fixed grep usage in filter (again)

15 years agodon't have ackpack in the list any more as it installs an
Ben Gras [Fri, 2 Oct 2009 13:23:58 +0000 (13:23 +0000)]
don't have ackpack in the list any more as it installs an
old /usr/bin/make.

15 years agoUnique matching for package name when grepping for it in the master list.
Ben Gras [Fri, 2 Oct 2009 13:02:36 +0000 (13:02 +0000)]
Unique matching for package name when grepping for it in the master list.

15 years agoAdd id(1) -g, -n, -r options (Bug#302, reported by Aleksey Cheusov)
David van Moolenbroek [Fri, 2 Oct 2009 12:23:00 +0000 (12:23 +0000)]
Add id(1) -g, -n, -r options (Bug#302, reported by Aleksey Cheusov)

15 years agoisofs links with libsysutil which does not exist anymore
Tomas Hruby [Fri, 2 Oct 2009 12:07:46 +0000 (12:07 +0000)]
isofs links with libsysutil which does not exist anymore

15 years agodirs for OSS
Ben Gras [Fri, 2 Oct 2009 10:35:05 +0000 (10:35 +0000)]
dirs for OSS

15 years agorevert to 16MB to fix reinstall for now.
Ben Gras [Fri, 2 Oct 2009 09:48:15 +0000 (09:48 +0000)]
revert to 16MB to fix reinstall for now.

15 years agoINET: fix panic when network drivers are started late (Bug#309, reported by Niek...
David van Moolenbroek [Thu, 1 Oct 2009 21:24:12 +0000 (21:24 +0000)]
INET: fix panic when network drivers are started late (Bug#309, reported by Niek Linnenbank)

15 years agoRS: disable harmless warning
David van Moolenbroek [Thu, 1 Oct 2009 19:21:57 +0000 (19:21 +0000)]
RS: disable harmless warning

15 years agopostgresql in packing list
Ben Gras [Thu, 1 Oct 2009 18:14:49 +0000 (18:14 +0000)]
postgresql in packing list

15 years agoslightly larger /usr needed
Ben Gras [Thu, 1 Oct 2009 17:45:14 +0000 (17:45 +0000)]
slightly larger /usr needed

15 years agoconnect OSS to the build (clean and install only)
Ben Gras [Thu, 1 Oct 2009 17:23:54 +0000 (17:23 +0000)]
connect OSS to the build (clean and install only)

15 years agoFix bios_wini using wrong size for vector (Bug#280, reported by John Peace)
David van Moolenbroek [Thu, 1 Oct 2009 16:59:04 +0000 (16:59 +0000)]
Fix bios_wini using wrong size for vector (Bug#280, reported by John Peace)

15 years agoRemove treecmp utility (Bug#310, reported by John Peace)
David van Moolenbroek [Thu, 1 Oct 2009 16:58:13 +0000 (16:58 +0000)]
Remove treecmp utility (Bug#310, reported by John Peace)

15 years agoFix writeisofs lseek() usage (Bug#311, reported by John Peace
David van Moolenbroek [Thu, 1 Oct 2009 16:56:46 +0000 (16:56 +0000)]
Fix writeisofs lseek() usage (Bug#311, reported by John Peace

15 years agodir for oss config files
Ben Gras [Thu, 1 Oct 2009 16:55:54 +0000 (16:55 +0000)]
dir for oss config files

15 years agoFix syslog buffer overflow (Bug#270, reported by Kevin Jordan)
David van Moolenbroek [Thu, 1 Oct 2009 16:54:56 +0000 (16:54 +0000)]
Fix syslog buffer overflow (Bug#270, reported by Kevin Jordan)

15 years agosupport for OSS.
Ben Gras [Thu, 1 Oct 2009 16:36:14 +0000 (16:36 +0000)]
support for OSS.

15 years agoFixes to ISOFS
Thomas Veerman [Thu, 1 Oct 2009 14:34:17 +0000 (14:34 +0000)]
Fixes to ISOFS

15 years agoInitial import of ISOFS by Jacopo Urbani
Thomas Veerman [Thu, 1 Oct 2009 14:00:27 +0000 (14:00 +0000)]
Initial import of ISOFS by Jacopo Urbani

15 years agoimplement VAR += .. feature, contributed by Pieter Hijma
Ben Gras [Thu, 1 Oct 2009 11:29:08 +0000 (11:29 +0000)]
implement VAR += .. feature, contributed by Pieter Hijma

15 years agoPM delay call infrastructure improvements
David van Moolenbroek [Thu, 1 Oct 2009 10:36:09 +0000 (10:36 +0000)]
PM delay call infrastructure improvements
- allow PM to tell sys_runctl() whether to use delay call feature
- only use this feature in PM for delivering signals - not for exits
- do better error checking in PM on sys_runctl() calls
- rename SIGKREADY to SIGNDELAY

15 years agoMake message type ranges in com.h (eventually) unique
David van Moolenbroek [Thu, 1 Oct 2009 10:33:01 +0000 (10:33 +0000)]
Make message type ranges in com.h (eventually) unique

15 years agoFix erroneous times() call in udpstat/tcpstat.
David van Moolenbroek [Thu, 1 Oct 2009 10:31:29 +0000 (10:31 +0000)]
Fix erroneous times() call in udpstat/tcpstat.
Reported by John Peace, bug #312.
Also fix times(2) man page.

15 years agoidle_task() declared 3x in kernel/proto.h. 2 declarations removed
Tomas Hruby [Thu, 1 Oct 2009 07:59:15 +0000 (07:59 +0000)]
idle_task() declared 3x in kernel/proto.h. 2 declarations removed

15 years agoIncrease root partition size to 64 MB.
Arun Thomas [Wed, 30 Sep 2009 14:11:58 +0000 (14:11 +0000)]
Increase root partition size to 64 MB.

15 years ago - retrieve binary packages and sources from webserver to make a release, incremental...
Ben Gras [Wed, 30 Sep 2009 13:11:22 +0000 (13:11 +0000)]
 - retrieve binary packages and sources from webserver to make a release, incrementally using wget
   (so wget required)
 - don't build List file again, but use webserver List file and filter it

15 years agoBump release to 3.1.5 in issue.install
Arun Thomas [Wed, 30 Sep 2009 13:00:38 +0000 (13:00 +0000)]
Bump release to 3.1.5 in issue.install

15 years agoMerge of David's ptrace branch. Summary:
David van Moolenbroek [Wed, 30 Sep 2009 09:57:22 +0000 (09:57 +0000)]
Merge of David's ptrace branch. Summary:
o Support for ptrace T_ATTACH/T_DETACH and T_SYSCALL
o PM signal handling logic should now work properly, even with debuggers
  being present
o Asynchronous PM/VFS protocol, full IPC support for senda(), and
  AMF_NOREPLY senda() flag

DETAILS

Process stop and delay call handling of PM:
o Added sys_runctl() kernel call with sys_stop() and sys_resume()
  aliases, for PM to stop and resume a process
o Added exception for sending/syscall-traced processes to sys_runctl(),
  and matching SIGKREADY pseudo-signal to PM
o Fixed PM signal logic to deal with requests from a process after
  stopping it (so-called "delay calls"), using the SIGKREADY facility
o Fixed various PM panics due to race conditions with delay calls versus
  VFS calls
o Removed special PRIO_STOP priority value
o Added SYS_LOCK RTS kernel flag, to stop an individual process from
  running while modifying its process structure

Signal and debugger handling in PM:
o Fixed debugger signals being dropped if a second signal arrives when
  the debugger has not retrieved the first one
o Fixed debugger signals being sent to the debugger more than once
o Fixed debugger signals unpausing process in VFS; removed PM_UNPAUSE_TR
  protocol message
o Detached debugger signals from general signal logic and from being
  blocked on VFS calls, meaning that even VFS can now be traced
o Fixed debugger being unable to receive more than one pending signal in
  one process stop
o Fixed signal delivery being delayed needlessly when multiple signals
  are pending
o Fixed wait test for tracer, which was returning for children that were
  not waited for
o Removed second parallel pending call from PM to VFS for any process
o Fixed process becoming runnable between exec() and debugger trap
o Added support for notifying the debugger before the parent when a
  debugged child exits
o Fixed debugger death causing child to remain stopped forever
o Fixed consistently incorrect use of _NSIG

Extensions to ptrace():
o Added T_ATTACH and T_DETACH ptrace request, to attach and detach a
  debugger to and from a process
o Added T_SYSCALL ptrace request, to trace system calls
o Added T_SETOPT ptrace request, to set trace options
o Added TO_TRACEFORK trace option, to attach automatically to children
  of a traced process
o Added TO_ALTEXEC trace option, to send SIGSTOP instead of SIGTRAP upon
  a successful exec() of the tracee
o Extended T_GETUSER ptrace support to allow retrieving a process's priv
  structure
o Removed T_STOP ptrace request again, as it does not help implementing
  debuggers properly
o Added MINIX3-specific ptrace test (test42)
o Added proper manual page for ptrace(2)

Asynchronous PM/VFS interface:
o Fixed asynchronous messages not being checked when receive() is called
  with an endpoint other than ANY
o Added AMF_NOREPLY senda() flag, preventing such messages from
  satisfying the receive part of a sendrec()
o Added asynsend3() that takes optional flags; asynsend() is now a
  #define passing in 0 as third parameter
o Made PM/VFS protocol asynchronous; reintroduced tell_fs()
o Made PM_BASE request/reply number range unique
o Hacked in a horrible temporary workaround into RS to deal with newly
  revealed RS-PM-VFS race condition triangle until VFS is asynchronous

System signal handling:
o Fixed shutdown logic of device drivers; removed old SIGKSTOP signal
o Removed is-superuser check from PM's do_procstat() (aka getsigset())
o Added sigset macros to allow system processes to deal with the full
  signal set, rather than just the POSIX subset

Miscellaneous PM fixes:
o Split do_getset into do_get and do_set, merging common code and making
  structure clearer
o Fixed setpriority() being able to put to sleep processes using an
  invalid parameter, or revive zombie processes
o Made find_proc() global; removed obsolete proc_from_pid()
o Cleanup here and there

Also included:
o Fixed false-positive boot order kernel warning
o Removed last traces of old NOTIFY_FROM code

THINGS OF POSSIBLE INTEREST

o It should now be possible to run PM at any priority, even lower than
  user processes
o No assumptions are made about communication speed between PM and VFS,
  although communication must be FIFO
o A debugger will now receive incoming debuggee signals at kill time
  only; the process may not yet be fully stopped
o A first step has been made towards making the SYSTEM task preemptible

15 years agothrow out exec debugging message.
Ben Gras [Wed, 30 Sep 2009 08:36:13 +0000 (08:36 +0000)]
throw out exec debugging message.

15 years agothere is no elvis.
Ben Gras [Wed, 30 Sep 2009 08:21:21 +0000 (08:21 +0000)]
there is no elvis.

15 years agoaudio package obsolete
Ben Gras [Wed, 30 Sep 2009 07:41:03 +0000 (07:41 +0000)]
audio package obsolete

15 years agothrow out FIXME reminders for release
Ben Gras [Wed, 30 Sep 2009 07:40:34 +0000 (07:40 +0000)]
throw out FIXME reminders for release

15 years agoMostly a revert of r5306. com.h defines MAX_NR_TASKS value which replaces
Tomas Hruby [Tue, 29 Sep 2009 20:13:41 +0000 (20:13 +0000)]
Mostly a revert of r5306. com.h defines MAX_NR_TASKS value which replaces
NR_TASKS in the endpoint macros. MAX_NR_TASKS defines the maximal number of
kernel tasks. It is unlikely that we will ever need this many tasks as the goal
is not to have such a difference in the future. For now it makes possible to
remove the limiting NR_TASKS from the endpoint code.

15 years agoRemoved macros that depend on NOTIFY_FROM from servers and drivers. They
Tomas Hruby [Tue, 29 Sep 2009 18:47:56 +0000 (18:47 +0000)]
Removed macros that depend on NOTIFY_FROM from servers and drivers. They
determine the information defined by these macros from the m_source field of the
notify message.

15 years agoadd SDL-1.2.13
Ben Gras [Tue, 29 Sep 2009 14:32:49 +0000 (14:32 +0000)]
add SDL-1.2.13