Ecosyste.ms: OpenCollective
An open API service for software projects hosted on Open Collective.
Unikraft
We are developing Unikraft, a fast, secure and opensource unikernel SDK for extreme specialization.
Collective -
Host: opensource -
https://opencollective.com/unikraft
- Website: https://t.co/W6HHOLeiUN
- Code: https://github.com/unikraft/unikraft
At link time, objects such as the ones derived from `gcov` which comes
with `gcc-13` require thi...
Using Musl and the dirent64 structure causes build warnings. This is
because certain source code...
Remove a redundant `KVM_` in order to reference `KVM_KERNEL_SERIAL_CONSOLE`
when deciding if a s...
Set `KCONFIG_EPLAT_DIRS` to the list of external platforms `$(P)` instead
of `$(E)`, which is no...
Migrate include folder to the newly introduced VIRTIO drivers
subsystem.
Signed-off-by: Rares M...
github.com/unikraft/unikraft - 3ed241395a73db624fe3f514c8ad1fdae237313b authored about 1 year ago by Rares Miculescu <[email protected]>
Migrate the VIRTIO 9P driver to the newly introduced VIRTIO drivers
subsystem.
Signed-off-by: R...
github.com/unikraft/unikraft - 6454bd641cf296099567777e7da19da24ba883ab authored about 1 year ago by Rares Miculescu <[email protected]>
Migrate VIRTIO BUS driver to the newly introduced VIRTIO drivers
subsystem.
Signed-off-by: Rare...
github.com/unikraft/unikraft - 9c3759a9efb573acf31ed5f6fbdb261536955a00 authored about 1 year ago by Rares Miculescu <[email protected]>
Migrate VIRTIO NET driver to the newly introduced VIRTIO drivers
subsystem.
Signed-off-by: Rare...
github.com/unikraft/unikraft - 40bc6445aa50ba01bf915a1d1aa585cdac2e8467 authored about 1 year ago by Rares Miculescu <[email protected]>Introduce VIRTIO to newly introduced drivers subsystem.
Signed-off-by: Rares Miculescu <micules...
github.com/unikraft/unikraft - 8aaa30eb989bb40884be621615b9812eff9bb957 authored about 1 year ago by Rares Miculescu <[email protected]>
Remove VIRTIO from `kvm/Makefile.uk` and
update VIRTIO drivers on KVM:
* Enable the VIRTIO PCI ...
github.com/unikraft/unikraft - 3de0f9a0ad7dbaf4c07cbdc21320d19d0a06869b authored about 1 year ago by Rares Miculescu <[email protected]>
Migrate VIRTIO PCI driver to the newly introduced VIRTIO drivers
subsystem.
Signed-off-by: Rare...
github.com/unikraft/unikraft - b1cb319360eae71286858645de1a2f78a779d4a1 authored about 1 year ago by Rares Miculescu <[email protected]>Update include guards to the drivers convention.
Signed-off-by: Rares Miculescu <miculescur@gma...
github.com/unikraft/unikraft - 78ddbc6d11d9fa71fd9246910839ead13c6a5122 authored about 1 year ago by Rares Miculescu <[email protected]>
Migrate VIRTIO RING driver to the newly introduced VIRTIO drivers
subsystem.
Signed-off-by: Rar...
github.com/unikraft/unikraft - b08fd28116496d55488904d52149a035f65b6ed3 authored about 1 year ago by Rares Miculescu <[email protected]>
Replace `depends on` with `select` for `LIBFDT` to allow
chained dependency resolution.
Signed-...
github.com/unikraft/unikraft - 5d304c915d1f73d22fd8cc15ccdd3e95261d26bf authored about 1 year ago by Rares Miculescu <[email protected]>
Add `HAVE_PCI` to limit menuconfig PCI options to
platforms that provide this feature.
Signed-o...
github.com/unikraft/unikraft - c87ecd64c25135fa75d1b643ab889fc2f61822f5 authored about 1 year ago by Rares Miculescu <[email protected]>
Migrate VIRTIO MMIO driver to the newly introduced VIRTIO drivers
subsystem.
Signed-off-by: Rar...
github.com/unikraft/unikraft - d1e3eef4633aa2b9ae58c5aa3ac763c93f352240 authored about 1 year ago by Rares Miculescu <[email protected]>
Migrate VIRTIO BLK driver to the newly introduced VIRTIO drivers
subsystem.
Signed-off-by: Rare...
github.com/unikraft/unikraft - 52a6ea2aedcef9075ebcb150b25b40c4857e5609 authored about 1 year ago by Rares Miculescu <[email protected]>Create `VIRTIO_DEVICE` to avoid typing all devices one by one.
Signed-off-by: Rares Miculescu <...
github.com/unikraft/unikraft - 631b4f96f974dd499b2557ac56b2f50074069413 authored about 1 year ago by Rares Miculescu <[email protected]>
The `mount` system call may actually allow ignoring the `data`
argument depending on the usecase...
Since `uk_9pfs_parse_options` actually processes `data` it is actually
used, so remove this fals...
Out-of-order designated initialization is not allowed in C++, so change
the `ctx` declaration or...
Signed-off-by: Lukas Werling <[email protected]>
Reviewed-by: Razvan Deaconescu <razvand@uni...
The call of memset in the initialization of dummy_imask in the fdt
irq parser of pci_ecam would ...
Migrate the platform bus driver to the newly introduced ukbus drivers
subsystem.
Notice that th...
github.com/unikraft/unikraft - ee3c3af2b90e45055214d6c20bcfc88d7d982ba2 authored about 1 year ago by Michalis Pappas <[email protected]>
Enable LIBUKBUS_PCI on all KVM VMMs. That will be eventually replaced
by VIRTIO_PCI, yet we add ...
Fix some coding style issues reported by checkpatch
about space after cast on arm64.
Signed-off...
github.com/unikraft/unikraft - 64262774d88a7cfd32ac122b78f07baef91f237f authored about 1 year ago by Michalis Pappas <[email protected]>
Fix a bug in pci_ecam where a check against the result of drv->add_dev()
would happen outside th...
Introduce the ukbus drivers subsystem and migrate the PCI driver from
plat/common.
Notice that ...
github.com/unikraft/unikraft - ea5bb92ed57903cead17298319de76d67c9f7f30 authored about 1 year ago by Michalis Pappas <[email protected]>
Update include guards to the drivers conventions and add guards for
linkage with C++.
Signed-of...
github.com/unikraft/unikraft - c0830eed178adae369fcd79802aef7c6860c9482 authored about 1 year ago by Michalis Pappas <[email protected]>
With the PCI driver being migrated to the ukbus drivers subsystem
its headers path and names hav...
Enable the platform bus driver on all KVM VMMs for arm64.
Signed-off-by: Michalis Pappas <micha...
github.com/unikraft/unikraft - 334251f2bb067f38ed0efec5087aec04a90fbf5a authored about 1 year ago by Michalis Pappas <[email protected]>
The migration of PCI to the drivers subsystem has caused the update
of its Kconfig options accor...
Update include guards to the drivers convention and add guards for
linkage with C++.
Signed-off...
github.com/unikraft/unikraft - 9fc1ae9a448fe22a5cd9de7edbcf38e4550b3201 authored about 1 year ago by Michalis Pappas <[email protected]>
With the platform bus driver being migrated to the ukbus drivers subsystem
its headers path and ...
Migrate GIC to newly introduced drivers subsystem.
Signed-off-by: Rares Miculescu <miculescur@g...
github.com/unikraft/unikraft - 0014cf34ec27ad2ec5afb156328ce98cef764481 authored about 1 year ago by Rares Miculescu <[email protected]>Move the API from `plat/kvm/` into `lib/`.
Signed-off-by: Rares Miculescu <[email protected]...
github.com/unikraft/unikraft - 0913cc341699636ba1be3b7fa3a830edfc1c76b8 authored about 1 year ago by Rares Miculescu <[email protected]>Migrate GIC to newly introduced drivers subsystem.
Signed-off-by: Rares Miculescu <miculescur@g...
github.com/unikraft/unikraft - 245a68292a40ccb35f56ea8023c824fba39189e5 authored about 1 year ago by Rares Miculescu <[email protected]>
The original way to duplicate stdout to a new file descriptor fails on
Ubuntu 22.04 with error:
...
This commit adds a drivers subsystem to Unikraft. Drivers are placed
under the top-level `driver...
Move ofw driver from plat/drivers to lib/ukofw.
Create and update configuration files for migrat...
Move ofw driver from plat/drivers/ into lib/.
Update files that depend on headers from the drive...
Signed-off-by: Razvan Deaconescu <[email protected]>
Signed-off-by: Marc Rittinghaus <marc@uni...
Collect per-interface statistics and export them as dynamic
uk_store objects.
Signed-off-by: Ce...
github.com/unikraft/unikraft - fd6738104b7d0c4bc54437bc1c75ac91b8e46bfc authored about 1 year ago by Michalis Pappas <[email protected]>
Update calls to UK_STORE_STATIC_ENTRIES to remove the deprecated
cookie parameter.
Signed-off-b...
github.com/unikraft/unikraft - 6717c2b25539e9df6466934ee240137f6b26224d authored about 1 year ago by Michalis Pappas <[email protected]>
Introduce an id property to uk_store entries and replace name with id
on lookup operations, to a...
Remove cookie from static uk_store entries. This is in anticipation of
dynamic entries that prov...
Introduce header for definitions related to uk_store. Add
entry IDs for stats tracked by uk_allo...
Signed-off-by: Michalis Pappas <[email protected]>
Reviewed-by: Simon Kuenzer <simon@unikraft...
This commit adds dynamic entry support to uk_store. Libraries can
dynamically register uk_store ...
Swap the last two arguments of virtio_9p_feature_negotiate's first
call to virtio_config_get. As...
If an environment variable is not set, the
`DECLARE_LIBPOSIX_ENVIRON_ENV_VAR` macros end up decl...
All memory region descriptors must be aligned. Therefore, ensure
that the initrd and command-lin...
Limits QEMU PC machine model up to version 7.0 (pc-i440fx-7.0) for
x86. This is primarily done t...
The `result` structure of the `readdir_r` function will not need to be
part of the TLS, the `ent...
Unikraft defines the `dirent` structure as identical to `dirent64`.
This works fine if not using...
Fix second argument of [clean_and_]invalidate_dcache_range in `KVM`
entry to use the length of t...
The register shift of ns16550 is hard-coded in the driver, but it does
not match the hardware on...
The current implementation of clean and invalidate by region uses
a barrier after every cache li...
To maximize boot performance we only invalidate the cache for regions
accessed before enabling t...
The arm64 linux boot protocol provides the requirements for
the system's state before jumping in...
Previously, the elements of `__init_env` would be compile-in strings
that would correspond to `C...
`mkbootinfo.py` takes each ELF segment and aligns it to PAGE_SIZE to
convert it to a `struct ukp...
Update the KVM configuration to enable the 8250 / NS16550 UART driver.
This driver is selected w...
Make sure that we do check the return codes of all of the memory region
inserting methods so tha...
PR unikraft/unikraft#1034 moved the header to a different location, causing
full rebuilds for ev...
To ensure compatibility with boot protocols that do report the
BIOS System Memory region as a re...
Fix the default selection of the VMM in Config.uk. Kconfig requires
that the default is defined ...
Signed-off-by: Andrei Tudor TOPALĂ <[email protected]>
Reviewed-by: Maria Sfiraiala <maria...
280c69559 introduces a regression to the alignment of the
bootstack. Update __libkvmplat_entry t...
Previously, `ukplat_memregion_list_insert_legacy_hi_mem` did not
include the `0xf0000 -> 0x10000...
Previously, `PIE` builds for `Firecracker VMM` would fail at runtime
due to the fact that the st...
As soon as
commit 170a8a4fb242 ("plat/kvm/shutdown.c: If on a `UEFI` system, rely on Runtime Ser...
The memory map of Firecracker on Arm64 is:
0x0000000000000000 - 0x000000007fffffff Devices:...
github.com/unikraft/unikraft - 65aac2e5cc27fac36c33634cdd14c52d1b72970d authored about 1 year ago by Michalis Pappas <[email protected]>
Signed-off-by: Michalis Pappas <[email protected]>
Reviewed-by: Sergiu Moga <sergiu@unikraft....
The Linux arm64 boot protocol [1] prepends the image with a modified
MZ header:
u32 code0; ...
github.com/unikraft/unikraft - bdeef8585d6a0fcac0075c5619baf2e2bd0fa2f0 authored about 1 year ago by Michalis Pappas <[email protected]>
Now that all requirements to support the arm64 linux boot protocol
are implemented, enable CONFI...
Linux arm64 systems obtain the initrd address from the "linux,initrd-start"
and "linux,initrd-en...
According to the arm64 linux boot protocol [1] the address of the
fdt blob is passed on x0. This...
Update Linker.uk to generate a raw binary image prepended with the
arm64 linux boot header when ...
Rename the Kconfig options for QEMU virt and EFI stub to align them
with the rest of boot protoc...
Update Linker.uk to use the same entry point for both QEMU_VIRT and
LXBOOT protocols.
Signed-of...
github.com/unikraft/unikraft - 893ae5741522bdabbfaa08bd89597009345e7da0 authored about 1 year ago by Michalis Pappas <[email protected]>
In anticipation of additional platforms and boot protocols
on arm64 move image definitions to a ...
Allow the existence of two ways to enumerate secondary cores:
`ACPI` and `Devicetree`.
Signed-o...
github.com/unikraft/unikraft - 73f83209f3b1d2eecff9f7e51dc4476f889f5e49 authored about 1 year ago by Sergiu Moga <[email protected]>
Since this applies for both `GICv2` and `GICv3`, implement a generic
method of fetching the uniq...
Now that we have separated the ways we probe the `GIC` (`Devicetree`
vs `ACPI`) and the `Devicet...
Add the alternative of fetching the `PSCI` method from `ACPI`'s
`FADT`'s `ARM Boot Flags` field....
If `ACPI` is enabled, rely on it for probing the `GICv2`. Thus, we
need to take two steps for th...
Split secondary cores enumeration in two methods:
- if CONFIG_UKPLAT_ACPI is enabled then get th...
If `ACPI` is enabled, rely on it for probing the `GICv3`. Thus, we
need to take two steps for th...
Adds an explanation for the OPTIMIZE_PIE configuration option.
Signed-off-by: Simon Kuenzer <si...
github.com/unikraft/unikraft - 2ee5283ff8f6fc4139b3ad5fe841e554bfca1b22 authored about 1 year ago by Simon Kuenzer <[email protected]>
Adds an hint in `menuconfig` that appears if the configuration dependencies
are not met for buil...
After the merge of
commit cf8cc65cb0ae ("plat/kvm/x86: Make SMP init code resolve its own `start...
This adds the feature to place build products in a directory tree
mirroring the tree their sourc...
This change adds `addlib_tree` and `addlib_tree_s` as library
registration functions that enable...
This change adds the option to place build files in a dedicated
`.../build/` directory under the...
Since `MADT` is a System Descriptor Table itself, move it to `sdt.h`
and keep in `madt.h` only t...
Add the definition for `FADT` and its related structures. Implement
a getter for it and add its ...
Redefine ACPI structures so that they comply with the coding style
and fix Local SAPIC's wrong d...
Since all structures calculate their checksum in the same manner,
use only one general checksum ...
Allow quick access to the `UEFI` System Tables through a field in
the `bootinfo` structure.
Sig...
github.com/unikraft/unikraft - 64a2dcf05788a0b6000754ec203405c909659a88 authored about 1 year ago by Sergiu Moga <[email protected]>