Skip to content

Commit

Permalink
feat: Update to QEMU 8.1
Browse files Browse the repository at this point in the history
feat: Update to QEMU 8.1
  • Loading branch information
kroese committed Oct 17, 2023
2 parents fbbf5ff + ffbaa7c commit dfdcefa
Show file tree
Hide file tree
Showing 6 changed files with 23 additions and 28 deletions.
2 changes: 1 addition & 1 deletion Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ FROM qemux/qemu-host as builder
# RUN go mod download
# RUN CGO_ENABLED=0 GOOS=linux go build -a -installsuffix cgo -o /qemu-host.bin .

FROM debian:bookworm-slim
FROM debian:trixie-slim

ARG DEBCONF_NOWARNINGS="yes"
ARG DEBIAN_FRONTEND noninteractive
Expand Down
7 changes: 0 additions & 7 deletions run/disk.sh
Original file line number Diff line number Diff line change
Expand Up @@ -136,13 +136,6 @@ if [[ SIZE -ne DATA_SIZE ]]; then
error "Virtual disk has the wrong size: ${SIZE}" && exit 89
fi

AGENT="${STORAGE}/${BASE}.agent"
[ -f "$AGENT" ] && AGENT_VERSION=$(cat "${AGENT}") || AGENT_VERSION=1

if ((AGENT_VERSION < 5)); then
info "The installed VirtualDSM Agent v${AGENT_VERSION} is an outdated version, please upgrade it."
fi

DISK_OPTS="\
-device virtio-scsi-pci,id=hw-synoboot,bus=pcie.0,addr=0xa \
-drive file=${BOOT},if=none,id=drive-synoboot,format=raw,cache=${DISK_CACHE},aio=${DISK_IO},discard=${DISK_DISCARD},detect-zeroes=on \
Expand Down
12 changes: 12 additions & 0 deletions run/gpu.sh
Original file line number Diff line number Diff line change
Expand Up @@ -28,3 +28,15 @@ if ! apt-mark showinstall | grep -q "xserver-xorg-video-intel"; then
apt-get -qq --no-install-recommends -y install xserver-xorg-video-intel > /dev/null

fi

if ! apt-mark showinstall | grep -q "qemu-system-modules-opengl"; then

info "Installing OpenGL module..."

export DEBCONF_NOWARNINGS="yes"
export DEBIAN_FRONTEND="noninteractive"

apt-get -qq update
apt-get -qq --no-install-recommends -y install qemu-system-modules-opengl > /dev/null

fi
3 changes: 0 additions & 3 deletions run/install.sh
Original file line number Diff line number Diff line change
Expand Up @@ -242,9 +242,6 @@ mkdir -p "$LOC"
cp /agent/service.sh "$LOC/agent.sh"
chmod 755 "$LOC/agent.sh"

# Store agent version
echo "7" > "$STORAGE"/"$BASE".agent

info "Install: Installing system partition..."

LABEL="1.44.1-42218"
Expand Down
6 changes: 5 additions & 1 deletion run/network.sh
Original file line number Diff line number Diff line change
Expand Up @@ -234,7 +234,11 @@ fi
if [[ "${DHCP}" == [Yy1]* ]]; then

if [[ "$GATEWAY" == "172."* ]]; then
error "You can only enable DHCP while the container is on a macvlan network!" && exit 86
if [[ "${DEBUG}" == [Yy1]* ]]; then
info "Warning: Are you sure the container is on a macvlan network?"
else
error "You can only enable DHCP while the container is on a macvlan network!" && exit 86
fi
fi

# Configuration for DHCP IP
Expand Down
21 changes: 5 additions & 16 deletions run/power.sh
Original file line number Diff line number Diff line change
Expand Up @@ -39,26 +39,14 @@ _graceful_shutdown() {

echo && error "Could not send shutdown command to the guest ($RESPONSE)"

# If we cannot shutdown the usual way, fallback to the NMI method

AGENT="${STORAGE}/${BASE}.agent"
[ -f "$AGENT" ] && AGENT_VERSION=$(cat "${AGENT}") || AGENT_VERSION=1

if ((AGENT_VERSION > 1)); then

# Send a NMI interrupt which will be detected by the kernel
if ! echo 'nmi' | nc -q 1 -w 1 localhost "${QEMU_MONPORT}" > /dev/null ; then
AGENT_VERSION=0
fi

fi

if ((AGENT_VERSION < 2)); then
# Send a NMI interrupt which will be detected by the agent script
if ! echo 'nmi' | nc -q 1 -w 1 localhost "${QEMU_MONPORT}" > /dev/null ; then

kill -15 "$(cat "${_QEMU_PID}")"
pkill -f qemu-system-x86_64 || true

fi

fi

while [ "$(cat ${_QEMU_SHUTDOWN_COUNTER})" -lt "${QEMU_POWERDOWN_TIMEOUT}" ]; do
Expand All @@ -70,7 +58,8 @@ _graceful_shutdown() {
if echo 'info version'| nc -q 1 -w 1 localhost "${QEMU_MONPORT}" >/dev/null 2>&1 ; then

sleep 1
[[ "${DEBUG}" == [Yy1]* ]] && info "Shutting down, waiting... ($(cat ${_QEMU_SHUTDOWN_COUNTER})/${QEMU_POWERDOWN_TIMEOUT})"
CNT="$(cat ${_QEMU_SHUTDOWN_COUNTER})/${QEMU_POWERDOWN_TIMEOUT}"
[[ "${DEBUG}" == [Yy1]* ]] && info "Shutting down, waiting... (${CNT})"

fi

Expand Down

0 comments on commit dfdcefa

Please sign in to comment.