On Mon, Dec 20, 2021 at 4:23 AM Waldek Kozaczuk <[email protected]> wrote:
> Hi, > > It has been a while since the last release but I have only recently found > some time and energy to update the roadmap - > https://github.com/cloudius-systems/osv/wiki/Roadmap. It is meant to be a > "living" document that more-less captures what we (me?) would like to work > on in near future. So it is more-less my wish list but I would like to use > this occasion to seek your input as well. I would like to know what you > would want to be implemented/improved/changed etc. Feel free to respond to > this email or directly update the roadmap wiki or add comments. Also, all > OSv issues are here - https://github.com/cloudius-systems/osv/issues and > if you find any interesting ones please feel free to add them to the wiki. > > In order to facilitate the discussion I am enclosing the roadmap here with > some of my extra comments: > > Modularization/"Librarization" > > - Hide most symbols and C++ standard library (Partially addressed by > this > > <https://github.com/cloudius-systems/osv/commit/af2d371a61f6ab1eb5a066a0c3e93230faf6611c> > and > other commits) > - Issue 97 > > <https://github.com/cloudius-systems/osv/issues/97#issuecomment-643833296> - > Be more selective on symbols exported from the kernel > - The research results with numbers described in this discussion > <https://groups.google.com/d/msg/osv-dev/fs-jmyaXY_E/vWUk-wDDAAAJ> > and the older one > <https://groups.google.com/d/msg/osv-dev/JsJfnhTX_EY/PKUvYm9-AQAJ> seem > to indicate that both C++ standard library and other non-public symbols > should be hidden in the kernel to make this goal achievable > - Make ZFS optional as a shared library > <https://github.com/cloudius-systems/osv/issues/1009> - the patches > <https://groups.google.com/g/osv-dev/c/utWNzLGBwog> to address this > issue were sent a couple of days ago > - Create toolchain to optionally build custom kernel tailored to > specific hypervisor or app > <https://github.com/cloudius-systems/osv/issues/1110> > - See this original discussion > <https://groups.google.com/d/msg/osv-dev/BHwN6Stm3n4/arvdOwl3AAAJ> > - Reduce kernel size > - Shrinking kernel described in this early discussion > <https://groups.google.com/d/msg/osv-dev/hCYGRzytaJ4/D23S_ibNAgAJ> would > really be a result of hiding C++ library and most symbols (see above) > but > also conditionally compiling in/out various modules (see the first > bullet > in the Modularization/"Librarization") > - Expose C++ APIs as C to hide C++ completely > > You've made some really nice progress on this! <https://github.com/cloudius-systems/osv/wiki/Roadmap#support-statically-linked-executables>Support > statically linked executables > > - See > > https://github.com/cloudius-systems/osv/issues?q=is%3Aissue+is%3Aopen+label%3Astatic-elf > > What's the motivation for this? What uses statically linked executables? <https://github.com/cloudius-systems/osv/wiki/Roadmap#improve-tooling>Improve > tooling > > - Improve capstan (see Capstan "2.0" Wiki > <https://github.com/cloudius-systems/capstan/wiki/Capstan-2.0>) > - *THIS is a project on its own, somewhat independent but I think > it is very important to improve building and running OSv images; it > would > be nice to fine a volunteer that would focus on it entirely* > - Create IntelliJ, Maven and or Gradle plugins to deploy Java, Node, > etc apps > - Run Docker images on OSv (possibly musl-based like Alpine are better) > - There is already an existing example - > > https://github.com/cloudius-systems/osv-apps/tree/master/openjdk12-jre-from-docker > > > <https://github.com/cloudius-systems/osv/wiki/Roadmap#merge-parts-of-ipv6-branch-into-master>Merge > parts of ipv6 branch into master > > - Port partial netlink support > > <https://github.com/cloudius-systems/osv/commit/f1cd48e0f192564d64e7b1e1caccc8df05e7cd5d#diff-21721ffc9ac62efcdfda3e5f92f0b8ce612881e93722fab8b1002a469b6ebfff> > in > order to fix libc: Fix if_indextoname(), if_nametoindex() > > <https://github.com/cloudius-systems/osv/commit/d35c3ddfae69db4d6877fb93341f711b3aefd6a8#diff-16c8c6eb85e05438f5d6c60ff9869072a3a3b1618aa1481ac7a0cb049f06f51d> > - Also, reach out to Spirent to see if any more networking related > bugs fixed can be brought over from the > https://github.com/SpirentOrion/osv fork > > <https://github.com/cloudius-systems/osv/wiki/Roadmap#others>Others > > - Help review and merge the "lazy-allocated stack" patch > <https://groups.google.com/g/osv-dev/c/tZnwiScmjZY/m/GkY0hV9EAwAJ> > - Fix cli/lua on newer Fedora (see > https://github.com/cloudius-systems/osv/issues/1166) > - Consider implementing a read-write filesystem alternative to ZFS - > ext2/3/4 > ? <https://github.com/cloudius-systems/osv/issues/1179> > - Improve gdb support > <https://github.com/cloudius-systems/osv/issues/1167> > > What's the motivation of this? I thought the existing gdb support was pretty good, what's missing? The issue 1167 doesn't describe the motivation. Are you trying to gain an ability to debug individual *threads* (not CPU cores) running *on *OSv (not the OSv kernel)? Are you trying to connect gdb to a remote OSv virtual machine (not running on the same machine)? Or something else? > > - #1069 <https://github.com/cloudius-systems/osv/issues/1069> - Add > vsock support > - *Would there really be real-world application of that? Maybe to > provide better OSv-host configuration capabilities?* > - Support other booting methods like UEFI > <https://github.com/cloudius-systems/osv/issues/1098> > - Support other hypervisors > - Support new KVM-bases AWS instances (see > https://github.com/cloudius-systems/osv/issues/924) > - Support Hyper-V (see > https://github.com/cloudius-systems/osv/issues/735) > - *What about XEN? Is it still "a thing" in terms of supporting it? > I have very little experience with XEN and I sense that XEN has evolved > a > lot in the last 6-7 years.* > > This will be very hard without a personal "itch" to see OSv work on those hypervisors, which you actually use. Personally, I don't even know how to install Xen to test anything on it :-( > > - Support .NET Core executables > - See what needs to be finished in this thread > <https://groups.google.com/d/msg/osv-dev/k69cHw7qvTg/9NqPq70IAwAJ> > - Refresh look and feel of http://osv.io > - RISC-V port <https://github.com/cloudius-systems/osv/issues/1171> > > > <https://github.com/cloudius-systems/osv/wiki/Roadmap#various-finer-level-improvements>Various > finer-level improvements > > - Optimize memory allocator to better deal with "small" amount of > memory - https://github.com/cloudius-systems/osv/issues/1013 > - #28 <https://github.com/cloudius-systems/osv/issues/28> - Optimize > atomic operations on UP (single-VCPU) > - #1016 <https://github.com/cloudius-systems/osv/issues/1016> - Add > support for smb2/3 (samba) file system T > - There is already a patch sent to the list > <https://groups.google.com/d/msg/osv-dev/QToC22-QHiA/ejSOMGe7BwAJ> > - #1041 <https://github.com/cloudius-systems/osv/issues/1041> - Idea > for easily creating OSv images from a list of Ubuntu packages > - Fix networking bugs > - https://github.com/cloudius-systems/osv/issues/420 > - https://github.com/cloudius-systems/osv/issues/454 > - Speedup VFS - https://github.com/cloudius-systems/osv/issues/450 > - Improve XEN support > - https://github.com/cloudius-systems/osv/issues/498 > - https://github.com/cloudius-systems/osv/issues/345 > - Speed-up realloc() by mremap() - > https://github.com/cloudius-systems/osv/issues/184 > - Investigate virtio-net “slow path” - > https://github.com/cloudius-systems/osv/issues/177 > > > <https://github.com/cloudius-systems/osv/wiki/Roadmap#improve-aarch64-support>Improve > AArch64 support > > - Work on aarch64 issues > <https://github.com/cloudius-systems/osv/labels/aarch64> > - Fix various bugs/limitations > <https://github.com/cloudius-systems/osv/wiki/AArch64#bugslimitations> > - Implement gaps in respect to x86_64 > > <https://github.com/cloudius-systems/osv/wiki/AArch64#gaps-with-respect-to-x64> > > > Finally, I also hope to find some new volunteers to help me work on some > of those improvements ;-) > That would be great. Good luck! > Regards, > Waldek > > -- > 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/b302c81c-d81a-48f3-b025-20b40d6cd356n%40googlegroups.com > <https://groups.google.com/d/msgid/osv-dev/b302c81c-d81a-48f3-b025-20b40d6cd356n%40googlegroups.com?utm_medium=email&utm_source=footer> > . > -- 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/CANEVyjt4uLTFaMayBRE67wCvLSo7PTC0MSmGRvkRixL0keFg9A%40mail.gmail.com.
