Commit graph

1159 commits

Author SHA1 Message Date
Arun Thomas
93bb4036ce Remove bigmake, binsizes, packman 2011-07-26 13:38:27 +02:00
Arun Thomas
2a9322a117 Remove advent and ttt 2011-07-26 11:37:18 +02:00
Ben Gras
51ffecc181 import elf-only -lcurses
. abandons mixer, gomoku, talk, talkd, top from base system
	. compile top with clang so no ack-compiled program
	  needs -lcurses any more
2011-07-25 11:08:17 +02:00
Vivek Prakash
1ea07af9da Replace uniq with NetBSD version 2011-07-24 21:40:02 +02:00
Arun Thomas
06617e7fdf Import NetBSD mkdep 2011-07-22 17:28:27 +02:00
Arun Thomas
db5c83c918 Remove strings(1) 2011-07-21 19:06:06 +02:00
Ben Gras
1341e4aa02 rename size to acksize
.  in keeping with the pattern: elf/binutils tools have
	   regular names, ack tools have 'exceptional' names
2011-07-21 14:31:17 +02:00
Ben Gras
000a9d36be cleanup of libterminfo introduction
. don't install minix <termcap.h> as libterminfo
	  has its own (but still install it in /usr/include.ack)
	. forget minix termcap functions in -lcompat_minix
	. make commands use -lterminfo in netbsd libc compile mode
2011-07-20 18:39:02 +02:00
Ben Gras
f789fee254 import netbsd sed
. speeds up mkdep (i.e. world builds) significantly
	. have to keep minix /bin/sed for a while because previous
	  usr/etc/rc depends on it
	. force mkdep to use /usr/bin/sed for speedup
2011-07-20 15:14:48 +02:00
Vivek Prakash
51e66a47d8 import libterminfo, terminfo.db and stat command 2011-07-18 16:17:14 +02:00
Vivek Prakash
49cab1c73c import NetBSD stat 2011-07-18 16:16:57 +02:00
Ben Gras
02081e4b62 rename mmap() and munmap()
. it's a good extra interface to have but doesn't
	  meet standardised functionality
	. applications (in pkgsrc) find it and expect
	  full functionality the minix mmap doesn't offter
	. on the whole probably better to hide these functions
	  (mmap and friends) until they are grown up; the base system
	  can use the new minix_* names
2011-07-16 13:01:19 +02:00
Ben Gras
bd6944ea49 top: larger size field 2011-07-15 14:15:15 +02:00
Ben Gras
4691eeae9f generate sys_errlist without holes
. strerror() assumes this
	. remove generated libminc/errlist.c
	. errno's in <sys/errno.h> have to be in sorted order
	. filtering out some errno.h in Makefile lets us use near-stock
	  errlist.awk
2011-07-13 23:42:07 +02:00
Ben Gras
ebffaa4250 import libcrypt
. move crypt() from minix-specific to netbsd -lcrypt
2011-07-13 18:19:27 +02:00
Evgeniy Ivanov
ef0a265086 New stat structure.
* VFS and installed MFSes must be in sync before and after this change *

Use struct stat from NetBSD. It requires adding new STAT, FSTAT and LSTAT
syscalls. Libc modification is both backward and forward compatible.

Also new struct stat uses modern field sizes to avoid ABI
incompatibility, when we update uid_t, gid_t and company.
Exceptions are ino_t and off_t in old libc (though paddings added).
2011-07-12 16:39:55 +02:00
Arun Thomas
8a5484202c Support for 82801CAM PRO/100 VE
Contributed by Jan Wieck
2011-07-11 21:10:28 +02:00
Antoine Leca
e582fc2a6f Force SPROFILE=1 while compiling profile command 2011-07-08 20:31:21 +02:00
Vivek Prakash
97c7d358ea Replace indent with NetBSD version
- minix-port.patch is empty as it compiles unchanged
2011-07-05 12:37:57 +02:00
Ben Gras
f3d5a9dc61 Reduce compiler/libraries/headers cases to only two
1. ack, a.out, minix headers (moved to /usr/include.ack),
	   minix libc
	2. gcc/clang, elf, netbsd headers (moved to /usr/include),
	   netbsd libc (moved to /usr/lib)

So this obsoletes the /usr/netbsd hierarchy.

No special invocation for netbsd libc necessary - it's always used
for gcc/clang.
2011-07-04 04:09:52 +02:00
Arun Thomas
ecb1c96fc5 Build libelf and mkimage in world 2011-06-29 09:33:40 +02:00
Arun Thomas
2e8d1eda1b Replace m4 with NetBSD version
-Create usr.bin hierarchy
-Update minix-port.patch to include m4
2011-06-29 09:33:30 +02:00
Arun Thomas
93ae43f577 boot: Add multiboot support
Not yet fully spec-compliant; work in progress
2011-06-24 17:21:51 +02:00
Gianluca Guida
cc17b27a2b Build NetBSD libc library in world in ELF mode.
3 sets of libraries are built now:
  . ack: all libraries that ack can compile (/usr/lib/i386/)
  . clang+elf: all libraries with minix headers (/usr/lib/)
  . clang+elf: all libraries with netbsd headers (/usr/netbsd/)

Once everything can be compiled with netbsd libraries and headers, the
/usr/netbsd hierarchy will be obsolete and its libraries compiled with
netbsd headers will be installed in /usr/lib, and its headers
in /usr/include. (i.e. minix libc and current minix headers set
will be gone.)

To use the NetBSD libc system (libraries + headers) before
it is the default libc, see:
   http://wiki.minix3.org/en/DevelopersGuide/UsingNetBSDCode
This wiki page also documents the maintenance of the patch
files of minix-specific changes to imported NetBSD code.

Changes in this commit:
  . libsys: Add NBSD compilation and create a safe NBSD-based libc.
  . Port rest of libraries (except libddekit) to new header system.
  . Enable compilation of libddekit with new headers.
  . Enable kernel compilation with new headers.
  . Enable drivers compilation with new headers.
  . Port legacy commands to new headers and libc.
  . Port servers to new headers.
  . Add <sys/sigcontext.h> in compat library.
  . Remove dependency file in tree.
  . Enable compilation of common/lib/libc/atomic in libsys
  . Do not generate RCSID strings in libc.
  . Temporarily disable zoneinfo as they are incompatible with NetBSD format
  . obj-nbsd for .gitignore
  . Procfs: use only integer arithmetic. (Antoine Leca)
  . Increase ramdisk size to create NBSD-based images.
  . Remove INCSYMLINKS handling hack.
  . Add nbsd_include/sys/exec_elf.h
  . Enable ELF compilation with NBSD libc.
  . Add 'make nbsdsrc' in tools to download reference NetBSD sources.
  . Automate minix-port.patch creation.
  . Avoid using fstavfs() as it is *extremely* slow and unneeded.
  . Set err() as PRIVATE to avoid name clash with libc.
  . [NBSD] servers/vm: remove compilation warnings.
  . u32 is not a long in NBSD headers.
  . UPDATING info on netbsd hierarchy
  . commands fixes for netbsd libc
2011-06-24 11:46:30 +02:00
Ben Gras
fa0fe45103 top: one sanity check endpoint->slot number 2011-06-22 15:49:42 +02:00
Arun Thomas
67c2d2fa54 Remove obsolete mkdist script 2011-06-22 11:15:00 +02:00
Erik van der Kouwe
6e0f3b3bda Split off sys_umap_remote from sys_umap
sys_umap now supports only:
- looking up the physical address of a virtual address in the address space
  of the caller;
- looking up the physical address of a grant for which the caller is the
  grantee.

This is enough for nearly all umap users. The new sys_umap_remote supports
lookups in arbitrary address spaces and grants for arbitrary grantees.
2011-06-10 14:28:20 +00:00
Ben Gras
d34ab6de9f commands: fix clang errors 2011-06-09 08:27:49 +02:00
Erik van der Kouwe
c2da8cb535 Globally enable -Wall warnings for GCC 2011-06-08 19:21:03 +00:00
Ben Gras
d490669430 prepare for netbsd libc/headers
. mtree entries for /usr/netbsd
  . install(1) fix for relative symlinks by Antoine Leca
2011-06-07 15:23:23 +00:00
Ben Gras
230b7775fe changes for detecting and building for clang/binutils elf
and minor fixes:
 . add ack/clean target to lib, 'unify' clean target
 . add includes as library dependency
 . mk: exclude warning options clang doesn't have in non-gcc
 . set -e in lib/*.sh build files
 . clang compile error circumvention (disable NOASSERTS for release builds)
2011-06-07 16:49:52 +02:00
Thomas Cort
f7c1307878 Add chmod o-w /usr
After the default install, /usr was world writable. perl refused to
install itself into /usr with that permission. This fixes the permissions.
2011-05-26 08:22:57 +02:00
Erik van der Kouwe
e969b5e11b Remote unused segctl kernel call 2011-04-26 23:28:23 +02:00
Erik van der Kouwe
c50ec2b4e2 fix missing return statement in nonamed causing network failure after 300s when compiling with GCC 2011-04-21 19:14:25 +00:00
David van Moolenbroek
196de8bc40 sprofalyze.pl: fix for forked-nonexeced processes 2011-04-20 21:39:13 +00:00
David van Moolenbroek
afb8067c4f dhcpd: fix newly introduced ACK warnings 2011-04-16 11:13:31 +00:00
Tomas Hruby
8171eb0b3d LWIP - dhcpd --lwip
A sort of quick hack for dhcpd to work as a client with lwip server.

- The functionality is not changed unless --lwip switch is supplied.
  dhcpd does not use broadcast udp sockets but some sort of raw
  sockets and changes their behavior during their life by ioctls.

- I thought there is no need to polute lwip just to make dhcp client
  work. Instead I decided to twist the client a little bit.

- It is so far the only big collision I found between inet and lwip.
2011-04-07 07:44:17 +00:00
David van Moolenbroek
8e5cad159f mkfs.mfs: use bitchunk_t (reported by Maurizio Lombardi) 2011-04-05 19:42:08 +00:00
David van Moolenbroek
8a925dcf90 tail(1): write partial last line also with -f 2011-03-25 10:59:48 +00:00
David van Moolenbroek
7a9e3651fd drivers/sb16: delete altogether; the latest copy is in drivers/audio/sb16 2011-03-25 10:48:16 +00:00
Thomas Veerman
898cce256f Add support for the 82567LM flavor of e1000 2011-03-15 10:04:35 +00:00
Ben Gras
09a652926f don't define CHIP at all any more, just use the namespace-trained name 2011-02-26 10:28:48 +00:00
Dirk Vogt
77fa5b4116 incoporate davman into server/rs 2011-02-25 12:25:03 +00:00
Ben Gras
beac6b15c9 fix for elf2aout
introduced while making the diff with the original prettier :/
2011-02-23 14:24:17 +00:00
Arun Thomas
2bc8ac55ce service: Improve failure message 2011-02-23 12:55:10 +00:00
Ben Gras
659dd75c78 elf2out from netbsd (ported for minix aout) 2011-02-23 12:21:21 +00:00
Ben Gras
5518fe9be1 grep - letting calloc() return NULL for 0 storage makes grep "" work 2011-02-20 13:34:53 +00:00
Ben Gras
d6e6ee3043 cleantmp.c - protect against double definition of NDEBUG 2011-02-16 19:04:29 +00:00
Ben Gras
dce5e09683 top - able to account kernel cpu time to process 2011-02-08 14:00:48 +00:00
Ben Gras
dc1cc91df1 <ansi.h> -> <minix/ansi.h> 2011-01-28 11:35:02 +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
David van Moolenbroek
561acfb618 remove fsck1 altogether 2010-12-21 11:00:13 +00:00
David van Moolenbroek
5d8d5e0c3a change bitchunk_t from 16-bit to 32-bit 2010-12-21 10:44:45 +00:00
Erik van der Kouwe
7aab862a06 Workaround for circular dependency problem in pkgadd 2010-12-11 18:20:31 +00:00
David van Moolenbroek
a53d925844 mkfifo.c: fix ack warning 2010-12-10 15:21:59 +00:00
Arun Thomas
7ff2db1dd6 unstack: ELF support 2010-12-10 15:18:30 +00:00
Arun Thomas
691030d5ce file(1): Add ELF support 2010-12-10 15:18:28 +00:00
Dirk Vogt
9ed280d1ec decouple file system server start/termination from mount/umount 2010-11-23 19:34:56 +00:00
Arun Thomas
a575be430d Import mkfifo(1) from NetBSD 2010-11-06 20:43:49 +00:00
Arun Thomas
8f0846e68c Import mktemp(1) from NetBSD 2010-11-06 20:41:51 +00:00
Arun Thomas
998af6f111 Move minix/paths.h to paths.h
Also, merge in relevant macros from NetBSD
2010-11-06 20:40:15 +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
e743f940d4 profile command - correct logic error
- this caused profile to complain about frequency when
    no command (start, stop) was given.
2010-10-12 11:26:47 +00:00
Ben Gras
98ddbffe6e dis386 - a disassembler for ack
- it can disassemble object files (dis386o) and executables
    (dis386a)
  - only useful for as long as we still have ack
2010-10-04 13:26:53 +00:00
Arun Thomas
677d80b781 Remove urlget
This patch gets rid of urlget. It's not used for anything now, since pkgin
uses fetch.

Arun
2010-10-02 18:24:53 +00:00
Ben Gras
6e385a1b01 cprofalyze - perl path fix. 2010-09-23 13:49:52 +00:00
Tomas Hruby
9cf2c02c47 Long (32 char) symbol names in sprofalyze 2010-09-23 10:49:58 +00:00
Tomas Hruby
de96892970 sprofalyze only warns when executables don't exist
- e.g. when acpi is not compiled, now we can include it

- the script still fails if a symbol from a non existent binary is
  found in the profile log
2010-09-23 10:49:57 +00:00
Tomas Hruby
45d3ef7b3c sprofalyze detects what nm to use 2010-09-23 10:49:55 +00:00
Tomas Hruby
74c5cd7668 The profile utility can set the sprofiling mode
- profile --nmi | --rtc sets the profiling mode

- --rtc is default, uses BIOS RTC, cannot profile kernel the presetted
  frequency values apply

- --nmi is only available in APIC mode as it uses the NMI watchdog, -f
  allows any frequency in Hz

- both modes use compatible data structures
2010-09-23 10:49:42 +00:00
Tomas Hruby
db12229ce3 New profile protocol
- when kernel profiles a process for the first time it saves an entry
  describing the process [endpoint|name]

- every profile sample is only [endpoint|pc]

- profile utility creates a table of endpoint <-> name relations and
  translates endpoints of samples into names and writing out the
  results to comply with the processing tools

- "task" endpoints like KERNEL are negative thus we must cast it to
  unsigned when hashing
2010-09-23 10:49:39 +00:00
Tomas Hruby
a665ae3de1 Userspace scheduling - exporting stats
- contributed by Bjorn Swift

- adds process accounting, for example counting the number of messages
  sent, how often the process was preemted and how much time it spent
  in the run queue. These statistics, along with the current cpu load,
  are sent back to the user-space scheduler in the Out Of Quantum
  message.

- the user-space scheduler may choose to make use of these statistics
  when making scheduling decisions. For isntance the cpu load becomes
  especially useful when scheduling on multiple cores.
2010-09-19 15:52:12 +00:00
David van Moolenbroek
831faf58f3 another sprofalyze.pl update 2010-09-17 09:25:10 +00:00
Tomas Hruby
c811aa21aa sprofalyze.pl update 2010-09-17 08:09:04 +00:00
David van Moolenbroek
d299a6422b make all other commands use ProcFS 2010-09-14 21:31:56 +00:00
David van Moolenbroek
33b131766f make top(1) use ProcFS 2010-09-14 21:30:23 +00:00
David van Moolenbroek
40c8a7062c make ps(1) use ProcFS 2010-09-14 21:29:40 +00:00
David van Moolenbroek
7763fd67c7 PM: save process frame length 2010-09-14 21:21:54 +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
David van Moolenbroek
d29833c5aa remove hardcoding of system.conf path in various service calls 2010-09-10 09:22:22 +00:00
David van Moolenbroek
2bda06bbb5 shutdown(8): buffer accessed beyond end during option parsing 2010-09-09 08:48:47 +00:00
Erik van der Kouwe
18ad0b52d3 Make hexdump ACK-compilable and add it to the base system 2010-09-03 07:37:31 +00:00
Arun Thomas
9e4e26e0c8 No more packman, easypack, packit
-Create a dummy packman script that tells users about pkgin
2010-09-03 07:27:39 +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
1f2054c89c Shutdown changes for multiboot: CTRL-ALT-DEL resets, panic halts 2010-08-30 19:01:58 +00:00
Erik van der Kouwe
a37514163b Touch generated files to avoid dependency generation warnings and missing dependencies 2010-08-29 17:50:51 +00:00
David van Moolenbroek
3e3d627b25 mdb: disassembly fix for short 8-bit values 2010-08-27 09:31:26 +00:00
Ben Gras
5d6c2aae0a gcov support, based on work contributed by Anton Kuijsten. 2010-08-25 13:06:43 +00:00
Arun Thomas
c9d500e9fd Import hexdump(1) from NetBSD 2010-08-21 13:24:09 +00:00
Arun Thomas
de231a713e Move MIN() and MAX() macros to sys/params.h 2010-08-21 13:10:41 +00:00
Ben Gras
02440068fc update MANPATH for gcc, X 2010-08-19 16:35:01 +00:00
David van Moolenbroek
5a377144b0 diskctl(8) into commands makefile 2010-08-12 14:21:55 +00:00
David van Moolenbroek
78fc74633a diskctl(8) tool 2010-08-12 14:11:28 +00:00
Tomas Hruby
905e94f058 gas2ack filters out .code16
- .code16 tells gnu as to generate 16bit assembly ack requires -mi86 switch
2010-08-06 12:46:01 +00:00
David van Moolenbroek
16f2eb25f4 AHCI driver 2010-08-05 16:37:58 +00:00
Ben Gras
e1f30da613 pkg_install: DESTDIR support. 2010-08-05 14:51:46 +00:00
Ben Gras
56770462c2 merge datasizes and unstack 2010-08-05 14:09:06 +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
Erik van der Kouwe
4eb7340395 Silence newroot 2010-08-03 13:58:36 +00:00
Erik van der Kouwe
4989de6acc Don't write to /etc/mtab in newroot, may be an issue on read-only filesystems 2010-08-03 13:57:58 +00:00
David van Moolenbroek
256c37f7fa mount: don't always autodetect 2010-08-03 13:46:00 +00:00
Erik van der Kouwe
a719ab7780 Auto-detect ext2 partitions in mount 2010-08-03 06:28:58 +00:00
Ben Gras
453be3b530 rename nm and strip to acknm and ackstrip
this is to force invocations of these utils for ack to be
explicitly named such, so in the future binutils can be installed
in /usr/pkg without the g- prefix.
2010-08-02 16:09:19 +00:00
Erik van der Kouwe
c7859a538c Replace newroot with a call to mount, will make type autodetect easier 2010-08-02 14:15:48 +00:00
Ben Gras
5d47cafa5b pkg_install: move db dir 2010-07-28 09:59:00 +00:00
Ben Gras
eb057107c5 pkg_install - bpm - changes to work with minix ftp client by Gautam Tirumala. 2010-07-26 14:02:05 +00:00
Erik van der Kouwe
9212eab21f Add padtext utility (needed for Multiboot) 2010-07-23 14:22:49 +00:00
Ben Gras
1c4065cd10 pkg_install: forget about OS_RELEASE, just a properly formatted OS_VERSION. 2010-07-23 14:10:23 +00:00
Arun Thomas
dbde088d98 Replace NULL macro defs with null.h include 2010-07-22 10:03:31 +00:00
Tomas Hruby
62d44dc9ef service utility fix
- of course 0 is a valid cpu
2010-07-22 09:57:14 +00:00
Ben Gras
81f6039a7f pkg_install: some uname normalisation. 2010-07-22 08:28:12 +00:00
Erik van der Kouwe
5bf75abb30 Parse LODS correctly in gas2ack 2010-07-21 14:47:01 +00:00
Ben Gras
63deb069bb uname: make uname -r and -v both print out full version info.
the world seems to expect this, and do this.
2010-07-21 12:47:48 +00:00
Ben Gras
eb1627049f pkg_install: record OS version for created packages. 2010-07-20 17:10:21 +00:00
Tomas Hruby
f248bffc9e service utility can par cpu option in system.conf
- does not have any effect, solely for debugging SMP

- backward compatible with older RS instance
2010-07-20 07:27:45 +00:00
Thomas Veerman
103dc9e80a Teach DESCRIBE and fsck about UNIX Domain Sockets. Contributed by Thomas Cort 2010-07-19 13:57:47 +00:00
Ben Gras
e37a6ef219 pkg_install: use /usr/sbin 2010-07-19 11:58:39 +00:00
Ben Gras
4234aa2c4a pkg_install path fixes. 2010-07-19 11:30:39 +00:00
Ben Gras
069f6ed574 pkg_install: correct PKG_LOG_DIR 2010-07-19 11:28:51 +00:00
Ben Gras
373df14150 pkg_install: these manpages were moved to man. 2010-07-19 10:47:11 +00:00
Ben Gras
6ce51040a2 patch: fixes to use plan a (too) by Gautam Tirumala. 2010-07-19 10:40:48 +00:00
Ben Gras
89df7fc91d MAKEDEV: make /dev/uds 2010-07-18 19:20:36 +00:00
Ben Gras
a46b8b84d4 aal - don't install yourself as ar; must invoke aal explicitly for ack archives.
To make switching to 'ar' for gcc/clang archives smoother in the future.
2010-07-16 15:40:04 +00:00
Ben Gras
7e8ed05df4 pkgsrc pkg_install tools, ported by Gautam Tirumala. 2010-07-16 00:15:25 +00:00
Ben Gras
09f03783ea man - longer default manpath for packages and llvm 2010-07-16 00:13:50 +00:00
Arun Thomas
e41c0b1a2d Replace paxtar with bsdtar 2010-07-13 21:35:58 +00:00
Cristiano Giuffrida
f8a8ea0a79 Dynamic configuration in system.conf for boot system services. 2010-07-13 21:11:44 +00:00
Ben Gras
ba759ef03e new command: bsdtar. 2010-07-13 19:28:09 +00:00
Ben Gras
9a14560daf netconf: recognize another rtl8169-compatible model 2010-07-13 18:44:51 +00:00
David van Moolenbroek
78a0260993 datasizes(1): gcc/clang support 2010-07-12 23:12:21 +00:00
Ben Gras
dd19f8cd07 elle: minor changes to compile with non-ack. 2010-07-12 20:09:03 +00:00
Ben Gras
4ff8fdba57 unstack: filter for llvm internal symbols. 2010-07-12 17:03:29 +00:00
Arun Thomas
4b30979086 Install(1): Allow -c option with -d
Contributed by Gautam Tirumala
2010-07-12 13:38:13 +00:00
Ben Gras
e698d818c6 commands: fixes for clang errors. 2010-07-06 12:10:23 +00:00
Cristiano Giuffrida
397575951e Cleanup dep file. 2010-07-05 21:04:31 +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
Kees van Reeuwijk
9fd2d72ce8 Llvm-inspired code cleanup. 2010-07-04 23:01:32 +00:00
Ben Gras
01fcee7d71 ash: make test/expr support 'file1 -ot file2' 2010-07-03 22:18:11 +00:00
David van Moolenbroek
4392e004f8 bring back mdb (Bug#501, reported by Roman Ignatov) 2010-07-03 10:25:19 +00:00
Erik van der Kouwe
37325bd7c5 Make service ABI backwards compatible again 2010-07-03 05:02:59 +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
Cristiano Giuffrida
03f64ac97a Self update support in RS. 2010-07-01 18:48:25 +00:00
Erik van der Kouwe
b5ae3961bb Fix unintended changes in r7614 2010-07-01 11:56:02 +00:00
Erik van der Kouwe
23284ee7bd User-space scheduling for system processes 2010-07-01 08:32:33 +00:00
Ben Gras
0ad4e16985 packman: use fetch instead of urlget 2010-07-01 00:10:07 +00:00
Ben Gras
47b58b2ebb fetch command 2010-07-01 00:06:41 +00:00
Cristiano Giuffrida
869a223d43 service clone command to clone system services on demand. 2010-06-28 21:38:29 +00:00
Ben Gras
f044bd10ef make ps and top use sanity checking kernel proc table retrieval 2010-06-28 11:05:34 +00:00
Ben Gras
b9f53528ee sep ${.OBJDIR} fixes by Antoine Leica. 2010-06-27 23:47:59 +00:00
Ben Gras
a3db59df6f sep ${.OBJDIR} fixes by Antoine Leica. 2010-06-27 23:46:23 +00:00
Ben Gras
831edb6614 no makewhatis. 2010-06-27 23:38:17 +00:00
Ben Gras
f1faf0d327 no more minix whoami 2010-06-27 14:07:43 +00:00
Ben Gras
f200f53a0b teach packman about new id (tracker item 489) 2010-06-26 23:10:24 +00:00
Ben Gras
d2dbe5b2ae install man.conf from commands/man 2010-06-26 11:20:47 +00:00
Ben Gras
a187743e75 netbsd man 2010-06-26 02:35:08 +00:00
Ben Gras
24cb4e60fc no more minix man 2010-06-26 02:33:49 +00:00
Ben Gras
3f22092d45 import mdocml. 2010-06-26 02:20:06 +00:00
Ben Gras
74c06cfc43 commands: less is more. 2010-06-26 01:41:19 +00:00
Ben Gras
8003edc357 don't call makewhatis 2010-06-26 01:10:04 +00:00
Ben Gras
6ebe0cdf82 no more minix more, *whatis 2010-06-26 01:08:31 +00:00
Arun Thomas
8e0253ac3d Make: Updates from NetBSD
Needed for pkgsrc
2010-06-25 23:25:48 +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
Ben Gras
373aecf3cd commands: id from netbsd; touch from bsd-utils port 2010-06-25 17:14:56 +00:00
Ben Gras
bfeecdbf62 no more minix touch, id 2010-06-25 17:13:57 +00:00
Erik van der Kouwe
6011237232 Extra sync to reduce damage of failing shutdowns 2010-06-24 14:56:03 +00:00
Erik van der Kouwe
921bacd244 Fix packman for new grep, which doesn't support \+ in BREs 2010-06-23 08:12:40 +00:00
Ben Gras
d78ae27865 advent: support ${.OBJDIR} != ${.CURDIR}, tracker item 486 2010-06-22 21:56:38 +00:00
Ben Gras
81399e75ad no WARNS 2010-06-22 21:24:50 +00:00
Ben Gras
6189062d12 cut fixes 2010-06-22 21:24:14 +00:00
Ben Gras
988b95f150 minix cut, printf from netbsd 2010-06-22 21:22:53 +00:00
Ben Gras
ff26d9a4ff original netbsd printf, cut 2010-06-22 21:20:54 +00:00
Ben Gras
2ac57865cb no more minix cut, printf 2010-06-22 21:19:42 +00:00
Ben Gras
d1c117ec80 easypack: don't invoke binsizes 2010-06-22 15:44:47 +00:00
Ben Gras
ee1134da9d fortune: install fortune.dat in /usr/lib 2010-06-22 15:29:35 +00:00
Ben Gras
ac6e455f16 . make sed understand \t
. install it in /bin, where minix rc expects it
2010-06-22 15:28:07 +00:00
Ben Gras
0c03a6a50f binpackage: don't call binsizes. 2010-06-22 14:21:34 +00:00
Ben Gras
c8372f31f8 make: don't link with -g as nm can't read the symbol table any more. 2010-06-22 14:00:42 +00:00
Ben Gras
556faf0d3a minix netbsd diff 2010-06-22 09:38:20 +00:00
Ben Gras
e68d8eb1ff original openbsd diff 2010-06-22 00:47:52 +00:00
Ben Gras
4c0a9db684 no more minix diff 2010-06-22 00:46:55 +00:00
Ben Gras
4269db3991 minix patch port 2010-06-22 00:41:23 +00:00
Ben Gras
f50f1bf7d6 original netbsd patch 2010-06-22 00:41:00 +00:00
Ben Gras
6657c0e58e no more minix patch 2010-06-22 00:39:57 +00:00
Ben Gras
582c0ed74d netbsd sed for minix 2010-06-22 00:36:21 +00:00
Ben Gras
707fbb966d original netbsd sed 2010-06-22 00:33:14 +00:00
Ben Gras
1b2189c205 no more minix sed. 2010-06-22 00:32:21 +00:00
Ben Gras
cedc0404e1 force gcc to look in ../../../include before /usr/local/include 2010-06-20 12:32:41 +00:00
Ben Gras
137495002d grep: unsigned chars to fix gcc warnings. 2010-06-20 12:31:55 +00:00
Ben Gras
28663f45d6 fixes for minix grep 2010-06-20 11:55:19 +00:00
Ben Gras
bb830fc0d3 original openbsd grep (freegrep) 2010-06-20 11:54:40 +00:00
Ben Gras
f19304bf22 oops, that was the minx grep port; undo previous commit. 2010-06-20 11:54:03 +00:00
Ben Gras
1d14529942 original openbsd freegrep 2010-06-20 11:49:38 +00:00
Ben Gras
5b40436aaf remove minix greps. 2010-06-20 11:48:00 +00:00
Erik van der Kouwe
330374be9e Fix unlikely race (or crawl?) condition in case going from alarm to ioctl takes more than 1 second 2010-06-20 07:30:53 +00:00
Erik van der Kouwe
90285c46a2 Packman also recognizes package names with no or partial version number 2010-06-20 06:39:23 +00:00
Arun Thomas
042b5bf606 We have sys/cdefs.h now, so remove hacks. 2010-06-17 15:14:57 +00:00
Erik van der Kouwe
d59c49aecb Work around vfs/inet/eth race by avoiding non-blocking ioctl in dhcpd 2010-06-17 12:14:33 +00:00
David van Moolenbroek
0964b221e7 ash: expr -e support 2010-06-16 09:33:11 +00:00
Ben Gras
423db7d35a binpackage: let's use the find -prune option to skip hierarchies. 2010-06-14 20:31:52 +00:00
Arun Thomas
f0a158d8c1 More cleanup to remove MM and FS references 2010-06-10 14:04:46 +00:00
Erik van der Kouwe
65764218f7 Remove dependency of release.sh on bc, du option to give overhead totals 2010-06-10 11:14:04 +00:00
Ben Gras
c1b4cc24e4 ash: getmode in global includes now 2010-06-09 12:58:03 +00:00
Ben Gras
61db813ff6 find: fix warnings + error 2010-06-09 12:53:51 +00:00
Ben Gras
6704520919 commands: import of netbsd find 2010-06-09 12:27:36 +00:00
Ben Gras
fcd2a802a8 commands/find: original netbsd find 2010-06-09 12:19:38 +00:00
Ben Gras
13d50be356 commands, man: remove minix find 2010-06-09 12:17:42 +00:00
Ben Gras
6faa2a636c ash: remove setmode() declaration from shell.h, now in library 2010-06-09 12:11:56 +00:00
Arun Thomas
4c10a31440 Remove legacy MM, FS, and FS_PROC_NR macros 2010-06-08 13:58:01 +00:00
Thomas Veerman
4b6b1bc47a Fix typo 2010-06-07 13:46:05 +00:00
Erik van der Kouwe
e7e6508854 Enter package names in packman 2010-06-05 13:25:41 +00:00
Erik van der Kouwe
1bb7c4d78a Create link for lstat 2010-06-04 04:44:09 +00:00
Gianluca Guida
0a42d36ac6 Fix ftp client's passive mode.
Before the ioctl the code zeroed the wrong variable.
2010-06-02 21:12:54 +00:00
Erik van der Kouwe
fc29251444 setup: default root partition size is 64MB, reinstall keeps old root size 2010-06-02 17:07:10 +00:00
Erik van der Kouwe
8bca982581 Remove those annoying $Id and $Revision tags 2010-05-31 20:00:08 +00:00
Erik van der Kouwe
fc7438181b Avoid use of C++ reserved word class in headers (reported by Aki Goto, tracker item 375) 2010-05-27 09:18:49 +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
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
8630337c80 Fix permissions for halt, reboot, and shutdown 2010-05-13 12:05:53 +00:00
Arun Thomas
5706670029 Convert boot/ and commands/ over to bsdmake 2010-05-12 16:28:54 +00:00
Tomas Hruby
6e25ad8b0a Use of all NIL_* defines converted to NULL 2010-05-10 13:26:00 +00:00
Ben Gras
75b2153b9a awk Makefile: make yacc less chatty to stderr. 2010-05-04 09:23:31 +00:00
Kees van Reeuwijk
a2a0562a9c Make mdb compile in other places than just /usr/src. 2010-04-29 20:05:01 +00:00
Ben Gras
a131085a5b cd boot workaround for bioses that didn't want to boot >4 image sectors.
boot is a normal binary with a.out again. use 'cdbootblock,' a CDBOOT
variant of bootblock, both from bootblock.s, as the first boot image
that then loads boot, exactly like the bootblock loads boot when booting
from harddisk. the sector numbers (2048 byte iso sectors) are patched in
by writeisofs, like installboot does for bootblock. bootblock unchanged.
2010-04-26 22:07:21 +00:00
David van Moolenbroek
ee3b5fb5ea fix make(1) error output 2010-04-23 12:04:48 +00:00
Kees van Reeuwijk
74177b215d Also remove awk.old from makefile. 2010-04-22 14:18:35 +00:00
Kees van Reeuwijk
55129194a3 Remove obsolete implementation of awk. 2010-04-22 13:41:35 +00:00
Kees van Reeuwijk
87a9a2ecef More accurate make rule. 2010-04-21 14:41:20 +00:00
Kees van Reeuwijk
86a23c1fbd Remove U16_t and most other similar types. Rewrite functions to ansi-style
declaration if necessary.
2010-04-21 11:05:22 +00:00
Kees van Reeuwijk
b412fb7ad5 Code cleanup: remove unused #include, variables and code, 2010-04-15 18:49:36 +00:00
Kees van Reeuwijk
fa3adedf63 Remove some duplicate declarations in headers.
Explicitly declare some functions as returning void.
2010-04-13 15:22:38 +00:00
Kees van Reeuwijk
bc314bda91 Remove the types Dev_t, _mnx_Gui, _mnx_Uid, and similar.
Use ANSI-style function declarations where necessary.
2010-04-13 10:58:41 +00:00
Ben Gras
c1bfcc9119 port of netbsd's tr 2010-04-08 15:08:31 +00:00
Ben Gras
1164052eea netbsd's original tr/extern.h as tr.h 2010-04-08 15:06:43 +00:00
Ben Gras
836a0957fb original netbsd's tr(1) 2010-04-08 15:04:57 +00:00
Ben Gras
c28e35bd3e no minix tr 2010-04-08 15:04:05 +00:00
Kees van Reeuwijk
94a81c840a Removed unused variables, added const where possible. 2010-04-07 11:25:51 +00:00
Kees van Reeuwijk
98493805fd Lots of const correctness. 2010-03-27 14:31:00 +00:00
Tomas Hruby
a6957b7847 Fixed prototype in cat 2010-03-23 13:36:16 +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
Kees van Reeuwijk
c33102ea6b Miscellaneous code cleanup. 2010-03-22 20:43:06 +00:00
Erik van der Kouwe
b42c66ed10 this patch adds access to the debug breakpoints to
the kernel. They are not used atm, but having them in trunk allows them
to be easily used when needed. To set a breakpoint that triggers when
the variable foo is written to (the most common use case), one calls:

breakpoint_set(vir2phys((vir_bytes) &foo), 0,
  BREAKPOINT_FLAG_MODE_GLOBAL |
  BREAKPOINT_FLAG_RW_WRITE |
  BREAKPOINT_FLAG_LEN_4);

It can later be disabled using:

breakpoint_set(vir2phys((vir_bytes) &foo), 0,
  BREAKPOINT_FLAG_MODE_OFF);

There are some limitations:

- There are at most four breakpoints (hardware limit); the index of the
  breakpoint (0-3) is specified as the second parameter of
  breakpoint_set.

- The breakpoint exception in the kernel is not handled and causes a
  panic; it would be reasonably easy to change this by inspecing DR6,
  printing a message, disabling the breakpoint and continuing. However,
  in my experience even just a panic can be very useful.

- Breakpoints can be set only in the part of the address space that is
  in every page table. It is useful for the kernel, but to use this for
  user processes would require saving and restoring the debug registers
  as part of the context switch. Although the CPU provides support for
  local breakpoints (I implemened this as BREAKPOINT_FLAG_LOCAL) they
  only work if task switching is used.
2010-03-19 19:15:20 +00:00
Ben Gras
e595328986 remove 3 awk files - don't have generated files in svn. 2010-03-18 14:15:48 +00:00
Kees van Reeuwijk
4683d6b713 Let awk.old install its awk as /usr/bin/awk.old.
Add one-true-awk as the new awk that installs to /usr/bin/awk.
2010-03-17 16:16:52 +00:00
Kees van Reeuwijk
365495b530 Moved current awk sources to awk.old. 2010-03-17 16:11:48 +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