| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
| |
While at it, place ret param at last.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This tries to get rid of most manual sigprocmask() changes, in favour
of:
1. The SD_EVENT_SIGNAL_PROCMASK flag to sd_event_add_signal()
2. The sd_event_set_signal_exit() call for handling SIGTERM/SIGINT
3. Move masking of SIGWINCH into ptyfwd, out of nspawn/vmspawn/run
And while we are at it get rid of a bunch of event source fields whose
lifetime is bound to the sd_event object they belong to anyway, and make
use of the "floating" event source feature of sd-event instead.
|
| |
|
| |
|
|
|
|
| |
Follow-up for 862c68a914ab4561d83875e58e05dcf65cb4a551.
|
|
|
|
|
| |
Follow-up for 862c68a914ab4561d83875e58e05dcf65cb4a551.
Fixes CID#1550749.
|
|
|
|
|
|
|
|
| |
The tap network device should be called "vt-", so that that the
80-vm-vt.network file we ship by default actually matches against it.
Also, turn off any qemu callout stuff, networkd is smart enough to
handle all this on its own, without ugly callouts.
|
|
|
|
|
|
|
|
|
|
| |
It's time. sd-json was already done earlier in this cycle, let's now
make sd-varlink public too.
This is mostly just a search/replace job of epical proportions.
I left some functions internal (mostly IDL handling), and I turned some
static inline calls into regular calls.
|
| |
|
|
|
|
|
|
|
|
|
| |
Stream sockets are stream sockets, i.e. they won#t give us the full data
right-away, we must buffer locally and read until we hit EOF. Hence do
so.
moreover, make sure to close the fd once we are done, otherwise the
sender might block on us.
|
|
|
|
|
|
|
| |
All mips variants of qemu-system default to malta.
Signed-off-by: Henry Chen <henry.chen@oss.cipunited.com>
Signed-off-by: Henry Chen <chenx97@aosc.io>
|
|\
| |
| | |
run: add option to prevent the setting of terminal title
|
| | |
|
| | |
|
|\ \
| | |
| | | |
machined: unprivileged machine registration
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This mimics what we do in nspawn: if registration is enabled we'll let
machined allocate a scope unit for us. When --keep-unit is used we'll
register without creating a new scope.
This brings behaviour more inline with what nspawn does, exposing the
same sets of options.
|
| |/
| |
| |
| |
| |
| | |
Now that we have a concept of unprivileged VMs and containers, let's
allow unprivileged clients to register with machined too – subject to
Polkit permissions.
|
|/
|
|
| |
Use ["virt"](https://www.qemu.org/docs/master/system/loongarch/virt.html) as a commonly used generic platform on loongarch64.
|
| |
|
|
|
| |
Use ["virt"](https://www.qemu.org/docs/master/system/target-riscv.html#board-specific-documentation) as a commonly used generic platform on riscv.
|
| |
|
|
|
|
|
|
|
|
| |
The "service" field that one is supposed to pass to machine is supposed
to indicate the implementation of the client, not the service unit the
client runs in (which is typically even a scope unit, not a system
unit). Hence fix that, and make it closely match what systemd-nspawn
does.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is preparation for making our Varlink API a public API. Since our
Varlink API is built on top of our JSON API we need to make that public
first (it's a nice API, but JSON APIs there are already enough, this is
purely about the Varlink angle).
I made most of the json.h APIs public, and just placed them in
sd-json.h. Sometimes I wasn't so sure however, since the underlying data
structures would have to be made public too. If in doubt I didn#t risk
it, and moved the relevant API to src/libsystemd/sd-json/json-util.h
instead (without any sd_* symbol prefixes).
This is mostly a giant search/replace patch.
|
| |
|
|
|
|
| |
name twice
|
| |
|
|
|
|
|
|
| |
Follow-up for 258d26940fb6bfa1b5b8acf03cc4a37f2657e4ac.
Fixes https://github.com/systemd/systemd/pull/31218#discussion_r1596168449.
|
|
|
|
|
| |
- prefix argument for storing result with 'ret_',
- align arguments for strv_new().
|
|
|
|
|
| |
Allow to gracefully shutdown by initiating the operation from
the guest
|
|
|
|
|
| |
When available, use varlink to register the VM, so that we can talk
over SSH to the guest. Enables 'machinectl shell' for vmspawn guests.
|
| |
|
| |
|
|
|
|
|
|
|
| |
Some people are just sad, sad lost souls who don't like even the tiniest
ray of color in their life. Let's add an env var knob for allowing them
to turn the background tinting off, to drive the last bit of color from
their life so that they can stay in their grey grey life.
|
|
|
|
|
|
|
|
|
|
| |
This passes an ID derived from the vmgenid down to all VMs. This is
useful to have an identifier for this VM generation id. We derive it
from the invocation ID, if we have one, otherwise we randomize it.
Eventually we should make use of the vmgenid changing to re-acquire MAC
addresses, DHCP leases as such. Let's for now enable the VMM side of the
concept as first step towards that.
|
|
|
|
|
| |
This is a bit hackish, but really useful sometimes to play around with
some qemu switches.
|
|
|
|
|
|
|
| |
THese are generally recommended (and libvirt/gnome-boxes default to them
hence). They are mostly relevant for Windows, but I think it makes sense
to enable them anyway for Linux too, simply to excercise #28001, and
they shouldn't hurt.
|
|
|
|
| |
We need the shared memory added if we're doing runtime mounts as well.
|
| |
|
| |
|
| |
|
|
|
|
|
| |
Fixes issue #32026 by only finding firmwares which explicitly support
the native architecture.
|
|
|
|
|
| |
Fixes issue #32024, using --discard-disk=yes will enable handling of disk
discarding requests, saving space for long running VMs as desired.
|
| |
|
|
|
|
|
| |
Fixes issue #32025, I saw no reason not to enable this by default so I
added it to the initial qemu cmdline.
|
| |
|
| |
|
|\
| |
| | |
logind: Add fallback for when the PIDFDs= property is not available
|
| | |
|