On Mon, Apr 24, 2023 at 6:26 AM Waldek Kozaczuk <[email protected]> wrote:
> Hi, > > Over the recent week, I have been working to get OSv to run a simple > "hello world" app (aka native-example) built as a position-dependent > statically linked executable. > Nice! > > 1. Support the arch_prctl syscall that sets the app TLS > - this was by far the most complicated element that required > changing OSv to store new per-pcpu data pointer in GS register and > enhancing both syscall handler and interrupt/page fault handler to > detect > and switch if needed the FS base to the kernel TLS on entry and back to > the > app one on exit (see > > https://github.com/cloudius-systems/osv/issues/1137#issuecomment-1512315880 > ) > > If this has noticeable overhead, perhaps it makes sense to make it optional? > > 1. Fixing a potential bug in handling TCGETS in the console driver. > > I'm curious what this bug was - I am personally fond of this area of this code, as you can see from the history lesson in drivers/line-discipline.cc :-) > > 1. Implement sys_prlimit > 2. Enable the readlink, geteuid and getegid > > I think we already had those - or did you mean the system call? > This was enough to run a single-threaded app but we will need to implement > the clone syscall to support multi-threaded apps. > Very nice. You can probably start by implementing the "simple" case of clone() used by a simple multi-threaded application and leave the other cases with UNIMPLEMENTED (or "ignore" various parameters and leave them to be perfected later, with WARN_ONCE) -- You received this message because you are subscribed to the Google Groups "OSv Development" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/osv-dev/CANEVyjs1vV__S%3DLKkX-vL91x0D62Q7VjiyPho3K%3DomqtvoCpcA%40mail.gmail.com.
