Commit graph

1025 commits

Author SHA1 Message Date
David van Moolenbroek b477504754 ps(1): remove outdated comment 2011-11-11 11:37:44 +01:00
Ben Gras 3fbb50397c stopgap local fstab
. /etc/fstab.local to list user-defined filesystems
	. /usr/etc/rc reads it and runs type-specific fsck if necessary
	. also type-specific mount
2011-11-07 20:37:12 +01:00
Ben Gras 0c3983b25a update/fix manpage support
. add bsd-style MLINKS to minix man set, restoring aliases
	  (e.g. man add64 -> int64)
	. update daily cron script to run makewhatis and restore makewhatis
	  in man Makefile (makedb), restores functionality of man -k
	. netbsd imports of man, mdocml, makewhatis, libutil, apropos
	. update man.conf with manpage locations, restoring man [-s] <section>
	. throws out some obsolete manpages
2011-09-28 15:24:15 +00:00
Ben Gras bc0a39238e worldstone benchmark script
. also imports seq(1) to help it
	. add -C option to time(1) to print tsc difference
	. increase col width for ministat for tsc numbers
2011-09-24 14:49:55 +00:00
Ben Gras 86b5fa5102 get rid of leftover _DIRENT_NAME_LEN=61 2011-09-01 16:27:28 +00:00
Vivek Prakash 12d9a08f0d import NetBSD mkdir
. add symlink from old location /usr/bin/mkdir for
	  for compatability
2011-08-25 14:35:12 +00:00
Ben Gras f984dbba70 increase system-wide filename limit to 255
. move mfs-specific struct, constants to mfs/, so
	  mfs-specific, on-disk format structs and consts are
	  fully isolated from generic structs and functions
	. removes de and readfs utils
2011-08-17 16:00:01 +00:00
Ben Gras 164789226c install: correct error message 2011-08-16 20:40:52 +00:00
Thomas Cort 940bbe18b6 mkdir: allow 'mkdir -p' with trailing '/'
Let's suppose that /usr/tmp exists and one wants /usr/tmp/a/b
If one runs "mkdir -p /usr/tmp/a/b/" (the '/' at the end is
important), then a "File exists" error comes up. Example:

$ rm -rf /usr/tmp/a
$ mkdir -p /usr/tmp/a/b/
/usr/tmp/a/b/: File exists

This breaks gcc47 installation when C++ is enabled, and this
isn't the behaviour of mkdir on NetBSD nor Linix.

This patch fixes the above issue by dropping the trailing '/'.
2011-08-15 09:14:36 +00:00
Ben Gras d477a9ed82 vm/ipc: only report signals when it matters to ipc
. ipc wants to know about processes that get
	  signals, so that it can break blocking ipc operations
	. doing it for every single signal is wasteful
	  and causes the annoying 'no slot for signals' message
	. this fix tells vm on a per-process basis it (ipc)
	  wants to be notified, i.e. only when it does any ipc calls
	. move ipc config to separate config file while we're at it
2011-08-05 20:52:32 +00:00
Ben Gras 3977443581 terminfo fixes
. add TERM=minix to builtin terms
	. regenerate compiled-in compile_terms.c
	. fix terminfo db path
	. update termcap command
	. By Antoine Leca
2011-08-04 16:50:57 +00:00
Ben Gras 989934b37c rename -lutil to -lminixutil
. in preparation for netbsd -lutil
2011-08-01 14:32:14 +02:00
Ben Gras f614d0015a mk: single mk fragment for new libc
. allow commands to use it by setting NEED_NBSDLIBC
	. also add mkfiles to clean and cleandepend so they
	  don't break on missing new mkfiles
2011-07-27 18:23:36 +02:00
Arun Thomas 3ca141ab81 Remove legacy swapfs utility 2011-07-27 17:16:17 +02:00
Thomas Veerman ece4c9d565 Add DEV_CLONE_A dev type 2011-07-27 12:23:03 +00:00
Antoine Leca b67a7fca8c ash: don't rely on libc signal names
The bsd signal names are out-of-order compared to the minix ones.

I found out (the hard way) that the (MINIX-descending) ordered list of
signals in <sys/signal.h> does not match the (BSD-descending) ordered
list of signals in usr/src/lib/libc/nbsd_libc/gen/sig{name,list}.c

Beyond being unfortunate, it prevents the trap command of ash to handle
correctly a named signal; a funny test case is
        #!/bin/sh
        trap 'echo trapping signal BUS' BUS
        trap 'echo trapping signal 10 (USR1)' 10
        trap # show me what is currently trapped

As a quick workaround, I disabled the use of the libc-provided
sys_sig{name,list} arrays for ash, and reverted to the hand-made array
which is used by the less capable MINIX libc. It allowed me to use
pkgsrc.
2011-07-26 18:59:52 +02:00
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