Commit Graph

383 Commits

Author SHA1 Message Date
Ali Mashtizadeh
1fdc2fd933 Ensure we clear bits we don't want set in cr0 on APs 2015-03-03 16:12:37 -08:00
Ali Mashtizadeh
33af1ed42b Use NMIs to halt all cores when entering the debugger and resume all cores on exit. 2015-02-28 20:18:38 -08:00
Ali Mashtizadeh
4a77cebdb4 Fix tests build 2015-02-27 16:06:12 -08:00
Ali Mashtizadeh
2809d233b5 Added a simple crti/n/1 to fix clang compat issues 2015-02-27 15:57:07 -08:00
Ali Mashtizadeh
6a7fd630ce Remove the -N flag that was used when linking the kernel 2015-02-24 16:58:08 -08:00
Ali Mashtizadeh
a357b2f034 Enable saving/restoring XMMs so that Clang works 2015-02-24 16:57:30 -08:00
Ali Mashtizadeh
ce7e8ec194 Assert that spinlocks are locked and unlocked on the same processor 2015-02-16 15:41:32 -08:00
Ali Mashtizadeh
e2afc076a5 Basic CrossCall implementation 2015-02-16 15:19:38 -08:00
Ali Mashtizadeh
8825b399c4 Improve MP debugging 2015-02-16 13:59:24 -08:00
Ali Mashtizadeh
a69bfec37f Brute force try to boot each processor. 2015-02-16 13:52:03 -08:00
Ali Mashtizadeh
a053a30129 Making more functions static 2015-02-16 13:32:14 -08:00
Ali Mashtizadeh
0d335ebe20 Cleanup making internal functions static 2015-02-16 13:23:21 -08:00
Ali Mashtizadeh
2bb2090c93 Remove already fixed comment 2015-02-16 13:11:55 -08:00
Ali Mashtizadeh
473d00e669 Cleanup warnings from all the previous MP changes 2015-02-16 13:04:40 -08:00
Ali Mashtizadeh
e1959cf3f2 Ignore empty lines in kernel debugger 2015-02-16 13:04:22 -08:00
Ali Mashtizadeh
4e4490872e Add missing cleanup code in Process_Destroy 2015-02-16 13:03:57 -08:00
Ali Mashtizadeh
220328dd91 Add MP enhancements for the kernel debugger 2015-02-15 20:17:00 -08:00
Ali Mashtizadeh
d5535ded23 Make spinlock stack per-CPU 2015-02-15 20:05:24 -08:00
Ali Mashtizadeh
4ce2388ef2 Basic multiprocessing seems to be working, but some locking issues may remain 2015-02-15 19:15:18 -08:00
Ali Mashtizadeh
b8c8b1fc7d Improvements for SMP 2015-02-15 18:50:43 -08:00
Ali Mashtizadeh
4808b746f5 Basic MP bootup works 2015-02-15 17:00:55 -08:00
Ali Mashtizadeh
658ab8571b Fix test so arp recv works 2015-02-08 15:08:26 -08:00
Ali Mashtizadeh
b34f8ed0fd Print backtrace when application faults 2015-02-06 17:08:44 -08:00
Ali Mashtizadeh
62d8a63dbb Basic ethernet driver and connected to lwiptest 2015-02-04 14:52:17 -08:00
Ali Mashtizadeh
a9a5ffb08a Add lwip test to bootdisk image 2015-02-03 15:19:16 -08:00
Ali Mashtizadeh
f067ec6252 Improvements to pthread condition variable code 2015-02-03 14:26:51 -08:00
Ali Mashtizadeh
f0d5e791ba LWIP builds and a simple test app to verify linking. 2015-02-03 14:07:22 -08:00
Ali Mashtizadeh
251654f2c7 More improvements to support lwip 2015-02-03 14:06:17 -08:00
Ali Mashtizadeh
348a7acc15 Moving some definitions from time.h into sys/time.h 2015-02-02 15:29:12 -08:00
Ali Mashtizadeh
78afc5e47d Header file improvements to enable compiling lwip 2015-02-02 15:10:15 -08:00
Ali Mashtizadeh
d1b8872a48 Import lwip 1.4.1 2015-02-02 14:36:00 -08:00
Ali Mashtizadeh
75d2c41f1f fix pthreadtest contended mutex test case 2015-02-02 13:16:37 -08:00
Ali Mashtizadeh
41ba001828 pthread condition variable tests 2015-02-02 13:13:59 -08:00
Ali Mashtizadeh
73064ffdf6 pthread mutex tests 2015-02-02 13:04:43 -08:00
Ali Mashtizadeh
1ceea3c677 Various bugfixes to Thread_Wait and the pthread library 2015-02-02 11:55:34 -08:00
Ali Mashtizadeh
9460089573 pthread tests and assert header bugfix 2015-02-01 23:56:45 -08:00
Ali Mashtizadeh
87e3cde79b pthread condition variable implementation 2015-02-01 19:21:16 -08:00
Ali Mashtizadeh
d729ee868d Fixing compiler warnings 2015-01-30 23:02:18 -08:00
Ali Mashtizadeh
3e85210410 pthread init and implementing pthread_self 2015-01-30 20:47:32 -08:00
Ali Mashtizadeh
bdb6a08704 CoreMutex cleanup and add to build 2015-01-30 20:44:01 -08:00
Ali Mashtizadeh
8b45f56bf5 Fix mmap and expose gettid system call 2015-01-30 20:43:28 -08:00
Ali Mashtizadeh
cfee2dd1e8 Merge branch 'master' of bitbucket.org:mashtizadeh/castor 2015-01-30 18:41:59 -08:00
Ali Mashtizadeh
2d3d325066 user-level mutex implementation for use by other parts of libc 2015-01-30 18:41:46 -08:00
Ali Mashtizadeh
2fdcc4b557 pthread_mutex implementation 2015-01-30 18:40:25 -08:00
Ali Mashtizadeh
515afe9656 Prevent the build from copying hidden files 2015-01-29 15:24:55 -08:00
Ali Mashtizadeh
9251a3b7cc ethinject and plumbing for transmitting raw network packets. 2015-01-28 11:35:47 -08:00
Ali Mashtizadeh
289412b585 Improving pthread support 2015-01-27 15:01:19 -08:00
Ali Mashtizadeh
dd0a1d5612 Simple ethdump tool based on OSNICRecv 2015-01-27 10:35:20 -08:00
Ali Mashtizadeh
8f24dbe6d0 Plumbing for raw packet reading 2015-01-27 10:34:44 -08:00
Ali Mashtizadeh
d005029577 Fix sprintf and snprintf to always null terminate 2015-01-27 10:33:44 -08:00