Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Browse files

fix thread scheduler queue alignment bug that was breaking (some) C a…

…pps with a cmpxchg16b GPF. pointer arithmetic: not even once.
  • Loading branch information...
commit 12fe63e5c1f8d9fad42031d874ce48400aa41094 1 parent e3afe51
@wolfwood wolfwood authored
Showing with 1 addition and 1 deletion.
  1. +1 −1  libos/libdeepmajik/threadscheduler.d
View
2  libos/libdeepmajik/threadscheduler.d
@@ -473,7 +473,7 @@ align(1) struct XombThread {
//XXX: this are dumb. should go away when 16 byte struct alignment works properly
void initialize(){
- queuePtr = (cast(ulong)(&schedQueueStorage) % 16) != 0 ? (&schedQueueStorage + 8) : (&schedQueueStorage);
+ queuePtr = (cast(ulong)(&schedQueueStorage) % 16) != 0 ? cast(Queue*)(cast(ulong)(&schedQueueStorage) + 8) : (&schedQueueStorage);
}
private:
Please sign in to comment.
Something went wrong with that request. Please try again.