Commit graph

480 commits

Author SHA1 Message Date
Dirk Vogt
c192577b58 forgot to add devman to system.conf 2011-02-23 14:50:31 +00:00
Arun Thomas
bac0222eec ramdisk: Add procfs to ramdisk
-Prevents kernel/procfs mismatches
-Also, strip ELF binaries in ramdisk
2011-02-23 13:05:28 +00:00
Ben Gras
341f8682f2 usr/Makefile: added missing sh minibootstrap.sh 2011-02-10 17:00:02 +00:00
Ben Gras
9ef5859996 take pkgsrc.conf out of the base system.
. use bmake for pkgsrc instead, reads mk.conf from /usr/pkg/etc/mk.conf
  . tracking bmake from pkgsrc eases tracking pkgsrc
  . further disentangles pkgsrc from base system, reducing maintenance
    burden of pkgsrc
2011-02-10 15:05:18 +00:00
Ben Gras
914cdb5997 /usr/Makefile - automatically update pkgin database too. 2011-01-31 16:53:53 +00:00
Ben Gras
06aab2c6ed /usr/Makefile - automatically install git 2011-01-31 00:58:50 +00:00
Ben Gras
d5322973fa always define PKG_TOOLS_BIN 2011-01-30 23:36:45 +00:00
Ben Gras
e912f6ac38 take pkg_install out of the base system and pre-install it using the
pkgsrc binary packages.

rationale:
  . pkg_install (which is the pkg_* tools) is entangled with pkgsrc,
    not with minix, so tracking it from pkgsrc (easier than with
    base system) makes more sense
  . simplifies upstreaming minix specific changes for pkg_* tools
  . reduce pkgsrc-in-basesystem maintenance burden
2011-01-28 00:02:27 +00:00
Ben Gras
0874fa9321 add minix3.org pkgsrc mirror as backup source 2011-01-26 17:02:54 +00:00
David van Moolenbroek
9639af49d2 RS: fix IPC privilege computation bug
Take into account the ALL and ALL_SYS cases when constructing proper
symmetrical IPC send masks. Fix system.conf accordingly, to keep
userland processes from sending to several non-interface servers and
drivers. Also fix IS's F4 formatting.
2010-12-08 14:54:08 +00:00
Arun Thomas
41ae712b50 pkgsrc: Update git repo info 2010-11-23 11:12:06 +00:00
Arun Thomas
40fb96b838 Remove revision IDs from files 2010-11-04 01:13:59 +00:00
Erik van der Kouwe
431a5a556d e1000: add 82574L ethernet adapter (thx Niek for your comments) 2010-10-15 08:53:22 +00:00
Ben Gras
3306687363 pkgsrc: save binary packages in arch- and osversion dependent dir. 2010-09-17 14:31:54 +00:00
David van Moolenbroek
d269f5fb90 ProcFS integration 2010-09-14 21:27:31 +00:00
David van Moolenbroek
2c5c5c06ea ProcFS server, by Alen Stojanov and David van Moolenbroek 2010-09-14 21:25:25 +00:00
Ben Gras
eaa37fd21c make, lib changes to make gcc/clang format libraries in /usr/lib instead of /usr/gnu/lib. 2010-09-13 16:37:02 +00:00
Arun Thomas
7c3cfbde1a Update PATHs for llvm and X11 2010-09-12 17:56:53 +00:00
Arun Thomas
207e88d3c4 Update release script for pkgsrc 2010-09-10 17:00:30 +00:00
Tomas Hruby
7ae6f8740d ACPI driver loaded at boot time
- the acpi driver is part of the ramdisk and if present the rc script
  starts it before pci is started as pci needs if APIC mode is turned
  on.
2010-09-02 15:44:36 +00:00
Ben Gras
b1847ae244 make service look in /etc/system.conf.d/<progname> first for config file.
This makes it easier to
  - have non-base system drivers (get clobbered by global system.conf)
  - have drivers as packages (can't touch global system.conf)
  - make configs part of the drivers/servers instead of in global file
    (makes system parts more self-contained)
2010-08-31 14:33:31 +00:00
Erik van der Kouwe
a5741a465f update /etc on make world 2010-08-27 10:09:06 +00:00
Ben Gras
3e7c270f6c rc: add /sbin to $PATH for fsck.mfs 2010-08-18 16:07:54 +00:00
Ben Gras
66b8f17a29 AR=ar still needed for pkgsrc. 2010-08-14 20:28:32 +00:00
Ben Gras
b1eb16e5ff pkgsrc: no more g* prefix for binutils. 2010-08-13 13:33:51 +00:00
David van Moolenbroek
16f2eb25f4 AHCI driver 2010-08-05 16:37:58 +00:00
Thomas Veerman
5bf3967f26 Rename mkfs to mkfs.mfs and fsck to fsck.mfs. Add /sbin to root's PATH. 2010-08-05 12:35:00 +00:00
Ben Gras
9ce3961b8e mtree: drop /usr/local, add some pkgsrc dirs; /usr/etc/rc: pkgsrc rc.d 2010-08-03 11:18:18 +00:00
Ben Gras
3b386ad39f minor pkgsrc tweaks; allow pkgsrc to install rc scripts in /usr/pkg/etc/rc.d 2010-08-02 12:28:24 +00:00
Thomas Veerman
dff0434eaf Add support for the ext2 file system. Contributed by Evgeniy Ivanov. 2010-08-02 11:44:45 +00:00
Ben Gras
4510dddae4 add the sshd group 2010-07-29 09:54:34 +00:00
Ben Gras
e9651ae962 pkgsrc: minor changes to paths, options. 2010-07-28 09:41:15 +00:00
Ben Gras
1c2dd749eb make.conf: make pkgsrc.conf separate. 2010-07-22 14:42:20 +00:00
Ben Gras
e8e2f6f6b9 profile: don't set $MANPATH explicitly as it's already in man.conf. 2010-07-22 08:26:49 +00:00
Ben Gras
f6655c171b /usr/sbin in $PATH too. 2010-07-21 10:12:03 +00:00
Ben Gras
5e5d5ab1f6 make.conf: pkgsrc fix/workaround 2010-07-21 10:00:34 +00:00
Ben Gras
0b364d00bc install new Makefile in /usr instead. 2010-07-20 22:20:43 +00:00
Arun Thomas
13be76efe5 Makefile for pkgsrc repo update/checkout
-From DragonflyBSD with minor tweaks
2010-07-20 17:09:44 +00:00
Ben Gras
ac66d329c7 mtree: add libexec; don't make any oss dirs. 2010-07-18 22:06:40 +00:00
Ben Gras
6955228f39 rc - also add /usr/pkg/sbin to $PATH 2010-07-16 00:44:57 +00:00
Ben Gras
84e730cbd8 new dirs for pkgsrc; new $PATH for pkg root and llvm 2010-07-16 00:13:27 +00:00
Ben Gras
16d01fba85 mtree: dirs for pkgsrc 2010-07-15 14:29:07 +00:00
Cristiano Giuffrida
f8a8ea0a79 Dynamic configuration in system.conf for boot system services. 2010-07-13 21:11:44 +00:00
Ben Gras
ae9fa7fdf6 rtl8169 driver: let it recognize an extra card that works too 2010-07-10 17:04:17 +00:00
Cristiano Giuffrida
3de6a807ce Configure settings for system services dynamically with the new service edit command. 2010-07-05 19:37:08 +00:00
David van Moolenbroek
9a37f63263 netconf: psip0 is not a driver (Bug#500, reported by Roman Ignatov) 2010-07-02 11:22:42 +00:00
Ben Gras
d2dbe5b2ae install man.conf from commands/man 2010-06-26 11:20:47 +00:00
Ben Gras
2793cb097b bigger default manpath 2010-06-26 02:47:45 +00:00
Ben Gras
b24f63f996 man.conf 2010-06-26 02:43:31 +00:00
Arun Thomas
e10916476a Move mkfiles from /etc/mk to /usr/share/mk
Simplifies pkgsrc porting.
2010-06-25 19:33:56 +00:00
Arun Thomas
c0c8d25799 Rename mkfiles from minix.*.mk to bsd.*.mk
Makes things easier for pkgsrc
2010-06-25 18:29:09 +00:00
Arun Thomas
1b2c01db1b Makefile updates:
Turn on optimization
Remove some redundancy in FLAGS
2010-06-11 16:05:36 +00:00
Ben Gras
49165ef796 support for ukranian (charse koi8-u) contributed by Roman Ignatov. 2010-06-08 01:04:52 +00:00
Arun Thomas
2fd1f18803 Release script: Remove .d/.depend files from CD 2010-06-01 14:44:36 +00:00
Arun Thomas
8579c59b3f Minor makefile changes for GCC 2010-06-01 09:41:31 +00:00
Arun Thomas
b48b037fbe Reorganize some directories
servers/hgfs/hgfs_server => servers/hgfs
servers/hgfs/libhgfs => lib/libhgfs
servers/rs/service => commands/service
drivers/memory/memory_driver => drivers/memory
drivers/memory/ramdisk => drivers/ramdisk
2010-05-26 22:49:57 +00:00
Arun Thomas
b0159ad168 Buildsystem changes for GCC
-Makefile updates
-Update mkdep
-Build fixes/warning cleanups for some programs
-Restore leading underscores on global syms in kernel asm files
-Increase ramdisk size
2010-05-19 13:24:15 +00:00
Ben Gras
38ece51b25 charset cp1251 contributed by Roman Ignatov. 2010-05-19 11:34:47 +00:00
David van Moolenbroek
9ba65d2ea8 This patch switches the MINIX3 ethernet driver stack from a port-based
model to an instance-based model. Each ethernet driver instance is now
responsible for exactly one network interface card. The port field in
/etc/inet.conf now acts as an instance field instead.

This patch also updates the data link protocol. This update:
- eliminates the concept of ports entirely;
- eliminates DL_GETNAME entirely;
- standardizes on using m_source for IPC and DL_ENDPT for safecopies;
- removes error codes from TASK/STAT replies, as they were unused;
- removes a number of other old or unused fields;
- names and renames a few other fields.

All ethernet drivers have been changed to:
- conform to the new protocol, and exactly that;
- take on an instance number based on a given "instance" argument;
- skip that number of PCI devices in probe iterations;
- use config tables and environment variables based on that number;
- no longer be limited to a predefined maximum of cards in any way;
- get rid of any leftover non-safecopy support and other ancient junk;
- have a correct banner protocol figure, or none at all.

Other changes:
* Inet.conf is now taken to be line-based, and supports #-comments.
  No existing installations are expected to be affected by this.
* A new, select-based asynchio library replaces the old one.
  Kindly contributed by Kees J. Bot.
* Inet now supports use of select() on IP devices.
  Combined, the last two changes together speed up dhcpd
  considerably in the presence of multiple interfaces.
* A small bug has been fixed in nonamed.
2010-05-17 22:22:53 +00:00
Arun Thomas
5fa734b708 Awk build tweaks
-Make yacc invocation "less chatty to stderr" (again)
-Generate proctab.c (again)
2010-05-13 19:29:42 +00:00
Arun Thomas
869a181025 Buildsystem tweaks
Set build output verbosity level down to 1.
Make the 'install' target depend on the 'all' and 'depend' targets.
2010-05-13 13:26:27 +00:00
Arun Thomas
5706670029 Convert boot/ and commands/ over to bsdmake 2010-05-12 16:28:54 +00:00
Cristiano Giuffrida
5a98cd3e92 Fix Inet initialization race. 2010-05-06 22:18:21 +00:00
Ben Gras
b65ebdffac at_wini: more general system to allow devices that behave like ata controllers.
(let silicon image sata controller that is pci class 1, subclass 0x80,
but works as a sata controller, work as such.)
2010-04-28 11:52:28 +00:00
Ben Gras
d11b88cfc5 mtree: no more /lib and /lib/i386. 2010-04-27 13:44:48 +00:00
Cristiano Giuffrida
65ef539739 Driver mapping refactory.
VFS CHANGES:
- dmap table no longer statically initialized in VFS
- Dropped FSSIGNON svrctl call no longer used by INET

INET CHANGES:
- INET announces its presence to VFS just like any other driver

RS CHANGES:
- The boot image dev table contains all the data to initialize VFS' dmap table
- RS interface supports asynchronous up and update operations now
- RS interface extended to support driver style and flags
2010-04-09 21:56:44 +00:00
Cristiano Giuffrida
48c6bb79f4 Driver refactory for live update and crash recovery.
SYSLIB CHANGES:
- DS calls to publish / retrieve labels consider endpoints instead of u32_t.

VFS CHANGES:
- mapdriver() only adds an entry in the dmap table in VFS.
- dev_up() is only executed upon reception of a driver up event.

INET CHANGES:
- INET no longer searches for existing drivers instances at startup.
- A newtwork driver is (re)initialized upon reception of a driver up event.
- Networking startup is now race-free by design. No need to waste 5 seconds
at startup any more.

DRIVER CHANGES:
- Every driver publishes driver up events when starting for the first time or
in case of restart when recovery actions must be taken in the upper layers.
- Driver up events are published by drivers through DS. 
- For regular drivers, VFS is normally the only subscriber, but not necessarily.
For instance, when the filter driver is in use, it must subscribe to driver
up events to initiate recovery.
- For network drivers, inet is the only subscriber for now.
- Every VFS driver is statically linked with libdriver, every network driver
is statically linked with libnetdriver.

DRIVER LIBRARIES CHANGES:
- Libdriver is extended to provide generic receive() and ds_publish() interfaces
for VFS drivers.
- driver_receive() is a wrapper for sef_receive() also used in driver_task()
to discard spurious messages that were meant to be delivered to a previous
version of the driver.
- driver_receive_mq() is the same as driver_receive() but integrates support
for queued messages.
- driver_announce() publishes a driver up event for VFS drivers and marks
the driver as initialized and expecting a DEV_OPEN message.
- Libnetdriver is introduced to provide similar receive() and ds_publish()
interfaces for network drivers (netdriver_announce() and netdriver_receive()).
- Network drivers all support live update with no state transfer now.

KERNEL CHANGES:
- Added kernel call statectl for state management. Used by driver_announce() to
unblock eventual callers sendrecing to the driver.
2010-04-08 13:41:35 +00:00
Arun Thomas
4ed3a0cf3a Convert kernel over to bsdmake 2010-04-01 22:22:33 +00:00
Ben Gras
9fd4c2a20d introduce the fsckopts sysenv, options passed to fsck by /etc/rc.
setting 'fsckopts=-a' makes it much easier to work on a minix machine
remotely and reboot after a crash.
2010-03-31 15:06:53 +00:00
Arun Thomas
0ea82663e0 Fix crtso building with GCC 2010-03-24 10:11:17 +00:00
Arun Thomas
436d6012a3 Convert drivers/ and servers/ over to bsdmake
-Move libdriver to lib/
-Install all boot image services on filesystem to aid restartability
2010-03-22 21:25:22 +00:00
Cristiano Giuffrida
cb176df60f New RS and new signal handling for system processes.
UPDATING INFO:
20100317:
        /usr/src/etc/system.conf updated to ignore default kernel calls: copy
        it (or merge it) to /etc/system.conf.
        The hello driver (/dev/hello) added to the distribution:
        # cd /usr/src/commands/scripts && make clean install
        # cd /dev && MAKEDEV hello

KERNEL CHANGES:
- Generic signal handling support. The kernel no longer assumes PM as a signal
manager for every process. The signal manager of a given process can now be
specified in its privilege slot. When a signal has to be delivered, the kernel
performs the lookup and forwards the signal to the appropriate signal manager.
PM is the default signal manager for user processes, RS is the default signal
manager for system processes. To enable ptrace()ing for system processes, it
is sufficient to change the default signal manager to PM. This will temporarily
disable crash recovery, though.
- sys_exit() is now split into sys_exit() (i.e. exit() for system processes,
which generates a self-termination signal), and sys_clear() (i.e. used by PM
to ask the kernel to clear a process slot when a process exits).
- Added a new kernel call (i.e. sys_update()) to swap two process slots and
implement live update.

PM CHANGES:
- Posix signal handling is no longer allowed for system processes. System
signals are split into two fixed categories: termination and non-termination
signals. When a non-termination signaled is processed, PM transforms the signal
into an IPC message and delivers the message to the system process. When a
termination signal is processed, PM terminates the process.
- PM no longer assumes itself as the signal manager for system processes. It now
makes sure that every system signal goes through the kernel before being
actually processes. The kernel will then dispatch the signal to the appropriate
signal manager which may or may not be PM.

SYSLIB CHANGES:
- Simplified SEF init and LU callbacks.
- Added additional predefined SEF callbacks to debug crash recovery and
live update.
- Fixed a temporary ack in the SEF init protocol. SEF init reply is now
completely synchronous.
- Added SEF signal event type to provide a uniform interface for system
processes to deal with signals. A sef_cb_signal_handler() callback is
available for system processes to handle every received signal. A
sef_cb_signal_manager() callback is used by signal managers to process
system signals on behalf of the kernel.
- Fixed a few bugs with memory mapping and DS.

VM CHANGES:
- Page faults and memory requests coming from the kernel are now implemented
using signals.
- Added a new VM call to swap two process slots and implement live update.
- The call is used by RS at update time and in turn invokes the kernel call
sys_update().

RS CHANGES:
- RS has been reworked with a better functional decomposition.
- Better kernel call masks. com.h now defines the set of very basic kernel calls
every system service is allowed to use. This makes system.conf simpler and
easier to maintain. In addition, this guarantees a higher level of isolation
for system libraries that use one or more kernel calls internally (e.g. printf).
- RS is the default signal manager for system processes. By default, RS
intercepts every signal delivered to every system process. This makes crash
recovery possible before bringing PM and friends in the loop.
- RS now supports fast rollback when something goes wrong while initializing
the new version during a live update.
- Live update is now implemented by keeping the two versions side-by-side and
swapping the process slots when the old version is ready to update.
- Crash recovery is now implemented by keeping the two versions side-by-side
and cleaning up the old version only when the recovery process is complete.

DS CHANGES:
- Fixed a bug when the process doing ds_publish() or ds_delete() is not known
by DS.
- Fixed the completely broken support for strings. String publishing is now
implemented in the system library and simply wraps publishing of memory ranges.
Ideally, we should adopt a similar approach for other data types as well.
- Test suite fixed.

DRIVER CHANGES:
- The hello driver has been added to the Minix distribution to demonstrate basic
live update and crash recovery functionalities.
- Other drivers have been adapted to conform the new SEF interface.
2010-03-17 01:15:29 +00:00
Arun Thomas
9944688d2b Convert man/ over to new make 2010-03-16 00:15:43 +00:00
Arun Thomas
2a8fabf4ad Include directory reorg and makefile updates.
-Convert the include directory over to using bsdmake
 syntax
-Update/add mkfiles
-Modify install(1) so that it can create symlinks
-Update makefiles to use new install(1) options
-Rename /usr/include/ibm to /usr/include/i386
-Create /usr/include/machine symlink to arch header files
-Move vm_i386.h to its new home in the /usr/include/i386
-Update source files to #include the header files at their
 new homes.
-Add new gnu-includes target for building GCC headers
2010-03-08 11:04:59 +00:00
Arun Thomas
cbd276e4ce Convert library asm files to GAS syntax 2010-03-03 14:27:30 +00:00
Ben Gras
5af8c345be slight tuning of /etc/mk situation when making release.
- Make the bootstrap /etc/mk be populated from the newly checked out source
  - Don't chmod 755 all of /etc
  - For the 'real' /etc/mk installing, let the /etc/mk ownership and permission
    come from the mtree file, delete the contents of /etc/mk, then copy the .mk
    files over and set reasonable permissions and ownership. (So that the .mk
    get updated from the real usr/src/ copies, and no other junk if anything,
    after the bootstrap phase, whatever happened there.)
2010-03-01 15:53:57 +00:00
Arun Thomas
a4af231978 Improve makefile logic for building programs/libs 2010-02-24 11:58:05 +00:00
Arun Thomas
b706112487 Incorporate bsdmake into buildsystem and reorganize libs 2010-02-16 14:41:33 +00:00
Arun Thomas
4b02d003db Import NetBSD's make 2010-02-04 16:52:54 +00:00
Ben Gras
76f8132545 dec21140A ethernet driver for virtualpc, contributed by nicolas tittley. 2010-01-26 10:20:18 +00:00
David van Moolenbroek
71fe2852f4 HGFS - VMware Shared Folders file system server 2010-01-25 23:18:02 +00:00
Thomas Veerman
fadbbf7b2e Unmount defunct boot ramdisk at bootup 2010-01-21 09:58:07 +00:00
David van Moolenbroek
53a6e039de remove SYS_MAPDMA 2010-01-19 21:24:42 +00:00
David van Moolenbroek
61bb82a44b VM information interface 2010-01-19 21:00:20 +00:00
David van Moolenbroek
a8b52644c4 Give SETALARM privilege to atl2 driver 2010-01-16 14:31:35 +00:00
David van Moolenbroek
ac9ab099c8 General cleanup:
- clean up kernel section of minix/com.h somewhat
- remove ALLOCMEM and VM_ALLOCMEM calls
- remove non-safecopy and minix-vmd support from Inet
- remove SYS_VIRVCOPY and SYS_PHYSVCOPY calls
- remove obsolete segment encoding in SYS_SAFECOPY*
- remove DEVCTL call, svrctl(FSDEVUNMAP), map_driverX
- remove declarations of unimplemented svrctl requests
- remove everything related to swapping to disk
- remove floppysetup.sh
- remove traces of rescue device
- update DESCRIBE.sh with new devices
- some other small changes
2010-01-05 19:39:27 +00:00
David van Moolenbroek
1489f14b37 Driver for Attansic L2 FastEthernet (atl2) 2009-12-30 22:42:44 +00:00
David van Moolenbroek
0bafee3d78 unbreak, deprivilege dumpcore(1) 2009-12-29 21:34:06 +00:00
David van Moolenbroek
123683d4a5 Console function keys and color support:
- if "debug_fkeys" boot monitor variable is set to 0:
  - pass Fn, Shift+Fn, Ctrl+Fn, Shift+Ctrl+Fn to applications
  - don't start IS
- update termcap files with function key, color, end key support
2009-12-22 23:30:50 +00:00
Cristiano Giuffrida
e090013056 Drivers and servers are simply known as services.
/etc CHANGES:
- /etc/drivers.conf has been renamed to /etc/system.conf. Every entry in 
the file is now marked as "service" rather than driver.
- user "service" has been added to password file /etc/passwd.
- docs/UPDATING updated accordingly, as well as every other mention to the old
drivers.conf in the system.

RS CHANGES:
- No more distinction between servers and drivers.
- RS_START has been renamed to RS_UP and the old legacy RS_UP and RS_UP_COPY
dropped.
- RS asks PCI to set / remove ACL entries only for services whose ACL properties
have been set. This change eliminates unnecessary warnings.
- Temporarily minimize the risk of potential races at boot time or when starting
a new service. Upcoming changes will eliminate races completely.
- General cleanup.
2009-12-17 01:53:26 +00:00
Ben Gras
26ba254a4a Intel Pro/1000 driver written by Niek Linnenbank. 2009-12-07 18:33:41 +00:00
Ben Gras
207621b6fb rtl8169 driver contributed by Jaswinder Singh Rajput. 2009-12-02 15:59:42 +00:00
David van Moolenbroek
be2087ecf9 Filter driver by Wu Bingzheng et al 2009-12-02 10:08:58 +00:00
David van Moolenbroek
f197bcb435 Allow servers to run with fewer privileges:
- allow non-root processes to get their own endpoint
- make alloc_contig() call sys_umap() only when requested
2009-12-02 10:06:58 +00:00
Erik van der Kouwe
44a4c8c0d2 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.
2009-10-14 07:20:13 +00:00
Ben Gras
b9e0af1c1e dirs for OSS 2009-10-02 10:35:05 +00:00
Ben Gras
b7ac32bfa4 dir for oss config files 2009-10-01 16:55:54 +00:00
Ben Gras
cb50e7e135 support for OSS. 2009-10-01 16:36:14 +00:00
Thomas Veerman
cb6f6a94f7 Fixes to ISOFS 2009-10-01 14:34:17 +00:00
Ben Gras
32fa22fc2d RS_LOOKUP feature for libc functions that want to access servers.
let ipc talk to all USER processes and vice versa.

pm sig wrapper notify has to be called from two files.

actually install include files.
2009-09-21 15:25:15 +00:00
Ben Gras
ad4fc01b7b - new entry for bios_wini and ipc
- start ipc server on botting
2009-09-21 14:26:20 +00:00
Ben Gras
3d3e12f50f postgresql services entry. 2009-09-02 13:23:22 +00:00
David van Moolenbroek
7e9e0ce9bc FXP: support for 8086/1064 (reported and tested by Jose Luis Sanchez) 2009-08-30 16:13:46 +00:00
Erik van der Kouwe
ada4859302 Extend Intel PRO/100 support 2009-08-26 21:01:46 +00:00
Thomas Veerman
b47483433c Added a hack to start binaries from the boot image only. In particular, setting
bin_img=1 in the boot monitor will make sure that during the boot procedure the
mfs binary that is part of the boot image is the only binary that is used to
mount partitions. This is useful when for some reason the mfs binary on disk 
malfunctions, rendering Minix unable to boot. By setting bin_img=1, the binary
on disk is ignored and the binary in the boot image is used instead.

- 'service' now accepts an additional flag -r. -r implies -c. -r instructs RS
  to first look in memory if the binary has already been copied to memory and
  execute that version, instead of loading the binary from disk. For example,
  the first time a MFS is being started it is copied (-c) to memory and
  executed from there. The second time MFS is being started this way, RS will
  look in memory for a previously copied MFS binary and reuse it if it exists.
- The mount and newroot commands now accept an additional flag -i, which
  instructs them to set the MS_REUSE flag in the mount flags.
- The mount system call now supports the MS_REUSE flag and invokes 'service'
  with the -r flag when MS_REUSE is set.
- /etc/rc and the rc script that's included in the boot image check for the
  existence of the bin_img flag in the boot monitor, and invoke mount and 
  newroot with the -i flag accordingly.
2009-08-18 11:36:01 +00:00
David van Moolenbroek
1450a8ac6d let IS call getuptime() 2009-07-09 20:54:35 +00:00
David van Moolenbroek
b8b8f537bd IPC privileges fixes
Kernel:
o Remove s_ipc_sendrec, instead using s_ipc_to for all send primitives
o Centralize s_ipc_to bit manipulation,
  - disallowing assignment of bits pointing to unused priv structs;
  - preventing send-to-self by not setting bit for own priv struct;
  - preserving send mask matrix symmetry in all cases
o Add IPC send mask checks to SENDA, which were missing entirely somehow
o Slightly improve IPC stats accounting for SENDA
o Remove SYSTEM from user processes' send mask
o Half-fix the dependency between boot image order and process numbers,
  - correcting the table order of the boot processes;
  - documenting the order requirement needed for proper send masks;
  - warning at boot time if the order is violated

RS:
o Add support in /etc/drivers.conf for servers that talk to user processes,
  - disallowing IPC to user processes if no "ipc" field is present
  - adding a special "USER" label to explicitly allow IPC to user processes
o Always apply IPC masks when specified; remove -i flag from service(8)
o Use kernel send mask symmetry to delay adding IPC permissions for labels
  that do not exist yet, adding them to that label's process upon creation
o Add VM to ipc permissions list for rtl8139 and fxp in drivers.conf

Left to future fixes:
o Removal of the table order vs process numbers dependency altogether,
  possibly using per-process send list structures as used for SYSTEM calls
o Proper assignment of send masks to boot processes;
  some of the assigned (~0) masks are much wider than necessary
o Proper assignment of IPC send masks for many more servers in drivers.conf
o Removal of the debugging warning about the now legitimate case where RS's
  add_forward_ipc cannot find the IPC destination's label yet
2009-07-02 16:25:31 +00:00
Ben Gras
01f1132eac let at_wini see ata raid controllers 2009-02-12 12:28:28 +00:00
Ben Gras
3cc092ff06 . new kernel call sysctl for generic unprivileged system operations;
now used for printing diagnostic messages through the kernel message
   buffer. this lets processes print diagnostics without sending messages
   to tty and log directly, simplifying the message protocol a lot and
   reducing difficulties with deadlocks and other situations in which
   diagnostics are blackholed (e.g. grants don't work). this makes
   DIAGNOSTICS(_S), ASYN_DIAGNOSTICS and DIAG_REPL obsolete, although tty
   and log still accept the codes for 'old' binaries. This also simplifies
   diagnostics in several servers and drivers - only tty needs its own
   kputc() now.
 . simplifications in vfs, and some effort to get the vnode references
   right (consistent) even during shutdown. m_mounted_on is now NULL
   for root filesystems (!) (the original and new root), a less awkward
   special case than 'm_mounted_on == m_root_node'. root now has exactly
   one reference, to root, if no files are open, just like all other
   filesystems. m_driver_e is unused.
2009-01-26 17:43:59 +00:00
Ben Gras
7d48584659 profbuf syscall 2009-01-09 17:47:38 +00:00
Ben Gras
b6b361a474 rc script needs to open its own stdin, stdout and stderr 2008-12-11 14:50:56 +00:00
Ben Gras
011de3ac49 everyone needs GETINFO for HZ 2008-12-11 14:50:28 +00:00
Ben Gras
c078ec0331 Basic VM and other minor improvements.
Not complete, probably not fully debugged or optimized.
2008-11-19 12:26:10 +00:00
David van Moolenbroek
e8b863702a Added lance entry to drivers.conf. 2008-07-22 15:11:01 +00:00
Philip Homburg
75520b7403 ipc restrictions for some drivers and I/O MMU (amddev) 2008-02-21 16:24:35 +00:00
Ben Gras
c67a56708e es1370 driver and updated es1371 and framework by Pieter Hijma. 2007-11-23 11:40:33 +00:00
Ben Gras
1327804478 MFS doesn't need sys_exit(). 2007-10-23 14:24:41 +00:00
Ben Gras
515e8216e1 Basic entry for dpeth suggested by Jens de Smit. 2007-10-17 11:02:33 +00:00
Philip Homburg
341270673b mfs no longer needs access to VIRCOPY, Added rs.inet. Start inet with
rs.inet as the restart script.
2007-08-15 12:56:35 +00:00
Ben Gras
a80365f407 . add checks to printer driver kernel calls
. correct some i/o locations for printer in drivers.conf
2007-08-06 11:17:08 +00:00
Ben Gras
816f5dd550 a driver for wireless pci cards with the Prism chipset from Intersil
Original version, by Stevens Le Blond and Michael Valkering.
2007-07-24 14:49:09 +00:00
Ben Gras
ed920a691d include 'printer' driver 2007-05-30 15:40:12 +00:00
Ben Gras
b6cd5d0351 Include fonts blobs in src repository. 2007-05-16 13:00:43 +00:00
Philip Homburg
2db15eaa80 Added fxp. rtl8139 doesn't need to be root anymore. 2007-05-02 11:40:15 +00:00
Ben Gras
b49ba611bd shell at least as big in 'big' as in normal 2007-05-01 14:11:10 +00:00
Philip Homburg
29f7031340 Remove KILL and VIRCOPY from drivers that don't need them. Added rtl8139. 2007-04-23 15:39:46 +00:00
Ben Gras
8aa0d26891 update binary_sizes to not make binaries smaller than the build does. 2007-04-17 13:50:58 +00:00
Ben Gras
ef8ec86b78 Don't always update CMOS on shutdown. 2007-04-10 13:40:09 +00:00
Ben Gras
7b4cfd585a as needs more. 2007-04-05 10:47:04 +00:00
Ben Gras
3354ba1b6c . add /usr/share for zoneinfo
. throw out non-base /usr/gnu stuff
2007-04-05 10:37:22 +00:00
Ben Gras
70b95c31bc version /usr/lib/crontab too 2007-04-02 16:18:46 +00:00
Ben Gras
3fcf9fde61 Make /dev/mouse an alias for /dev/kbdaux for X 2007-03-08 16:04:59 +00:00
Ben Gras
f150b11a7b Removed args debugging line 2007-02-16 15:58:05 +00:00
Ben Gras
0d5c50f3fc Update CMOS time at shutdown time. 2007-02-16 15:52:39 +00:00
Ben Gras
b857dec78d Don't complain about missing ip address. 2007-02-09 16:28:34 +00:00
Ben Gras
e8edfe876d . no .vimrc in standard user's dirs
. install a vi hardlink to elvis
2007-01-22 17:08:36 +00:00
Ben Gras
2194bc0310 vfs/mount/rs/service changes:
. changed umount() and mount() to call 'service', so that it can include
   a custom label, so that umount() works again (RS slot gets freed now).
   merged umount() and mount() into one file to encode keep this label
   knowledge in one file.
 . removed obsolete RS_PID field and RS_RESCUE rescue command
 . added label to RS_START struct
 . vfs no longer does kill of fs process on unmount (which was failing
   due to RS_PID request not working)
 . don't assume that if error wasn't one of three errors, that no error
   occured in vfs/request.c
mfs changes:
 . added checks to copy statements to truncate copies at buffer sizes
   (left in debug code for now)
 . added checks for null-terminatedness, if less than NAME_MAX was copied
 . added checks for copy function success
is changes: 
 . dump rs label
drivers.conf changes:
 . added acl for mfs so that mfs can be started with 'service start',
   so that a custom label can be provided
2007-01-22 15:25:41 +00:00
Ben Gras
f47aa04a30 . removed readclock command and cmos driver.
. replaced by a readclock 'driver' that runs once, a re-imported version
  of the minix 2.0.4 readclock command.
. this has also restored cmos writing.
. readclock wrapper script calls service command to run /bin/readclock.drv
  once.
2007-01-12 16:35:04 +00:00
Ben Gras
53a6054b66 arch/i386/include/protect.h is unnecessary; add make.conf to etc/ and
note about it in docs/UPDATING.
2006-12-22 15:48:27 +00:00
Ben Gras
6f77685609 Split of architecture-dependent and -independent functions for i386,
mainly in the kernel and headers. This split based on work by
Ingmar Alting <iaalting@cs.vu.nl> done for his Minix PowerPC architecture
port.

 . kernel does not program the interrupt controller directly, do any
   other architecture-dependent operations, or contain assembly any more,
   but uses architecture-dependent functions in arch/$(ARCH)/.
 . architecture-dependent constants and types defined in arch/$(ARCH)/include.
 . <ibm/portio.h> moved to <minix/portio.h>, as they have become, for now,
   architecture-independent functions.
 . int86, sdevio, readbios, and iopenable are now i386-specific kernel calls
   and live in arch/i386/do_* now.
 . i386 arch now supports even less 86 code; e.g. mpx86.s and klib86.s have
   gone, and 'machine.protected' is gone (and always taken to be 1 in i386).
   If 86 support is to return, it should be a new architecture.
 . prototypes for the architecture-dependent functions defined in
   kernel/arch/$(ARCH)/*.c but used in kernel/ are in kernel/proto.h
 . /etc/make.conf included in makefiles and shell scripts that need to
   know the building architecture; it defines ARCH=<arch>, currently only
   i386.
 . some basic per-architecture build support outside of the kernel (lib)
 . in clock.c, only dequeue a process if it was ready
 . fixes for new include files

files deleted:
 . mpx/klib.s - only for choosing between mpx/klib86 and -386
 . klib86.s - only for 86

i386-specific files files moved (or arch-dependent stuff moved) to arch/i386/:
 . mpx386.s (entry point)
 . klib386.s
 . sconst.h
 . exception.c
 . protect.c
 . protect.h
 . i8269.c
2006-12-22 15:22:27 +00:00
Ben Gras
7d012272a1 make pci driver run as root, so it can call procstat 2006-12-15 15:56:36 +00:00
Philip Homburg
954ad990e5 at_wini now calls pci_reserve. 2006-11-01 14:55:00 +00:00
Philip Homburg
0c1d433f60 rs changes (also use driver configurations in the image ramdisk) 2006-10-31 13:35:04 +00:00
Ben Gras
b5b76d5691 Reorder for port order, and add svn (Subversion) as service (port 3690) 2006-09-27 13:55:54 +00:00
Philip Homburg
c39a693274 Disabled /etc/rc.rescue 2006-09-08 13:20:57 +00:00
Ben Gras
8f7876b1d1 /usr/local/gnu removed as prefix; gcc libs go into /usr/local/lib/gcc now 2006-08-15 15:58:24 +00:00
Ben Gras
99644bed66 /usr/local/src for easypack-fetched sources. 2006-07-31 11:40:14 +00:00
Ben Gras
0020ad8ac7 Make /usr/local/lib/{ack,gcc} for ack and gcc format libraries. 2006-07-21 16:09:05 +00:00
Ben Gras
0d9976ae9f Don't call X 'X Windows'. 2006-07-19 10:51:30 +00:00
Ben Gras
cef426ee54 There is no lex. 2006-06-20 10:14:25 +00:00
Ben Gras
28290d0898 install motd as motd.install 2006-04-13 18:06:22 +00:00
Ben Gras
96e45935a1 Undo issue 2006-04-13 17:49:54 +00:00
Ben Gras
b2648f99b7 Install dinks 2006-04-13 17:47:51 +00:00
Ben Gras
b539acfbd2 message 2006-04-13 14:38:16 +00:00
Ben Gras
4a8d5f5e38 fiX 2006-04-13 14:36:11 +00:00
Ben Gras
35d96ce368 Newline fix 2006-04-13 14:30:05 +00:00
Ben Gras
928b493106 Andy's issue. 2006-04-13 14:29:11 +00:00
Ben Gras
c3a0a231c6 Andy's motd 2006-04-13 14:27:16 +00:00
Ben Gras
7a0f8e28ba Start nonamed in local mode by default 2006-04-11 13:42:58 +00:00
Ben Gras
103f18cb1f (1) remove ftpd in favour of ftpd200
(2) add /etc/rc.daemons.dist, can be copied to /etc/rc.daemons
    if user wants the standard daemons to run, which are no longer run
    by default
2006-04-11 11:55:45 +00:00
Ben Gras
ae0b780257 ssh port 2006-04-10 15:36:48 +00:00
Ben Gras
04a1d3b3d7 Disable debug log 2006-04-05 14:25:21 +00:00
Ben Gras
978feddf13 Don't do this here too 2006-04-05 11:27:25 +00:00
Ben Gras
6137c5898c -f 2006-04-05 09:29:18 +00:00
Ben Gras
3b6220fe77 Add /usr/local/gnu/lib 2006-04-04 16:15:34 +00:00
Ben Gras
7a1853a524 Remove old syslogd.pid at boot time 2006-04-04 16:12:08 +00:00
Ben Gras
ea398f994a Only fiddle with /var/log on cd 2006-04-04 13:44:23 +00:00
Ben Gras
3775ce2eba Fixes for /var/log 2006-04-04 13:31:56 +00:00
Ben Gras
51e2078d8a Bah 2006-04-04 12:14:18 +00:00
Ben Gras
a3dfe3c9a4 Make /var/log writable (in /tmp); start syslogd after that 2006-04-04 11:52:57 +00:00
Ben Gras
910d6c8255 Added a default $MANPATH 2006-04-03 14:26:53 +00:00
Ben Gras
14a82e2d05 start syslogd instead of usyslogd ; include syslog.conf 2006-04-03 13:09:47 +00:00
Ben Gras
61f8571ff2 postfix complaint 2006-03-31 22:33:29 +00:00
Ben Gras
8b8fecf10d Add rsync ass service 2006-03-31 20:37:54 +00:00
Ben Gras
b057dcf920 Mail user+group 2006-03-30 22:10:32 +00:00
Ben Gras
99158dbdfc Add pty entries 2006-03-29 10:03:49 +00:00
Ben Gras
3e6ec29095 psip fix 2006-03-28 13:38:52 +00:00
Ben Gras
ef676bd39b Set ip address manually without dhcp when psip is set in /etc/inet.conf. 2006-03-28 12:35:33 +00:00
Ben Gras
354a40a813 Added full termcap file from
http://www.catb.org/terminfo/termtypes.tc.gz
as termcap.big and screen entries to termcap
2006-03-27 14:16:45 +00:00
Ben Gras
9b0832bbdd Update packme -> packman 2006-03-26 19:39:15 +00:00
Ben Gras
e28fe339bf Pports iwll go in commands, not bigports 2006-03-22 20:06:26 +00:00
Ben Gras
4269039311 NE 2006-03-17 12:32:32 +00:00
Ben Gras
f889a34b58 Package message 2006-03-17 12:31:35 +00:00
Ben Gras
827159c8ea *** empty log message *** 2006-03-17 08:15:13 +00:00
Ben Gras
6257b0a0dc More for em_opt for bzip2 2006-03-16 12:53:04 +00:00
Ben Gras
84ba9dd4d3 Dinks for the (source/binary) package scripts 2006-03-15 17:02:46 +00:00
Ben Gras
682efc75e5 Wait longer for ip address (fxp) 2006-03-10 17:33:15 +00:00
Ben Gras
498e232a5c Keep file modes and such 2006-03-10 14:35:15 +00:00
Ben Gras
bf081105f1 No label stuff. All drivers. 2006-03-10 12:43:26 +00:00
Ben Gras
4d115fcd91 rc: don't start floppy or at driver
passwd: add games for nethack
2006-03-08 12:21:40 +00:00
Ben Gras
aa3932eb8b Added 'xxl' binsizes size for x.
Leave sh and make at normal size for 'big'.
Call binsizes normal after creating release.
2006-03-03 12:44:22 +00:00
Ben Gras
fec2fa95e2 It's not always initialization 2006-02-20 15:11:41 +00:00
Ben Gras
ba667a0774 Don't copy memory to rescue
local package initialization
2006-02-17 16:46:08 +00:00
Ben Gras
17032f9909 Make a /usr/local/etc/rc.d 2006-02-17 15:14:46 +00:00
Ben Gras
c2f668d1d2 Refix 2006-02-17 14:05:46 +00:00
Ben Gras
2fa6eb3993 memory moved 2006-02-17 13:19:10 +00:00
Ben Gras
fc1582bb57 sshd user 2006-02-16 15:38:13 +00:00
Philip Homburg
c3a88d15d8 Initial root filesystem is now on a ramdisk that is part of the image. 2006-02-15 11:18:21 +00:00
Ben Gras
28087e3f17 *** empty log message *** 2006-02-03 15:41:58 +00:00
Ben Gras
23bcf287cb Let symlinks be in the installed set of files ; make symlink from /var/log to
/usr/log.
2006-01-25 13:00:14 +00:00
Ben Gras
6fab0ee47b more memory for as 2006-01-18 10:29:48 +00:00
Ben Gras
093cfe1143 . less verbose cd /usr debugging
. save random data only if /usr is mounted rw, don't display error otherwise
2006-01-18 09:33:09 +00:00
Ben Gras
428f9d63c4 Don't print randomness error when booting from install cd. 2006-01-17 17:57:40 +00:00
Jorrit Herder
2aac756e76 New up() functions in rc scripts. 2005-11-28 15:39:01 +00:00
Ben Gras
4b59679ebb Add /usr/spool/mail 2005-11-16 13:49:13 +00:00
Ben Gras
549e0bb855 Include X in path 2005-11-14 18:40:36 +00:00
Jorrit Herder
7a7e680da7 Added periodic checks from RS to drivers. 2005-10-21 14:34:13 +00:00
Jorrit Herder
4243d8e6bc Rescue script fixes. 2005-10-21 13:23:22 +00:00
Ben Gras
f0985a4e97 No /usr/gnu/bin in $PATH 2005-10-21 11:49:26 +00:00
Ben Gras
ca5b81bf6f /etc/rc.rescue initializes driver rescue environment 2005-10-21 10:47:13 +00:00
Ben Gras
fb7fb9e92c /boot/rescue (mount point for /dev/rescue) 2005-10-21 10:00:34 +00:00
Jorrit Herder
3e78f1aaa6 Tell RS server about upcoming shutdown. 2005-10-20 20:38:58 +00:00
Ben Gras
eedca63a05 bugs in trunk 2005-10-18 21:06:46 +00:00
Ben Gras
d371e7eac4 A .vimrc that makes vim colours work on the minix console and in xterm. 2005-10-11 17:55:14 +00:00
Ben Gras
04822e9cc9 Add /usr/gnu/bin to $PATH as last search step 2005-10-10 14:42:06 +00:00
Ben Gras
122c3ee967 don't make /usr/home any more 2005-10-06 15:28:19 +00:00
Ben Gras
5fd54a0d53 Print fsck messages to explain delays 2005-10-04 14:35:36 +00:00
Ben Gras
7de574f035 Let make install in src/etc also work from a source tree that isn't /usr/src 2005-09-30 11:45:59 +00:00
Ben Gras
17f7adebc5 Give ttys back 2005-09-25 20:29:33 +00:00
Ben Gras
6c4ba65530 *** empty log message *** 2005-09-25 17:30:12 +00:00
Ben Gras
dced21c350 vi kludge no longer needed 2005-09-12 22:07:10 +00:00
Ben Gras
0c12711e93 Restore /usr/ast 2005-09-09 13:23:34 +00:00
Ben Gras
75cb21f407 start lance driver too if/when selected 2005-09-08 21:15:11 +00:00
Ben Gras
c26fce0366 Include gnu hierachy 2005-09-08 12:21:45 +00:00
Ben Gras
42c8bb30f8 bin and ast to /home 2005-09-07 09:21:47 +00:00
Ben Gras
95348ccf2a big got bigger (for emacs) 2005-09-05 15:59:17 +00:00
Ben Gras
5c15fed299 oops 2005-09-01 16:58:19 +00:00
Ben Gras
e6ca4ed1bf oops 2005-09-01 16:27:49 +00:00
Ben Gras
946603a68c /home fixes 2005-09-01 16:26:22 +00:00
Ben Gras
0be5f3cf7b reorder drivers for more efficient making
mtree - added /usr/gnu

release - fiddling with deleting unwanted bits before copying for more
efficient packing
2005-09-01 12:30:17 +00:00
Ben Gras
e0e9e78d8e First /home steps 2005-08-31 16:29:56 +00:00
Ben Gras
9aa010403a Nits reported by Patrick Simpson 2005-08-31 13:06:51 +00:00
Ben Gras
6a56df46e9 *** empty log message *** 2005-08-30 16:56:46 +00:00
Ben Gras
f75536198d Minix sizing 2005-08-30 10:20:47 +00:00
Ben Gras
92cb06d0e9 Added binary (compiler) size adjustment script 2005-08-29 19:38:39 +00:00
Ben Gras
87732bd6e0 Added rc.cd that gets executed when starting from CD. 2005-08-24 07:33:13 +00:00
Ben Gras
695bcec49e *** empty log message *** 2005-08-12 13:31:47 +00:00
Ben Gras
48cb1bcb64 rotate log message 2005-08-12 13:25:27 +00:00
Ben Gras
d41f3858fd changed default INTR key to ^C instead of DEL 2005-08-12 09:40:16 +00:00
Jorrit Herder
3cb000654a Minor changes. 2005-08-11 13:22:31 +00:00
Ben Gras
94095d8727 Formatting fix for if networking isn't enabled. 2005-08-10 15:19:50 +00:00
Ben Gras
09a57f885a Don't source /etc/profile from /etc/rc, but source /etc/rc.timezone as
a timezone instead, and set TZ=GMT0 as a default.
2005-08-09 16:58:28 +00:00
Ben Gras
a4ae9574e9 motd fix;
cp /usr/lib/<compiler stuff> to /lib when on ramdisk;
make a /usr/log (to store logfile there, instead of /var/log).
2005-08-09 14:41:54 +00:00
Ben Gras
ddb8e7300d Took hostaddr out of the loop; if it fails after 10 secs, continue
startup script. (ast@)
2005-08-08 16:56:40 +00:00
Ben Gras
bfb7608412 various small fixes.
. motd update (ast)
 . made /usr/local/man/man* and made them bin-owned (mtree)
   (to let bin install there)
 . made copyright notice in kernel 1987-2006 (ast)
 . added chown -R bin /usr/src so that bin can compile everything
2005-08-08 14:34:10 +00:00
Ben Gras
5789f7abec config version bumped to 307; NOT cvs tagged yet; misc fixes 2005-08-05 19:19:18 +00:00
Jorrit Herder
941b5ebd1c Fix to device table at FS.
BIOS and AT installed in /sbin.
Floppy boot fixed.
2005-08-05 18:57:20 +00:00
Jorrit Herder
7de7ca978d Security check on physical address to be < 16 MB (ISA DMA uses 24-bit
addressing, which can address 16 MB max).
Floppy driver now dynamically loaded.
2005-08-05 16:23:42 +00:00
Philip Homburg
473317e571 Added dp8390 to /usr/etc/rc. Renamed get_mon_prm.c to env_get_prm.c.
Add env_setargs call for access to argc/argv.
2005-08-05 14:20:05 +00:00
Ben Gras
5340cf571d Added essential message to motd. 2005-08-05 12:57:52 +00:00