Commit Graph

462 Commits

Author SHA1 Message Date
Jeremy Soller 4b2c15f0b9 Remove scheme by ID 2019-07-18 20:57:51 -06:00
Jeremy Soller 5af7f71a99 Fix warning 2019-07-18 20:57:41 -06:00
Jeremy Soller 5a42b6dd76 Add notify_signal method to WaitCondition to simulate being woken by a signal 2019-07-18 19:48:54 -06:00
Jeremy Soller 76e0ed2e37 Make all wait_map members public 2019-07-18 19:48:27 -06:00
Jeremy Soller bfc559a8a7 Merge branch 'master' of https://gitlab.redox-os.org/redox-os/kernel 2019-07-14 11:17:52 -06:00
Jeremy Soller 6e8729bac2 Disable RTC NMI and do not wait for an entire update cycle before reading time 2019-07-14 11:17:45 -06:00
jD91mZM2 6fbb4fbae1 Ptrace memory reading and floating point registers support 2019-07-07 17:07:04 +00:00
Jeremy Soller 788526a3b3 Bare-bones ptracing functionality
Since even a very basic ptrace can be nice to have, I thought I would split
the, perhaps rather big, ptrace project up in multiple PRs to make as few
changes as necessary in each. This PR contains the initial registry modifying
bits and only a very basic security measure. Letting this out to the community
should be good for spotting bugs and maybe getting some hype ;)
2019-07-02 07:38:26 -06:00
Jeremy Soller 45ea634798 Revert "Merge branch 'ptrace' into 'master'"
This reverts merge request !103
2019-07-02 11:56:11 +00:00
jD91mZM2 effe02bd45 Remove change I am faaairly certain I did NOT add :O
I'm guessing it's some issue after a rebase or something...
2019-07-01 22:50:19 +00:00
Jeremy Soller 42f977e7da Disable debug messages 2019-06-27 16:29:28 -06:00
Jeremy Soller 144ac70b12 Allow access to other thread's TLS with pointers 2019-06-23 20:21:22 -06:00
jD91mZM2 fe705d9b63 Switch to 2018 edition
Most of this was generated by the absolutely extraordinary `cargo fix`
subcommand. There were still 2 errors and a few warnings to patch up,
but compared to the normal 600+ errors, I'd say the fixer did a damn
good job! I'm also amazed that I could still start the VM after this,
I half expected some kinds of runtime failure...
2019-06-21 12:12:01 +02:00
Jeremy Soller 1be77c2ab4 Store sigmask 2019-06-02 18:45:06 -06:00
Jeremy Soller fcd8ce7e1b Fix event logic for pipes 2019-04-28 13:32:24 -06:00
Jeremy Soller afa3f38310 Allow seek in root scheme directory listings 2019-04-27 08:13:20 -06:00
Jeremy Soller afab96fa06 Do not allow unreachable patterns (often a logic issue) 2019-04-27 08:10:49 -06:00
Jeremy Soller eecc9a442c Fix missing name override option when calling fexec_kernel 2019-04-15 21:01:19 -06:00
Jeremy Soller 126009f83c Keep process name when using interpreter 2019-04-15 21:00:42 -06:00
Jeremy Soller b66fef0479 Copy TCB if it was not initialized using kernel-allocated TLS 2019-04-15 20:47:27 -06:00
Jeremy Soller 6da3ab283e Clone grants 2019-04-15 20:47:03 -06:00
Jeremy Soller dc198cef6e Keep track of leaked grants and allow for cloning of grants 2019-04-15 20:42:41 -06:00
Jeremy Soller d432f7ce8c Add debugging for mprotect 2019-04-14 21:32:31 -06:00
Jeremy Soller 3a0671d20f Fix dropping grants without unmapping if they have no file descriptor (such as those from anonymous maps) 2019-04-14 19:23:23 -06:00
Jeremy Soller 339d68ac8d Remove debugging messages 2019-04-14 19:12:13 -06:00
Jeremy Soller 434e799f2a Place TCB at thread-specific location to avoid overlapping TCBs 2019-04-14 19:05:25 -06:00
Jeremy Soller 21e46b6a55 More cleanup of TLS mapping 2019-04-14 14:50:29 -06:00
Jeremy Soller 9762431a33 Cleanup TLS mapping 2019-04-13 22:00:27 -06:00
Jeremy Soller 8120131897 Add interpreter capability 2019-04-13 21:59:46 -06:00
Jeremy Soller dc28023be1 Remove unnecessary clone 2019-04-13 21:58:34 -06:00
Jeremy Soller 58f9e5a801 0.1.54 - Add support for cache disable 2019-04-08 17:57:25 -06:00
Jeremy Soller f042bd5d07 Update for new rust 2019-04-07 10:57:33 -06:00
Jeremy Soller f36506613b Update funmap support 2019-04-06 20:13:55 -06:00
Noam Kleinburd 129d4e3ae5 Lock resources before checking if we need to clean them.
See the comments deleted by this commit for more details as to how
the race condition could effect the system.
2019-04-01 17:01:29 +03:00
Jeremy Soller e5cf6efa64 Support specification of stack with clone system call and CLONE_STACK flag 2019-03-31 14:35:45 -06:00
Jeremy Soller 9ccaed7103 Remove bochs breakpoint in kernel 2019-03-31 08:36:55 -06:00
Jeremy Soller d2095d8d0f Add in-memory logging, retrievable from sys:log 2019-03-17 09:31:34 -06:00
Jeremy Soller f7c9712977 Fix warning in irq scheme 2019-03-17 09:31:03 -06:00
Jeremy Soller e2a6233c12 New fevent functionality to prevent missing events 2019-03-13 13:57:07 -06:00
Jeremy Soller 483ee05ebc Fix unused import 2019-03-12 20:48:28 -06:00
Jeremy Soller b80f38b039 More debugging output options 2019-03-11 19:50:50 -06:00
Jeremy Soller 445b8ad96d Merge branch 'rustc-demangle' into 'master'
Use rustc-demangle in the stack traces

See merge request redox-os/kernel!100
2019-02-22 02:35:13 +00:00
Tibor Nagy 2ec775905a Use rustc-demangle in the stack traces 2019-02-14 15:54:17 +01:00
Jeremy Soller 6042cdb0a2 Remove unused import 2019-02-02 14:04:53 -07:00
Jeremy Soller b4575711c7 Fix logic error when cloning file descriptor in user scheme fmap 2019-02-02 08:11:07 -07:00
Jeremy Soller ca511b98f3 Add code to shut down QEMU with it's default ACPI settings, run cli hlt in loop 2019-02-01 20:12:06 -07:00
Jeremy Soller 504e93d11b Store file descriptor for mapped files until they are unmapped 2019-01-28 19:27:20 -07:00
Jeremy Soller 78d07d41cb FileDescriptor is now must_use 2019-01-28 19:26:50 -07:00
Jeremy Soller f6e2d44383 Add syscall setup to kstart_ap 2019-01-20 19:41:18 -07:00
Jeremy Soller 36820c0346 Add somewhat magical code for syscall instruction 2019-01-20 19:35:52 -07:00