From: Hajime Tazaki <thehajime@gmail.com>
To: linux-um@lists.infradead.org, jdike@addtoit.com, richard@nod.at,
anton.ivanov@cambridgegreys.com
Cc: thehajime@gmail.com, tavi.purdila@gmail.com, retrage01@gmail.com,
linux-kernel-library@freelists.org, linux-arch@vger.kernel.org
Subject: [RFC v8 16/20] um: host: add utilities functions
Date: Wed, 20 Jan 2021 11:27:21 +0900 [thread overview]
Message-ID: <8416d4b2f5c5510bfa3162cf04bae181c13d3f6e.1611103406.git.thehajime@gmail.com> (raw)
In-Reply-To: <cover.1611103406.git.thehajime@gmail.com>
Add basic utility functions for getting a string from a kernel error
code and a fprintf like function that uses the host print
operation. The latter is useful for informing the user about errors
that occur in the host library.
Signed-off-by: Hajime Tazaki <thehajime@gmail.com>
---
tools/um/include/lkl.h | 23 +++++
tools/um/lib/Build | 3 +
tools/um/lib/utils.c | 205 +++++++++++++++++++++++++++++++++++++++++
3 files changed, 231 insertions(+)
create mode 100644 tools/um/lib/Build
create mode 100644 tools/um/lib/utils.c
diff --git a/tools/um/include/lkl.h b/tools/um/include/lkl.h
index 2417ed5ccf71..97da2d11502f 100644
--- a/tools/um/include/lkl.h
+++ b/tools/um/include/lkl.h
@@ -27,6 +27,29 @@ extern "C" {
#undef class
#endif
+/**
+ * lkl_printf - print a message via the host print operation
+ *
+ * @fmt: printf like format string
+ */
+int lkl_printf(const char *fmt, ...);
+
+/**
+ * lkl_strerror - returns a string describing the given error code
+ *
+ * @err - error code
+ * @returns - string for the given error code
+ */
+const char *lkl_strerror(int err);
+
+/**
+ * lkl_perror - prints a string describing the given error code
+ *
+ * @msg - prefix for the error message
+ * @err - error code
+ */
+void lkl_perror(char *msg, int err);
+
#if __LKL__BITS_PER_LONG == 64
#define lkl_sys_fstatat lkl_sys_newfstatat
#define lkl_sys_fstat lkl_sys_newfstat
diff --git a/tools/um/lib/Build b/tools/um/lib/Build
new file mode 100644
index 000000000000..77acd6f55e76
--- /dev/null
+++ b/tools/um/lib/Build
@@ -0,0 +1,3 @@
+include $(objtree)/include/config/auto.conf
+
+liblinux-$(CONFIG_UMMODE_LIB) += utils.o
diff --git a/tools/um/lib/utils.c b/tools/um/lib/utils.c
new file mode 100644
index 000000000000..3b38e1a95124
--- /dev/null
+++ b/tools/um/lib/utils.c
@@ -0,0 +1,205 @@
+// SPDX-License-Identifier: GPL-2.0
+#include <stdarg.h>
+#include <stdio.h>
+#include <string.h>
+#include <lkl_host.h>
+
+static const char * const lkl_err_strings[] = {
+ [0] = "Success",
+ [LKL_EPERM] = "Operation not permitted",
+ [LKL_ENOENT] = "No such file or directory",
+ [LKL_ESRCH] = "No such process",
+ [LKL_EINTR] = "Interrupted system call",
+ [LKL_EIO] = "I/O error",
+ [LKL_ENXIO] = "No such device or address",
+ [LKL_E2BIG] = "Argument list too long",
+ [LKL_ENOEXEC] = "Exec format error",
+ [LKL_EBADF] = "Bad file number",
+ [LKL_ECHILD] = "No child processes",
+ [LKL_EAGAIN] = "Try again",
+ [LKL_ENOMEM] = "Out of memory",
+ [LKL_EACCES] = "Permission denied",
+ [LKL_EFAULT] = "Bad address",
+ [LKL_ENOTBLK] = "Block device required",
+ [LKL_EBUSY] = "Device or resource busy",
+ [LKL_EEXIST] = "File exists",
+ [LKL_EXDEV] = "Cross-device link",
+ [LKL_ENODEV] = "No such device",
+ [LKL_ENOTDIR] = "Not a directory",
+ [LKL_EISDIR] = "Is a directory",
+ [LKL_EINVAL] = "Invalid argument",
+ [LKL_ENFILE] = "File table overflow",
+ [LKL_EMFILE] = "Too many open files",
+ [LKL_ENOTTY] = "Not a typewriter",
+ [LKL_ETXTBSY] = "Text file busy",
+ [LKL_EFBIG] = "File too large",
+ [LKL_ENOSPC] = "No space left on device",
+ [LKL_ESPIPE] = "Illegal seek",
+ [LKL_EROFS] = "Read-only file system",
+ [LKL_EMLINK] = "Too many links",
+ [LKL_EPIPE] = "Broken pipe",
+ [LKL_EDOM] = "Math argument out of domain of func",
+ [LKL_ERANGE] = "Math result not representable",
+ [LKL_EDEADLK] = "Resource deadlock would occur",
+ [LKL_ENAMETOOLONG] = "File name too long",
+ [LKL_ENOLCK] = "No record locks available",
+ [LKL_ENOSYS] = "Invalid system call number",
+ [LKL_ENOTEMPTY] = "Directory not empty",
+ [LKL_ELOOP] = "Too many symbolic links encountered",
+ [LKL_ENOMSG] = "No message of desired type",
+ [LKL_EIDRM] = "Identifier removed",
+ [LKL_ECHRNG] = "Channel number out of range",
+ [LKL_EL2NSYNC] = "Level 2 not synchronized",
+ [LKL_EL3HLT] = "Level 3 halted",
+ [LKL_EL3RST] = "Level 3 reset",
+ [LKL_ELNRNG] = "Link number out of range",
+ [LKL_EUNATCH] = "Protocol driver not attached",
+ [LKL_ENOCSI] = "No CSI structure available",
+ [LKL_EL2HLT] = "Level 2 halted",
+ [LKL_EBADE] = "Invalid exchange",
+ [LKL_EBADR] = "Invalid request descriptor",
+ [LKL_EXFULL] = "Exchange full",
+ [LKL_ENOANO] = "No anode",
+ [LKL_EBADRQC] = "Invalid request code",
+ [LKL_EBADSLT] = "Invalid slot",
+ [LKL_EBFONT] = "Bad font file format",
+ [LKL_ENOSTR] = "Device not a stream",
+ [LKL_ENODATA] = "No data available",
+ [LKL_ETIME] = "Timer expired",
+ [LKL_ENOSR] = "Out of streams resources",
+ [LKL_ENONET] = "Machine is not on the network",
+ [LKL_ENOPKG] = "Package not installed",
+ [LKL_EREMOTE] = "Object is remote",
+ [LKL_ENOLINK] = "Link has been severed",
+ [LKL_EADV] = "Advertise error",
+ [LKL_ESRMNT] = "Srmount error",
+ [LKL_ECOMM] = "Communication error on send",
+ [LKL_EPROTO] = "Protocol error",
+ [LKL_EMULTIHOP] = "Multihop attempted",
+ [LKL_EDOTDOT] = "RFS specific error",
+ [LKL_EBADMSG] = "Not a data message",
+ [LKL_EOVERFLOW] = "Value too large for defined data type",
+ [LKL_ENOTUNIQ] = "Name not unique on network",
+ [LKL_EBADFD] = "File descriptor in bad state",
+ [LKL_EREMCHG] = "Remote address changed",
+ [LKL_ELIBACC] = "Can not access a needed shared library",
+ [LKL_ELIBBAD] = "Accessing a corrupted shared library",
+ [LKL_ELIBSCN] = ".lib section in a.out corrupted",
+ [LKL_ELIBMAX] = "Attempting to link in too many shared libraries",
+ [LKL_ELIBEXEC] = "Cannot exec a shared library directly",
+ [LKL_EILSEQ] = "Illegal byte sequence",
+ [LKL_ERESTART] = "Interrupted system call should be restarted",
+ [LKL_ESTRPIPE] = "Streams pipe error",
+ [LKL_EUSERS] = "Too many users",
+ [LKL_ENOTSOCK] = "Socket operation on non-socket",
+ [LKL_EDESTADDRREQ] = "Destination address required",
+ [LKL_EMSGSIZE] = "Message too long",
+ [LKL_EPROTOTYPE] = "Protocol wrong type for socket",
+ [LKL_ENOPROTOOPT] = "Protocol not available",
+ [LKL_EPROTONOSUPPORT] = "Protocol not supported",
+ [LKL_ESOCKTNOSUPPORT] = "Socket type not supported",
+ [LKL_EOPNOTSUPP] = "Operation not supported on transport endpoint",
+ [LKL_EPFNOSUPPORT] = "Protocol family not supported",
+ [LKL_EAFNOSUPPORT] = "Address family not supported by protocol",
+ [LKL_EADDRINUSE] = "Address already in use",
+ [LKL_EADDRNOTAVAIL] = "Cannot assign requested address",
+ [LKL_ENETDOWN] = "Network is down",
+ [LKL_ENETUNREACH] = "Network is unreachable",
+ [LKL_ENETRESET] = "Network dropped connection because of reset",
+ [LKL_ECONNABORTED] = "Software caused connection abort",
+ [LKL_ECONNRESET] = "Connection reset by peer",
+ [LKL_ENOBUFS] = "No buffer space available",
+ [LKL_EISCONN] = "Transport endpoint is already connected",
+ [LKL_ENOTCONN] = "Transport endpoint is not connected",
+ [LKL_ESHUTDOWN] = "Cannot send after transport endpoint shutdown",
+ [LKL_ETOOMANYREFS] = "Too many references: cannot splice",
+ [LKL_ETIMEDOUT] = "Connection timed out",
+ [LKL_ECONNREFUSED] = "Connection refused",
+ [LKL_EHOSTDOWN] = "Host is down",
+ [LKL_EHOSTUNREACH] = "No route to host",
+ [LKL_EALREADY] = "Operation already in progress",
+ [LKL_EINPROGRESS] = "Operation now in progress",
+ [LKL_ESTALE] = "Stale file handle",
+ [LKL_EUCLEAN] = "Structure needs cleaning",
+ [LKL_ENOTNAM] = "Not a XENIX named type file",
+ [LKL_ENAVAIL] = "No XENIX semaphores available",
+ [LKL_EISNAM] = "Is a named type file",
+ [LKL_EREMOTEIO] = "Remote I/O error",
+ [LKL_EDQUOT] = "Quota exceeded",
+ [LKL_ENOMEDIUM] = "No medium found",
+ [LKL_EMEDIUMTYPE] = "Wrong medium type",
+ [LKL_ECANCELED] = "Operation Canceled",
+ [LKL_ENOKEY] = "Required key not available",
+ [LKL_EKEYEXPIRED] = "Key has expired",
+ [LKL_EKEYREVOKED] = "Key has been revoked",
+ [LKL_EKEYREJECTED] = "Key was rejected by service",
+ [LKL_EOWNERDEAD] = "Owner died",
+ [LKL_ENOTRECOVERABLE] = "State not recoverable",
+ [LKL_ERFKILL] = "Operation not possible due to RF-kill",
+ [LKL_EHWPOISON] = "Memory page has hardware error",
+};
+
+const char *lkl_strerror(int err)
+{
+ if (err < 0)
+ err = -err;
+
+ if ((size_t)err >= sizeof(lkl_err_strings) / sizeof(const char *))
+ return "Bad error code";
+
+ return lkl_err_strings[err];
+}
+
+void lkl_perror(char *msg, int err)
+{
+ const char *err_msg = lkl_strerror(err);
+ /* We need to use 'real' printf because lkl_print can
+ * be turned off when debugging is off.
+ */
+ lkl_printf("%s: %s\n", msg, err_msg);
+}
+
+static int lkl_vprintf(const char *fmt, va_list args)
+{
+ int n;
+ char *buffer;
+ va_list copy;
+
+ va_copy(copy, args);
+ n = vsnprintf(NULL, 0, fmt, copy);
+ va_end(copy);
+
+ buffer = lkl_mem_alloc(n + 1);
+ if (!buffer)
+ return (-1);
+
+ vsnprintf(buffer, n + 1, fmt, args);
+
+ lkl_print(buffer, n);
+ lkl_mem_free(buffer);
+
+ return n;
+}
+
+int lkl_printf(const char *fmt, ...)
+{
+ int n;
+ va_list args;
+
+ va_start(args, fmt);
+ n = lkl_vprintf(fmt, args);
+ va_end(args);
+
+ return n;
+}
+
+void lkl_bug(const char *fmt, ...)
+{
+ va_list args;
+
+ va_start(args, fmt);
+ lkl_vprintf(fmt, args);
+ va_end(args);
+
+ lkl_panic();
+}
--
2.21.0 (Apple Git-122.2)
next prev parent reply other threads:[~2021-01-20 3:32 UTC|newest]
Thread overview: 251+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-02-05 7:30 [RFC v3 00/26] Unifying LKL into UML Hajime Tazaki
2020-02-05 7:30 ` [RFC v3 01/26] asm-generic: atomic64: allow using generic atomic64 on 64bit platforms Hajime Tazaki
2020-02-05 9:34 ` Peter Zijlstra
2020-02-05 12:24 ` Octavian Purdila
2020-02-05 12:29 ` Anton Ivanov
2020-02-05 12:49 ` Peter Zijlstra
2020-02-05 14:00 ` Octavian Purdila
2020-02-05 17:13 ` Peter Zijlstra
2020-02-07 12:32 ` Octavian Purdila
[not found] ` <cover.1580882335.git.thehajime-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2020-02-05 7:30 ` [RFC v3 02/26] arch: add __SYSCALL_DEFINE_ARCH Hajime Tazaki
2020-02-05 7:30 ` Hajime Tazaki
2020-02-05 7:30 ` [RFC v3 03/26] um lkl: architecture skeleton for Linux kernel library Hajime Tazaki
2020-02-05 7:30 ` [RFC v3 04/26] um lkl: host interface Hajime Tazaki
2020-02-05 7:30 ` [RFC v3 05/26] um lkl: memory handling Hajime Tazaki
2020-02-05 7:30 ` [RFC v3 06/26] um lkl: kernel threads support Hajime Tazaki
2020-02-05 7:30 ` [RFC v3 07/26] um lkl: interrupt support Hajime Tazaki
2020-02-05 10:47 ` Anton Ivanov
2020-02-05 14:46 ` Hajime Tazaki
2020-02-05 7:30 ` [RFC v3 08/26] um lkl: system call interface and application API Hajime Tazaki
2020-02-05 7:30 ` [RFC v3 09/26] um lkl: timers, time and delay support Hajime Tazaki
2020-02-05 7:30 ` [RFC v3 10/26] um lkl: basic kernel console support Hajime Tazaki
2020-02-05 7:30 ` [RFC v3 11/26] um lkl: initialization and cleanup Hajime Tazaki
2020-02-05 7:30 ` [RFC v3 12/26] um lkl: plug in the build system Hajime Tazaki
2020-02-05 7:30 ` [RFC v3 13/26] lkl tools: skeleton for host side library Hajime Tazaki
2020-02-05 7:30 ` [RFC v3 14/26] lkl tools: host lib: add utilities functions Hajime Tazaki
2020-02-05 7:30 ` [RFC v3 15/26] lkl tools: host lib: filesystem helpers Hajime Tazaki
2020-02-05 7:30 ` [RFC v3 16/26] lkl tools: host lib: networking helpers Hajime Tazaki
2020-02-05 7:30 ` [RFC v3 17/26] lkl tools: host lib: posix host operations Hajime Tazaki
2020-02-05 7:30 ` [RFC v3 18/26] lkl tools: add test programs Hajime Tazaki
2020-02-05 7:30 ` [RFC v3 19/26] lkl tools: cptofs that reads/writes to/from a filesystem image Hajime Tazaki
2020-02-05 7:30 ` [RFC v3 20/26] lkl tools: fs2tar that converts a filesystem image to tar Hajime Tazaki
2020-02-05 7:30 ` [RFC v3 21/26] lkl tools: add lklfuse Hajime Tazaki
2020-02-05 7:30 ` [RFC v3 22/26] um lkl: add documentation Hajime Tazaki
2020-02-05 7:30 ` [RFC v3 23/26] um lkl: add CI scripts to conduct regression tests Hajime Tazaki
2020-02-05 7:30 ` [RFC v3 24/26] um lkl: add UML network driver for lkl Hajime Tazaki
2020-02-05 7:30 ` [RFC v3 25/26] um lkl: add UML block device driver (ubd) " Hajime Tazaki
2020-02-05 7:30 ` [RFC v3 26/26] um: fix clone flags to be familar with valgrind Hajime Tazaki
2020-03-30 14:45 ` [RFC v4 00/25] Unifying LKL into UML Hajime Tazaki
2020-03-30 14:45 ` [RFC v4 01/25] arch: add __SYSCALL_DEFINE_ARCH Hajime Tazaki
2020-03-30 14:45 ` [RFC v4 02/25] um lkl: architecture skeleton for Linux kernel library Hajime Tazaki
2020-03-30 21:53 ` Johannes Berg
2020-03-30 22:12 ` Richard Weinberger
2020-03-30 22:12 ` Richard Weinberger
2020-03-31 7:08 ` Hajime Tazaki
2020-03-31 20:16 ` Johannes Berg
2020-04-02 6:44 ` Hajime Tazaki
2020-04-07 19:25 ` Octavian Purdila
2020-04-07 19:25 ` Octavian Purdila
2020-03-30 14:45 ` [RFC v4 03/25] um lkl: host interface Hajime Tazaki
2020-03-30 14:45 ` [RFC v4 04/25] um lkl: memory handling Hajime Tazaki
2020-03-30 14:45 ` [RFC v4 05/25] um lkl: kernel threads support Hajime Tazaki
2020-03-30 14:45 ` [RFC v4 06/25] um lkl: interrupt support Hajime Tazaki
2020-03-30 14:45 ` [RFC v4 07/25] um lkl: system call interface and application API Hajime Tazaki
2020-03-30 14:45 ` [RFC v4 08/25] um lkl: timers, time and delay support Hajime Tazaki
2020-03-30 14:45 ` [RFC v4 09/25] um lkl: basic kernel console support Hajime Tazaki
2020-03-30 14:45 ` [RFC v4 10/25] um lkl: initialization and cleanup Hajime Tazaki
2020-03-30 14:45 ` [RFC v4 11/25] um lkl: plug in the build system Hajime Tazaki
2020-03-30 14:45 ` [RFC v4 12/25] lkl tools: skeleton for host side library Hajime Tazaki
2020-03-30 14:45 ` [RFC v4 13/25] lkl tools: host lib: add utilities functions Hajime Tazaki
2020-03-30 14:45 ` [RFC v4 14/25] lkl tools: host lib: filesystem helpers Hajime Tazaki
2020-03-30 14:45 ` [RFC v4 15/25] lkl tools: host lib: networking helpers Hajime Tazaki
2020-03-30 14:45 ` [RFC v4 16/25] lkl tools: host lib: posix host operations Hajime Tazaki
2020-03-30 14:45 ` [RFC v4 17/25] lkl tools: add test programs Hajime Tazaki
2020-03-30 14:45 ` [RFC v4 18/25] lkl tools: cptofs that reads/writes to/from a filesystem image Hajime Tazaki
2020-03-30 14:45 ` [RFC v4 19/25] lkl tools: fs2tar that converts a filesystem image to tar Hajime Tazaki
2020-03-30 14:45 ` [RFC v4 20/25] lkl tools: add lklfuse Hajime Tazaki
2020-03-30 14:45 ` [RFC v4 21/25] um lkl: add documentation Hajime Tazaki
2020-03-30 14:45 ` [RFC v4 22/25] um lkl: add CI scripts to conduct regression tests Hajime Tazaki
2020-03-30 14:45 ` [RFC v4 23/25] um lkl: add UML network driver for lkl Hajime Tazaki
2020-03-30 21:31 ` Johannes Berg
2020-03-31 2:38 ` Hajime Tazaki
2020-03-31 19:52 ` Johannes Berg
2020-03-30 14:45 ` [RFC v4 24/25] um lkl: add UML block device driver (ubd) " Hajime Tazaki
2020-03-30 14:45 ` [RFC v4 25/25] um: fix clone flags to be familiar with valgrind Hajime Tazaki
2020-07-02 14:06 ` [RFC v5 00/21] Unifying LKL into UML Hajime Tazaki
2020-07-02 14:06 ` [RFC v5 01/21] um: split build in kernel and host parts Hajime Tazaki
2020-09-21 16:01 ` Anton Ivanov
2020-09-21 22:27 ` Hajime Tazaki
2020-07-02 14:06 ` [RFC v5 02/21] um: add os init and exit calls Hajime Tazaki
2020-07-02 14:06 ` [RFC v5 03/21] um: move arch/um/os-Linux dir to tools/um/uml Hajime Tazaki
2020-07-02 14:06 ` [RFC v5 04/21] um: host: implement os_initcalls and os_exitcalls Hajime Tazaki
2020-07-02 14:06 ` [RFC v5 05/21] um: move arch/x86/um/os-Linux to tools/um/uml/ Hajime Tazaki
2020-07-02 14:07 ` [RFC v5 06/21] scritps: um: suppress warnings if SRCARCH=um Hajime Tazaki
2020-07-02 14:07 ` [RFC v5 07/21] um: extend arch_switch_to for alternate SUBARCH Hajime Tazaki
2020-07-02 14:07 ` [RFC v5 08/21] um: add nommu mode for UML library mode Hajime Tazaki
2020-07-02 14:07 ` [RFC v5 09/21] um: nommu: host interface Hajime Tazaki
2020-07-02 14:07 ` [RFC v5 10/21] um: nommu: memory handling Hajime Tazaki
2020-07-02 14:07 ` [RFC v5 11/21] um: nommu: kernel thread support Hajime Tazaki
2020-07-02 14:07 ` [RFC v5 12/21] um: nommu: system call interface and application API Hajime Tazaki
2020-07-02 14:07 ` [RFC v5 13/21] um: nommu: basic console support Hajime Tazaki
2020-07-02 14:07 ` [RFC v5 14/21] um: nommu: initialization and cleanup Hajime Tazaki
2020-07-02 14:07 ` [RFC v5 15/21] um: nommu: integrate with irq infrastructure of UML Hajime Tazaki
2020-07-02 14:07 ` [RFC v5 16/21] um: nommu: plug in the build system Hajime Tazaki
2020-07-02 14:07 ` [RFC v5 17/21] um: host: add nommu build for ARCH=um Hajime Tazaki
2020-07-02 14:07 ` [RFC v5 18/21] um: host: add utilities functions Hajime Tazaki
2020-07-02 14:07 ` [RFC v5 19/21] um: host: posix host operations Hajime Tazaki
2020-07-02 14:07 ` [RFC v5 20/21] um: host: add test programs Hajime Tazaki
2020-07-02 14:07 ` [RFC v5 21/21] um: nommu: add block device support of UML Hajime Tazaki
2020-09-24 7:12 ` [RFC v6 00/21] Unifying LKL into UML Hajime Tazaki
2020-09-24 7:12 ` [RFC v6 01/21] um: split build in kernel and host parts Hajime Tazaki
2020-09-24 7:33 ` Anton Ivanov
2020-09-24 8:26 ` Hajime Tazaki
2020-09-24 8:37 ` Anton Ivanov
2020-09-24 7:36 ` Anton Ivanov
2020-09-24 8:13 ` Hajime Tazaki
2020-09-24 7:12 ` [RFC v6 02/21] um: add os init and exit calls Hajime Tazaki
2020-09-24 7:12 ` [RFC v6 03/21] um: move arch/um/os-Linux dir to tools/um/uml Hajime Tazaki
2020-09-24 7:12 ` [RFC v6 04/21] um: host: implement os_initcalls and os_exitcalls Hajime Tazaki
2020-09-24 7:12 ` [RFC v6 05/21] um: move arch/x86/um/os-Linux to tools/um/uml/ Hajime Tazaki
2020-09-24 7:12 ` [RFC v6 06/21] scritps: um: suppress warnings if SRCARCH=um Hajime Tazaki
2020-09-24 7:12 ` [RFC v6 07/21] um: extend arch_switch_to for alternate SUBARCH Hajime Tazaki
2020-09-24 7:12 ` [RFC v6 08/21] um: add nommu mode for UML library mode Hajime Tazaki
2020-09-24 7:12 ` [RFC v6 09/21] um: nommu: host interface Hajime Tazaki
2020-09-24 7:12 ` [RFC v6 10/21] um: nommu: memory handling Hajime Tazaki
2020-09-24 7:12 ` [RFC v6 11/21] um: nommu: kernel thread support Hajime Tazaki
2020-09-24 7:12 ` [RFC v6 12/21] um: nommu: system call interface and application API Hajime Tazaki
2020-09-24 7:12 ` [RFC v6 13/21] um: nommu: basic console support Hajime Tazaki
2020-09-24 7:12 ` [RFC v6 14/21] um: nommu: initialization and cleanup Hajime Tazaki
2020-09-24 7:12 ` [RFC v6 15/21] um: nommu: integrate with irq infrastructure of UML Hajime Tazaki
2020-09-24 7:12 ` [RFC v6 16/21] um: nommu: plug in the build system Hajime Tazaki
2020-09-24 7:12 ` [RFC v6 17/21] um: host: add nommu build for ARCH=um Hajime Tazaki
2020-09-24 7:12 ` [RFC v6 18/21] um: host: add utilities functions Hajime Tazaki
2020-09-24 7:12 ` [RFC v6 19/21] um: host: posix host operations Hajime Tazaki
2020-09-24 7:13 ` [RFC v6 20/21] um: host: add test programs Hajime Tazaki
2020-09-24 7:13 ` [RFC v6 21/21] um: nommu: add block device support of UML Hajime Tazaki
2020-10-06 9:44 ` [RFC v7 00/21] Unifying LKL into UML Hajime Tazaki
2020-10-06 9:44 ` [RFC v7 01/21] um: split build in kernel and host parts Hajime Tazaki
2020-10-06 9:44 ` [RFC v7 02/21] um: add os init and exit calls Hajime Tazaki
2020-10-07 15:13 ` Johannes Berg
2020-10-08 13:18 ` Hajime Tazaki
2020-10-06 9:44 ` [RFC v7 03/21] um: move arch/um/os-Linux dir to tools/um/uml Hajime Tazaki
2020-10-07 15:20 ` Johannes Berg
2020-10-08 17:48 ` Octavian Purdila
2020-10-08 19:46 ` Johannes Berg
2020-10-08 20:53 ` Octavian Purdila
2020-10-09 15:59 ` Johannes Berg
2020-10-06 9:44 ` [RFC v7 04/21] um: host: implement os_initcalls and os_exitcalls Hajime Tazaki
2020-10-07 15:22 ` Johannes Berg
2020-10-08 13:16 ` Hajime Tazaki
2020-10-06 9:44 ` [RFC v7 05/21] um: move arch/x86/um/os-Linux to tools/um/uml/ Hajime Tazaki
2020-10-07 15:23 ` Johannes Berg
2020-10-06 9:44 ` [RFC v7 06/21] scritps: um: suppress warnings if SRCARCH=um Hajime Tazaki
2020-10-07 15:24 ` Johannes Berg
2020-10-09 1:13 ` Hajime Tazaki
2020-10-09 16:00 ` Johannes Berg
2020-10-06 9:44 ` [RFC v7 07/21] um: extend arch_switch_to for alternate SUBARCH Hajime Tazaki
2020-10-07 15:25 ` Johannes Berg
2020-10-09 1:24 ` Hajime Tazaki
2020-10-09 16:02 ` Johannes Berg
2020-10-06 9:44 ` [RFC v7 08/21] um: add nommu mode for UML library mode Hajime Tazaki
2020-10-07 15:44 ` Johannes Berg
2020-10-09 3:38 ` Hajime Tazaki
2020-10-09 16:06 ` Johannes Berg
2020-10-20 8:44 ` Hajime Tazaki
2020-10-06 9:44 ` [RFC v7 09/21] um: nommu: host interface Hajime Tazaki
2020-10-07 15:45 ` Johannes Berg
2020-10-08 18:10 ` Octavian Purdila
2020-10-06 9:44 ` [RFC v7 10/21] um: nommu: memory handling Hajime Tazaki
2020-10-07 15:47 ` Johannes Berg
2020-10-08 18:07 ` Octavian Purdila
2020-10-06 9:44 ` [RFC v7 11/21] um: nommu: kernel thread support Hajime Tazaki
2020-10-07 18:57 ` Johannes Berg
2020-10-08 18:54 ` Octavian Purdila
2020-10-08 19:39 ` Johannes Berg
2020-10-08 20:25 ` Octavian Purdila
2020-10-06 9:44 ` [RFC v7 12/21] um: nommu: system call interface and application API Hajime Tazaki
2020-10-07 19:05 ` Johannes Berg
2020-10-08 19:03 ` Octavian Purdila
2020-10-08 19:40 ` Johannes Berg
2020-10-06 9:44 ` [RFC v7 13/21] um: nommu: basic console support Hajime Tazaki
2020-10-06 9:44 ` [RFC v7 14/21] um: nommu: initialization and cleanup Hajime Tazaki
2020-10-06 9:44 ` [RFC v7 15/21] um: nommu: integrate with irq infrastructure of UML Hajime Tazaki
2020-10-07 19:09 ` Johannes Berg
2020-10-06 9:44 ` [RFC v7 16/21] um: nommu: plug in the build system Hajime Tazaki
2020-10-07 19:20 ` Johannes Berg
2020-10-09 7:40 ` Hajime TAZAKI
2020-10-06 9:44 ` [RFC v7 17/21] um: host: add nommu build for ARCH=um Hajime Tazaki
2020-10-06 9:44 ` [RFC v7 18/21] um: host: add utilities functions Hajime Tazaki
2020-10-07 14:53 ` Anton Ivanov
2020-10-07 15:02 ` Johannes Berg
2020-10-07 15:03 ` Johannes Berg
2020-10-07 15:10 ` Anton Ivanov
2020-10-08 12:52 ` Hajime Tazaki
2020-10-08 19:19 ` Octavian Purdila
2020-10-08 12:53 ` Hajime Tazaki
2020-10-06 9:44 ` [RFC v7 19/21] um: host: posix host operations Hajime Tazaki
2020-10-06 9:44 ` [RFC v7 20/21] um: host: add test programs Hajime Tazaki
2020-10-07 19:23 ` Johannes Berg
2020-10-09 6:24 ` Hajime Tazaki
2020-10-06 9:44 ` [RFC v7 21/21] um: nommu: add block device support of UML Hajime Tazaki
2020-10-07 14:17 ` Anton Ivanov
2020-10-08 12:13 ` Hajime Tazaki
2020-10-07 13:30 ` [RFC v7 00/21] Unifying LKL into UML Anton Ivanov
2020-10-08 12:12 ` Hajime Tazaki
2020-10-08 12:50 ` Anton Ivanov
2020-10-08 17:13 ` Octavian Purdila
2020-10-08 17:18 ` Anton Ivanov
2020-10-08 17:24 ` Octavian Purdila
2021-01-20 2:27 ` [RFC v8 00/20] " Hajime Tazaki
2021-01-20 2:27 ` [RFC v8 01/20] um: split build in kernel and host parts Hajime Tazaki
2021-01-20 2:27 ` [RFC v8 02/20] um: move arch/um/os-Linux dir to tools/um/uml Hajime Tazaki
2021-01-20 2:27 ` [RFC v8 03/20] um: move arch/x86/um/os-Linux to tools/um/uml/ Hajime Tazaki
2021-01-20 2:27 ` [RFC v8 04/20] um: implement os_initcalls and os_exitcalls Hajime Tazaki
2021-01-20 2:27 ` [RFC v8 05/20] um: extend arch_switch_to for alternate SUBARCH Hajime Tazaki
2021-01-20 2:27 ` [RFC v8 06/20] um: add UML library mode Hajime Tazaki
2021-03-14 16:49 ` Johannes Berg
2021-03-16 1:17 ` Hajime Tazaki
2021-01-20 2:27 ` [RFC v8 07/20] um: lkl: host interface Hajime Tazaki
2021-03-14 16:50 ` Johannes Berg
2021-03-16 1:17 ` Hajime Tazaki
2021-01-20 2:27 ` [RFC v8 08/20] um: lkl: memory handling Hajime Tazaki
2021-03-14 16:53 ` Johannes Berg
2021-03-16 1:18 ` Hajime Tazaki
2021-03-16 21:31 ` Johannes Berg
2021-03-18 0:12 ` Hajime Tazaki
2021-03-18 8:00 ` Johannes Berg
2021-01-20 2:27 ` [RFC v8 09/20] um: lkl: kernel thread support Hajime Tazaki
2021-03-14 17:01 ` Johannes Berg
2021-03-16 1:18 ` Hajime Tazaki
2021-01-20 2:27 ` [RFC v8 10/20] um: lkl: system call interface and application API Hajime Tazaki
2021-01-20 2:27 ` [RFC v8 11/20] um: lkl: basic console support Hajime Tazaki
2021-03-14 20:42 ` Johannes Berg
2021-03-16 1:19 ` Hajime Tazaki
2021-01-20 2:27 ` [RFC v8 12/20] um: lkl: initialization and cleanup Hajime Tazaki
2021-03-14 20:40 ` Johannes Berg
2021-03-16 1:19 ` Hajime Tazaki
2021-01-20 2:27 ` [RFC v8 13/20] um: lkl: integrate with irq infrastructure of UML Hajime Tazaki
2021-03-14 20:45 ` Johannes Berg
2021-03-16 1:20 ` Hajime Tazaki
2021-03-16 21:36 ` Johannes Berg
2021-01-20 2:27 ` [RFC v8 14/20] um: lkl: plug in the build system Hajime Tazaki
2021-01-20 2:27 ` [RFC v8 15/20] um: host: add library mode build for ARCH=um Hajime Tazaki
2021-01-20 2:27 ` Hajime Tazaki [this message]
2021-01-20 2:27 ` [RFC v8 17/20] um: host: posix host operations Hajime Tazaki
2021-01-20 2:27 ` [RFC v8 18/20] selftests/um: lkl: add test programs for library mode of UML Hajime Tazaki
2021-01-20 2:27 ` [RFC v8 19/20] um: lkl: add block device support " Hajime Tazaki
2021-03-14 20:37 ` Johannes Berg
2021-03-16 1:19 ` Hajime Tazaki
2021-03-16 21:32 ` Johannes Berg
2021-03-17 14:19 ` Octavian Purdila
2021-03-17 14:28 ` Johannes Berg
2021-03-18 0:15 ` Hajime Tazaki
2021-03-18 0:43 ` Octavian Purdila
2021-01-20 2:27 ` [RFC v8 20/20] um: lkl: add documentation Hajime Tazaki
2021-03-14 21:03 ` [RFC v8 00/20] Unifying LKL into UML Johannes Berg
2021-03-16 1:17 ` Hajime Tazaki
2021-03-16 21:29 ` Johannes Berg
2021-03-17 14:03 ` Octavian Purdila
2021-03-17 14:24 ` Johannes Berg
2021-03-18 14:17 ` Hajime Tazaki
2021-03-18 16:28 ` Johannes Berg
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=8416d4b2f5c5510bfa3162cf04bae181c13d3f6e.1611103406.git.thehajime@gmail.com \
--to=thehajime@gmail.com \
--cc=anton.ivanov@cambridgegreys.com \
--cc=jdike@addtoit.com \
--cc=linux-arch@vger.kernel.org \
--cc=linux-kernel-library@freelists.org \
--cc=linux-um@lists.infradead.org \
--cc=retrage01@gmail.com \
--cc=richard@nod.at \
--cc=tavi.purdila@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).