#
9bd8d1d5 |
|
03-Apr-2019 |
Reto Achermann <reto.achermann@inf.ethz.ch> |
replacing umlaute and fixing address in headers Haldeneggsteig -> Universitaetsstrasse Signed-off-by: Reto Achermann <reto.achermann@inf.ethz.ch>
|
#
dde2ba50 |
|
19-Jun-2017 |
Adam Turowski <adam.turowski@inf.ethz.ch> |
libc: removing newlib, adding BSD libc posixcompat: moving gettimeofday to libc harness: adding a simple math test lwip, lwip2: moving includes to /include, compiling with BSD headers Signed-off-by: Adam Turowski <adam.turowski@inf.ethz.ch>
|
#
b7520580 |
|
03-Feb-2016 |
Reto Achermann <reto.achermann@inf.ethz.ch> |
libposixcompat: adding pthread_attr_destroy implementation Signed-off-by: Reto Achermann <reto.achermann@inf.ethz.ch>
|
#
9a2cf795 |
|
05-Jan-2016 |
Reto Achermann <reto.achermann@inf.ethz.ch> |
posixcompat: check for NULL in pthread_create to avoid null-dereference Signed-off-by: Reto Achermann <reto.achermann@inf.ethz.ch>
|
#
61c534e0 |
|
23-Sep-2015 |
Gerd Zellweger <mail@gerdzellweger.com> |
Fix pthread attrs after merge with current master. Signed-off-by: Gerd Zellweger <mail@gerdzellweger.com>
|
#
4b606687 |
|
08-May-2015 |
Jana Giceva <gicevaj@inf.ethz.ch> |
Added support for a basic pthread barrier Signed-off-by: Jana Giceva <gicevaj@inf.ethz.ch> Signed-off-by: Gerd Zellweger <mail@gerdzellweger.com>
|
#
8e5cef08 |
|
18-May-2015 |
Gerd Zellweger <mail@gerdzellweger.com> |
[T102] Implement CPU_SET and pthread_attr_setaffinity_np. Closes T102. Signed-off-by: Gerd Zellweger <mail@gerdzellweger.com> Conflicts: lib/newlib/newlib/libc/include/sys/types.h lib/posixcompat/pthreads.c usr/tests/posixcompat/Tupfile.lua
|
#
878547ec |
|
04-Jun-2015 |
Simon Gerber <simon.gerber@inf.ethz.ch> |
Merge of upstream arrakis code. This merge includes the following: * VT-d (IOMMU) support * VMX (Intel CPU virtualization) support * Parallel hake build * MegaRAID driver * Subways fast packet forwarding application * Identify physical address of VNodes * libstorage (VSIC & VSA support) * POSIX support: poll, uname, nanosleep, fsync, poll, pthread attributes, syslog, wait3, ... * TenaciousD (persistent data structures: log & queue) * Hack to skip boot RAM when it's too large * Arranet: Support for raw IP sockets, interrupts * Removal of colorful debug output * MegaRAID blockdevfs support * Arrakis compile wrappers for Autoconf * Patches to binutils & GCC to build Arrakis C++ applications Signed-off-by: Simon Gerber <simon.gerber@inf.ethz.ch> Signed-off-by: Simon Peter <simpeter@cs.washington.edu> Signed-off-by: Oleg Godunok <ogodunok@gmail.com> Signed-off-by: Antoine Kaufmann <antoinek@cs.washington.edu> Signed-off-by: Jialin Li <lijl@cs.washington.edu> Signed-off-by: Dalton Black <dalton.m.black@gmail.com> Signed-off-by: Taesoo Kim <taesoo@uw.edu>
|
#
aee00751 |
|
17-Dec-2014 |
Zaheer Chothia <zchothia@inf.ethz.ch> |
posixcompat: make pthread_once a wrapper over the version in libbarrelfish Summary: Both the pthread and native versions now share a single common implementation (added in D9). The new approach should also be faster since it avoids a full mutex and instead only has to consult the per-thread epoch on the common path. I should note, I have not run any benchmarks to confirm this and may be wrong. Test Plan: Compiles but have not validated more thoroughly. Differential Revision: https://code.systems.ethz.ch/D12 Signed-off-by: Zaheer Chothia <zchothia@inf.ethz.ch>
|
#
ecedc6b6 |
|
20-Apr-2015 |
Zaheer Chothia <zchothia@inf.ethz.ch> |
posixcompat: fix incorrect destruction of pthread_cond The object being freed was the wrapper, which belongs to the caller and may even have static lifetime (.data section), whereas now it correctly relases the inner block of memory which was allocated in `pthread_cont_init`. (The unrelated change in mmap add a missing comma when debug is enabled.) Signed-off-by: Zaheer Chothia <zchothia@inf.ethz.ch>
|
#
792d0d8a |
|
24-Feb-2015 |
Simon Gerber <simon.gerber@inf.ethz.ch> |
T65: implement proper x-core join. Signed-off-by: Simon Gerber <simon.gerber@inf.ethz.ch>
|
#
8f1a278a |
|
23-Feb-2015 |
Simon Gerber <simon.gerber@inf.ethz.ch> |
T65: properly implement x-core thread creation. Signed-off-by: Simon Gerber <simon.gerber@inf.ethz.ch>
|
#
90b055f4 |
|
06-Feb-2015 |
Simon Gerber <simon.gerber@inf.ethz.ch> |
posixcompat: properly handle PTHREAD_MUTEX_RECURSIVE and BF thread id assignment. Signed-off-by: Simon Gerber <simon.gerber@inf.ethz.ch>
|
#
749b9d1c |
|
06-Feb-2015 |
Simon Gerber <simon.gerber@inf.ethz.ch> |
posixcompat: fixed pthread_mutex_lock to work with nested calls. Signed-off-by: Simon Gerber <simon.gerber@inf.ethz.ch>
|
#
256af7f3 |
|
15-Dec-2014 |
Zaheer Chothia <zchothia@inf.ethz.ch> |
posixcompat: fixed pthread_key destructor calls The deletion path was previously missing completely and POSIX requires the implementation to set the key pointer to NULL before calling the destructor function. What is still missing is the repeated destructor calls if values become non-NULL (i.e. PTHREAD_DESTRUCTOR_ITERATIONS). Further, this module is missing a number of corner cases and NULL checks. It may be better to just import the corresponding code from elsewhere: http://git.musl-libc.org/cgit/musl/tree/src/thread/pthread_key_create.c https://github.com/freebsd/freebsd/blob/master/lib/libthr/thread/thr_spec.c Test Plan: Rust uses these in the test suite to collect output (by overriding stdout/stderr). That would segfault but now runs through fine. Differential Revision: https://code.systems.ethz.ch/D10
|
#
395dec60 |
|
15-Dec-2014 |
Zaheer Chothia <zchothia@inf.ethz.ch> |
posixcompat: fix NULL pointer dereference in pthread_join
|
#
b4ccacb6 |
|
11-Aug-2014 |
Reto Achermann <acreto@student.ethz.ch> |
libcxx: replaced printf directives with portable form (PRI..) activated DWARF backend and made it compile. Added some new functions to the pthreads library.
|
#
94996936 |
|
21-Aug-2014 |
Stefan Kaestle <stefan.kaestle@inf.ethz.ch> |
Patches 4878a9a through 6b8a570
|
#
705d12dd |
|
19-Jun-2014 |
Stefan Kaestle <stefan.kaestle@inf.ethz.ch> |
Fix: make lib posixcompat compile in release mode
|
#
de906f69 |
|
28-Feb-2014 |
Simon Peter <simpeter@cs.washington.edu> |
The Arrakis backport to Barrelfish. Here are the macro changes: * Made lwIP an optional network stack * Moved lwIP headers out of the general include directory * Parallel hake * CPU-virtualized ("arrakis") applications * libarrakis is a new libOS that uses CPU features directly * arrakismon is a new monitor for Arrakis apps * QEMU Multiboot support instead of GRUB (enables KVM) * e10k virtual function driver * Software virtual->physical mapping (substitutes IOMMU) * To be replaced soon with an Intel IOMMU driver * Better GDB and stack tracing support * New POSIX support * pthreads, inet_*(), usleep(), syslimits.h, sigaction(), mman.h, * resource.h, sendmsg(), recvmsg(), mkfifo(), syslog.h, sysexits.h, * fcntl(), getegid(), getgid(), pipe(), rlimits * epoll support * Separate waitset for interrupts * Thread TLS key and ID support * Moved PCRE headers to include/, where they usually are * Intel performance counters support * Handle boot-time RAM overflow (for machines with >=64GB RAM) * Arranet network stack * Fix for build of lib/barrelfish/arch/x86_64/dispatch.c without -O2 * New comandline options to pci daemon: * maxvfs=x, x is number of virtual functions to create for each * device supporting it * skb_bridge_program=x, x is SKB bridge programming script to use * bridge_bios is a script that uses the BIOS pre-set values, like Linux * Correctly build machine-optimized newlib parts * Library versions of e1000 and e10k drivers * Support for virtualization in e10k driver * e10k datacenter control plane daemon * Modified hellotest to be both a Barrelfish and an Arrakis application I've decided not to include the lwIP 1.4.1 code, as the port is not finished and who wants to use lwIP anyway with the Arrakis network stack and mTCP being released soon. If you want this, let me know (it's hugely superior to lwIP 1.3.1). I've made the code backwards-compatible with Barrelfish. The default should do what Barrelfish does. One can specify commandline options to the PCI daemon and e10k driver to configure I/O virtualization and the optional arrakismon allows loading CPU-virtualized "arrakis" programs. There are more pending changes, such as support for hardware rate limiting and weighted round robin packet scheduling, but I'd like these to go in first, before I push the rest.
|