Commit graph

1226 commits

Author SHA1 Message Date
David van Moolenbroek
1dcfbcd173 Remove support for call profiling
The entire infrastructure relied on an ACK feature, and as such, it
has been broken for years now, with no easy way to repair it.

Change-Id: I783c2a21276967af115a642199f31fef0f14a572
2014-09-30 12:39:03 +00:00
David van Moolenbroek
ad80a203db Move clock_time into libsys
Change-Id: Ibc5034617e6f6581de7c4a166ca075b3c357fa82
2014-09-18 12:46:26 +00:00
David van Moolenbroek
81db4f2cff libpuffs: use libfsdriver
Change-Id: I26651578066e1098dc275a9cfbe5710870a13811
2014-09-18 12:46:25 +00:00
David van Moolenbroek
89c9de7d09 Add libfsdriver: a library to drive file systems
This library provides new abstractions for the upper (VFS) side of
file system services, and should be used for all file system service
implementations from now on.  It provides the following functionality:

  - a function call table abstraction, hiding the details of the
    VFS-FS protocol with simple parameters;
  - a (currently limited) number of per-function steps required for
    all file system implementations, such as copying in and out path
    names and result buffers;
  - a default implementation for multicomponent path lookups, such
    that the file system merely has to implement resolution of single
    components at a time;
  - an abstraction for copying data from and to the file system, which
    allows transparent intraprocess copying as required for the lookup
    implementation;
  - a set of functions to simplify getdents implementations.

The message loop provided by the library is currently for use by
single-threaded file system implementations only.  Multithreaded file
system services may use the more low-level message processing
functionality.

Protocol-level optimizations such as including names in protocol
messages may be hidden entirely in this library.  In addition, in the
future, the lookup implementation may be replaced by a single-
component lookup VFS/FS protocol request as part of a VFS name cache
implementation; this, too, can be hidden entirely in this library.

Change-Id: Ib34f0d0e021dfa3426ce8826efcf3eaa94d3ef3e
2014-09-18 12:46:23 +00:00
Lionel Sambuc
31b808b8fa Drop minix-malloc & friends
Known limitations:
 - comment for now testisofs, as iso9660fs is known to be broken.

Benefits:
 - near 3x speed improvement on C++ code compilation, bringing down
   make build to from 44min down to 21min.

 - Allows for X applications to work properly, which should be available
   in near-term future through pkgsrc for 3.3.0.

Change-Id: I8f4179a7ea925ed381642add32cfd8c5822217e4
2014-09-08 17:30:18 +02:00
Ben Gras
bad58c9c51 merge libminlib with libc
Change-Id: I79cc4ea90c378a1da3dac16487b53034953827a7
2014-08-28 18:49:19 +02:00
Ben Gras
c2808d8b07 remove libcompat_minix as library
. get rid of includes in libcompat_minix:
	  . move configfile.h to minix/include/
	  . all others are unneeded as they point to other files
	. merge the .c files with libc

Change-Id: I5e840c66fb9bc484f377926aa9d66473bbd16259
2014-08-28 18:49:13 +02:00
Lionel Sambuc
433d6423c3 New sources layout
Change-Id: Ic716f336b7071063997cf5b4dae6d50e0b4631e9
2014-07-31 16:00:30 +02:00
Lionel Sambuc
6082b2b4de Message type for COMMON_REQ_GCOV_DATA.
Change-Id: I97d31059990e33411a685d5d8191c728a02e7d0f
2014-07-28 17:06:28 +02:00
Lionel Sambuc
43d985050c Use one message type for all BDEV request.
There are missing field assignements, and/or messsages being re-used
without re-initializations, which allows for fields to be implicitly
forwarded.

This prevents me from creating per request message types, as I can't
spend currently any more time debugging this issue.
2014-07-28 17:06:28 +02:00
Lionel Sambuc
0522c9d0c1 Message type for BDEV_REPLY.
Change-Id: I48ca5a4f77cc9e924e8aee2fe6c32e0da9b42560
2014-07-28 17:06:27 +02:00
Lionel Sambuc
8644f25feb Message type for SYS_PROFBUF.
Change-Id: I10c1e878b0e3ff9bfc52709cc87dace632fa3e4f
2014-07-28 17:06:27 +02:00
Lionel Sambuc
64fb3a184c Message type for SYS_CPROF and PM_CPROF.
Change-Id: I2dc3d9d95c2a2b4c5fdbceae359b0be2bbdf9fb5
2014-07-28 17:06:26 +02:00
Lionel Sambuc
8ad307eeed Message type for SYS_SPROF and PM_SPROF.
Change-Id: I598f88af47737be0172236fa9ad24058b50d3942
2014-07-28 17:06:26 +02:00
Lionel Sambuc
9ea21ea158 Message type for SYS_DIAGCTL.
Change-Id: Icdaa84847f8c75f5af6612dda3326f800166e0d7
2014-07-28 17:06:25 +02:00
Lionel Sambuc
93b1819dac Message type for SIGS_SIGNAL_RECEIVED.
Change-Id: I5c13ff06e0203a98d4087829308d03020f302542
2014-07-28 17:06:25 +02:00
Lionel Sambuc
f45c6b86cb Message type for SYS_READBIOS.
Change-Id: Id19f658f5eb5f350e3e19f9ce3f8ae80aea23c51
2014-07-28 17:06:25 +02:00
Ben Gras
5d0e31dbb3 custom message req & reply types for ds 2014-07-28 17:06:24 +02:00
Ben Gras
c727357664 custom types for RS_INIT, RS_UPDATE, and others 2014-07-28 17:06:23 +02:00
Ben Gras
9961d3d3e5 custom message types for safecopy calls 2014-07-28 17:06:23 +02:00
Ben Gras
c24f718bb4 custom message type for VM_UNMAP_PHYS 2014-07-28 17:06:23 +02:00
Ben Gras
6af75e6660 custom message type for vm_map_phys 2014-07-28 17:06:22 +02:00
Ben Gras
8c2ac80abd custom message type for VM_BRK 2014-07-28 17:06:22 +02:00
Ben Gras
7cb7ac5b42 use custom mmap struct type directly 2014-07-28 17:06:21 +02:00
Ben Gras
3610b3b1a6 custom message type for SYS_DEVIO 2014-07-28 17:06:21 +02:00
Ben Gras
fce93dad32 custom message type for SEMOP 2014-07-28 17:06:21 +02:00
Ben Gras
c476408dea custom message type for SHMCTL, SEMCTL, SEMGET 2014-07-28 17:06:20 +02:00
Ben Gras
e57d31d331 custom messages for SHMAT, SHMDT 2014-07-28 17:06:20 +02:00
Ben Gras
8627d33a42 custom message for SHMGET 2014-07-28 17:06:19 +02:00
Ben Gras
0881781e60 custom message for vm_query_exit 2014-07-28 17:06:19 +02:00
Ben Gras
93422a1f4c custom message for vm_update 2014-07-28 17:06:19 +02:00
Ben Gras
9e2efbd73d custom message type for VM_INFO 2014-07-28 17:06:18 +02:00
Ben Gras
3c88d20cb5 custom message type for VM_QUERY_EXIT 2014-07-28 17:06:18 +02:00
Ben Gras
01a50f57d8 custom message type for VM_GETREF 2014-07-28 17:06:17 +02:00
Ben Gras
28b5360df7 custom message type for VM_GETPHYS 2014-07-28 17:06:17 +02:00
Ben Gras
324fc1f604 custom message type for VM_SHM_UNMAP 2014-07-28 17:06:17 +02:00
Ben Gras
e3a0e6c3c3 custom message type for VM_REMAP, VM_REMAP_RO 2014-07-28 17:06:16 +02:00
Cristiano Giuffrida
d9cd49c332 sef: Add fault injection (and EDFI) support. 2014-07-28 17:06:06 +02:00
Ben Gras
33c4e94990 Empty libgcc_s.
This library is built just so that something is present in
/usr/lib/libgcc_s.so.1.  This is needed for dynamically programs built
with gcc, which might reference that library at runtime (i.e. all pkgsrc
packages). The necessary symbols are in libc however, so when built on a
clang-only system, so an empty library is a working stopgap.
2014-07-28 17:06:03 +02:00
Lionel Sambuc
4684ddb6aa LLVM Minix changes
- import libcxx
 - reduce targets to the one when compiled as a tools

Change-Id: Iabb8427f80ff8e89463559a28bcb8b4f2bdbc496
2014-07-28 17:05:59 +02:00
David van Moolenbroek
69cba46141 libc: make ttyname(3) use devname(3)
There was an off-by-one in the old MINIX-specific implementation,
which caused ttyname(3) to fail at random. Since we now have a working
devname(3), there is no need for MINIX-specific code anymore here.

Change-Id: I27d8b6c4f66c84f383156ed494b740d071af02a7
2014-07-28 17:05:53 +02:00
Lionel Sambuc
b41d3ab74e Message type for CDEV_{READ,WRITE,IOCTL}
Change-Id: Ia89c98410d3775fe3b6621576eadd186d60ec894
2014-07-28 17:05:52 +02:00
Lionel Sambuc
ca7231fbef Message type for CDEV_SELECT
Change-Id: I74e67ef2206102fe4686efb35d1aaf42db5cd236
2014-07-28 17:05:52 +02:00
Lionel Sambuc
3e6f0b3e98 Message type for CDEV_CANCEL
Change-Id: I4a58f314e140c043392503c079e3d9b994c50b2f
2014-07-28 17:05:52 +02:00
Lionel Sambuc
e7f5493031 Message type for CDEV_{OPEN,CLOSE}
Change-Id: Ie58511aef2da968129a405a4ad44d0330a2adcb2
2014-07-28 17:05:52 +02:00
Lionel Sambuc
0edd2b252a Message type for CDEV_SEL{1,2}
Change-Id: I4857363a62eeede2e137f3354566699b08cb235d
2014-07-28 17:05:52 +02:00
Lionel Sambuc
79b594a2e9 Message type for CDEV_REPLY
Change-Id: I555bf35a43c59e7d7b6180b625021b3c13bbeaa3
2014-07-28 17:05:52 +02:00
Lionel Sambuc
4091fdf5c4 Message type for TTY_FKEY_CONTROL
Change-Id: Ic7a8901089f14f65e840bd88b087b733c3e3bdee
2014-07-28 17:05:51 +02:00
Wojciech Zajac
bfff07c918 Memory related fixes for DDE/USBD
DDEKit has proper thread termination now. No more memory leaks on usb stick removal.

MUSB fixes for IRQ and memory mapping.
2014-07-28 17:05:51 +02:00
Lionel Sambuc
5277fbe9f6 Message type for SYS_CLEAR
Change-Id: I3d894edcf672d180aee38fd84bd06339bdf7fa9b
2014-07-28 17:05:49 +02:00