Commit Graph

282 Commits

Author SHA1 Message Date
97c4c2bccb qa: add test for opendir/readdir/closedir in newlib 2017-08-22 01:41:15 +02:00
63b227be55 elf64ldseg: do not pprint warnings on wrong header as it could simply be an rc script 2017-08-21 23:59:40 +02:00
f7c3a41b11 libposix: drafted getdents 2017-08-21 01:05:40 +02:00
3916b222b5 libposix: fix typo 2017-08-21 00:52:57 +02:00
4490973b6d newlib: several additions (posix and unix plus getcwd, getlogin, getlogin_r, getpass, pread and pwrite) 2017-08-21 00:20:25 +02:00
ea6b68588c libposix: implemented getcwd, getlogin, getlogin_r, getpass, pread and pwrite 2017-08-21 00:20:12 +02:00
5d56943666 newlib: first try to enable posix (BROKEN) 2017-08-18 01:46:06 +02:00
6dd00801dc libposix: introduce pause() (still to be integrated in newlib) 2017-08-18 00:50:07 +02:00
f3753df931 newlib: import upstream changes 2017-08-17 23:20:50 +02:00
6ce619a2e0 libc: sleep's argument must be unsigned 2017-08-16 00:58:21 +02:00
ef6aa99b74 qa: libc: slow note handlers cant't break sleep 2017-08-16 00:37:39 +02:00
b9483decb0 libmemdraw: fix typo 2017-08-15 12:10:52 +02:00
e0e45fba5a kernel: removed unreachable code in fault (CID: 155701)
If the user process does not have a segment holding the required addr
the fault function return early.
2017-08-15 01:07:48 +02:00
55a8a84d8d kernel: fix potential overflow in updatecpu (CID 155825) 2017-08-15 00:54:15 +02:00
d796c73e89 qa: fix broken.runner 2017-08-15 00:53:04 +02:00
0b8a66f877 kernel: umem: fix img_get macro
The img_get macro used to subtract 1 to the argument provided before
computing the porinter to the image. I can't remember why it did so.

However the expression was wrong.

Coverity found the issue:

	Operands don't affect result (CONSTANT_EXPRESSION_RESULT)
	CID:	155616, 155606, 155598, 155597, 155596, 155587,
		155580, 155578, 155577, 155576, 155568, 155566

Simply removing the subtraction seems the obvious fix.
2017-08-15 00:38:09 +02:00
b056df2da6 kernel: simplify sysnotify; should fix CID 156151 (Wrong sizeof argument) 2017-08-14 19:52:22 +02:00
17c9087965 kernel: fix typo in sysexec (CID 156141) 2017-08-14 19:34:34 +02:00
180da90a06 kernel: fix args crossing page boundaries in sysexec
Should also fix CID 155615 (Operands don't affect result)
2017-08-14 19:25:54 +02:00
df8bc2ce43 qa: increase rlockt1 timeout 2017-08-14 18:46:23 +02:00
21b5682a43 kernel: syspread: avoid negative offsets in dir reads
Should also fix CID 160109: Dereference after null check
2017-08-14 18:40:25 +02:00
da588d69ec kernel: fpprocfork: fix CID 174315 (Missing break in switch) 2017-08-14 15:22:51 +02:00
8464d1a277 libmemdraw: fix CID 154389 (uninitialized variable) 2017-08-14 13:00:30 +02:00
93c784fa3f libstdio: fix CID 174305 and CID 174302 (uninitialized variables) 2017-08-14 12:47:03 +02:00
033744b5be kernel: awake: fix CID 174310: Out-of-bounds read 2017-08-13 21:59:03 +02:00
5f22403176 libstdio: fix uninitialized variable CID 174334 2017-08-13 21:50:44 +02:00
34e6b0adc2 kernel: boot: use "bootconsole" instead of "console" env var 2017-08-13 15:24:18 +02:00
c5466152f1 Revert "Revert "kernel: import sdahci from 9front""
This reverts commit ecc2125b28.
2017-08-13 12:47:56 +02:00
1b4b6d1574 qa: reenable newlib's tests 2017-08-13 12:33:18 +02:00
d573d0a39c qa: disable newlib's test 202-signals 2017-08-13 00:06:04 +02:00
99124f1578 qa: disable newlib's test 201-signals
For some reason it hangs on travis-ci.
2017-08-12 23:55:39 +02:00
e57ff30b63 qa: release cpu on newlib/201-signals and newlib/202-signals 2017-08-12 23:33:38 +02:00
93dfad6b0b kernel: print proc info on addbroken 2017-08-12 23:32:35 +02:00
ecc2125b28 Revert "kernel: import sdahci from 9front"
This reverts commit d9975caeb0.
2017-08-12 15:18:02 +02:00
6a4ef30523 devtools: coverity-scan: do nothing if not in $COVERITY_SCAN_BRANCH 2017-08-12 00:27:57 +02:00
aef20dca20 kernel: fix.c: fix inverted CHS bit 2017-08-11 06:12:44 +02:00
330b7cc217 awk: don't get into a infinite loop with eof while in string (thanks BurnZeZ) 2017-08-11 05:51:10 +02:00
d9975caeb0 kernel: import sdahci from 9front 2017-08-11 05:26:53 +02:00
c08d07bcde libc: fix libthread by fixing RENDEZVOUS in qlock.c 2017-08-11 05:26:53 +02:00
6d242b3aa0 hjfs: import improvements from 9front 2017-08-11 05:09:34 +02:00
fa0a121f17 cmds.json: remove mc.c 2017-08-11 04:19:59 +02:00
c933abd811 devtools: update 2017-08-11 03:36:19 +02:00
34950f084e cmds: remove old ms tool 2017-08-11 03:18:32 +02:00
a0f7e71d41 rc: do not mess up argv 2017-08-11 03:18:32 +02:00
1c4a04cd30 qa: various fix to tests 2017-08-11 03:18:32 +02:00
93dde48355 kernel: deep refactoring and cleanup
This large commit address several issues
- removed 386 directory: Jehanne is 64bit only
- simplified kernel options management
- rewritten boot process
- ported memory related stuff from 9front's 9/pc64
- removed devacpi
- removed old code
- deep refactor of awake syscall
- removed MCACHE support for mount
- fix libc's setjmp/longjmp
2017-08-11 03:18:32 +02:00
1bc08b7631 kernel: rendezvous(~0, ...) unconditionally blocks
This commit introduce a special rendezvous point at (void*)~0 that
cannot be reached by any process, since it's not added to the
rendezvous group.

This turns the rendezvous syscall to a cheap way to block until
either a note or a wakeup from awake(2) occurs.

This new feature is used in libc's sleep: the test qa/kern/fork_chain
has shown that using a stack address as rendezvous point is not safe enougth
for sleep, since two different process forked from the same function can
call sleep with the same base pointer. This lead the wakeup variable in
jehanne_sleep to have the same address on both process.

TODO add a test that show this behaviour in the old code.
2017-07-21 01:49:00 +02:00
c13d386ab5 libaml: import 9front's improvements 2017-07-21 01:34:34 +02:00
83e3161789 kernel: fix ancient bug in GDT initialization 2017-06-08 04:03:32 +02:00
2a38ee6ab6 qa: fix typo in test 2017-06-06 19:53:45 +02:00