[RFC 9/9] Add Popcorn Message Layer and socket support

2020-04-29 Thread Javier Malave
msg_layer/socket.c b/drivers/msg_layer/socket.c new file mode 100644 index 0..80a172c6f --- /dev/null +++ b/drivers/msg_layer/socket.c @@ -0,0 +1,710 @@ +// SPDX-License-Identifier: GPL-2.0, 3-clause BSD +/* + * /drivers/msg_layer/socket.c + * + * Messaging transport layer over TCP/IP + * + *

[RFC 0/9] Popcorn Linux Distributed Thread Execution

2020-04-29 Thread Javier Malave
This patch set adds the Popcorn Distributed Thread Execution support to the kernel. It is based off of Linux 5.2 commit 72a20ce. We are looking for feedback on design and implementation from the community. Background == Popcorn Linux is a collaborative work by the Software and Systems

[RFC 2/9] Add x86 specifc files for Popcorn

2020-04-29 Thread Javier Malave
Popcorn Linux is a Linux kernel-based software stack that enables applications to execute, with a shared source base, on distributed hosts. This Popcorn patch adds x86_64 functionality only. Future iterations of Popcorn will support heterogeneous architectures. --- arch/x86/Kconfig

[RFC 7/9] Virtual Memory Address Server for Distributed Thread Execution

2020-04-29 Thread Javier Malave
-level coherency protocol. + * + * This work was an extension of David Katz MS Thesis, + * rewritten by Sang-Hoon to support multithread environment. + * + * author, Javier Malave, Rebecca Shapiro, Andrew Hughes, + * Narf Industries 2020 (modifications for upstream RFC) + * author Sang-Hoon Kim

[RFC 3/9] Temporary revert L1TF mitigation for Popcorn

2020-04-29 Thread Javier Malave
Popcorn Linux is a Linux kernel-based software stack that enables applications to execute, with a shared source base, on distributed hosts. To ensure correct functionality across hosts and focus feedback during the RFC process we have reverted L1TF mitigations for x86 mitigations temporarily.

[RFC 8/9] Page Server for Distributed Thread Execution

2020-04-29 Thread Javier Malave
+ * + * Original file developed by SSRG at Virginia Tech. + * + * Fault handling statistics. + * + * author, Javier Malave, Rebecca Shapiro, Andrew Hughes, + * Narf Industries 2020 (modifications for upstream RFC) + */ + +#include +#include + +#include "fh_action.h" + +/* + * Current fault han

[RFC 6/9] Process Server for Popcorn Distributed Thread Execution

2020-04-29 Thread Javier Malave
ol valid_ts, struct timespec64 *ts, + u32 __user *uaddr2, u32 val2, u32 val3); + +struct remote_context; +void free_remote_context(struct remote_context *rc); + +#endif /* __POPCORN_PROCESS_SERVER_H */ diff --git a/kernel/popcorn/process_server.c b/kernel/popcorn/proces

[RFC 4/9] Popcorn system call additions

2020-04-29 Thread Javier Malave
The Popcorn system calls are a core component of Popcorn Linux. All system calls have been added to kernel/sched/core.c The main system call is popcorn_migrate. User applications may invoke this system call to trigger a migration from their origin node to a remote node; and vice-versa. The

[RFC 1/9] Core Popcorn Changes

2020-04-29 Thread Javier Malave
Popcorn Linux is a Linux kernel-based software stack that enables applications to execute, with a shared source base, on distributed hosts. To achieve its goal of distributed multi-threaded applications, Popcorn introduces certain core modifications to the Linux kernel. These include the

[RFC 5/9] Popcorn Utility

2020-04-29 Thread Javier Malave
opcorn/bundle.c + * + * Popcorn node init + * + * Original file developed by SSRG at Virginia Tech. + * + * author, Javier Malave, Rebecca Shapiro, Andrew Hughes, + * Narf Industries 2020 (modifications for upstream RFC) + */ + +#include +#include +#include +#include +#include +#include +#