From nobody Thu Nov 13 10:30:08 2025 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1579800579; cv=none; d=zohomail.com; s=zohoarc; b=d1dCbv3QXx8cfNinYnYxtCnN171Xz7Ni3jZORBjHhLLiLRvYhsUWSnBFO4dHW3Ctc1sQ7wFXNdtLCren7YgJeN/GV1+wEI9HCmHO3ZGq23JMI8BVg1+ms+la0HC8pJaMw3iO1kKYNc5VM+8BoyZTcYXHjrsSodJiYMu1SQctaoo= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1579800579; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:Message-ID:References:Sender:Subject:To; bh=8bVKJ77zZUyNg7pPmcSu/Ffhx0VlXpEBLLjM081mYSI=; b=Q8KsHY4cOhnJoyylnr+4GyNVcob0HwdPxGX7iuzRdThkt4NQHu6b15ysjNX0CJvt/BQqq/5bk6F4XiIq/n+49JSLZsXdub7onTw9m+VWW52j9QEo2avEqWyzgRkZv0FM2tKhyAjhOEeIsxZcIeM7JV1kXtHoTNiR1HX2S8/LqJw= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1579800579872814.340200893791; Thu, 23 Jan 2020 09:29:39 -0800 (PST) Received: from localhost ([::1]:33442 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1iugIU-0003b9-52 for importer@patchew.org; Thu, 23 Jan 2020 12:29:38 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:59516) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1iudMQ-0004sa-SW for qemu-devel@nongnu.org; Thu, 23 Jan 2020 09:21:31 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1iudMP-0003JS-K3 for qemu-devel@nongnu.org; Thu, 23 Jan 2020 09:21:30 -0500 Received: from us-smtp-delivery-1.mimecast.com ([207.211.31.120]:40359 helo=us-smtp-1.mimecast.com) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1iudMP-0003JL-H3 for qemu-devel@nongnu.org; Thu, 23 Jan 2020 09:21:29 -0500 Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-361-_TiYi6LnPwaSdphb7iJKCA-1; Thu, 23 Jan 2020 09:21:27 -0500 Received: from smtp.corp.redhat.com (int-mx04.intmail.prod.int.phx2.redhat.com [10.5.11.14]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 01D851800D78; Thu, 23 Jan 2020 14:21:26 +0000 (UTC) Received: from sirius.home.kraxel.org (ovpn-116-106.ams2.redhat.com [10.36.116.106]) by smtp.corp.redhat.com (Postfix) with ESMTP id 389E45DA2C; Thu, 23 Jan 2020 14:21:23 +0000 (UTC) Received: by sirius.home.kraxel.org (Postfix, from userid 1000) id 6DE649C74; Thu, 23 Jan 2020 15:21:22 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1579789289; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=8bVKJ77zZUyNg7pPmcSu/Ffhx0VlXpEBLLjM081mYSI=; b=aKUfadoMKJGr95o2GE2jzax91PhD0oxybegP2xkyQ8AjZE4cswrWvuyy2HcaDEPqq94BU7 ddlHXC62wW3ArDFBjrxxIjPgqOhFelknXRXPjbuM+S9Totm9oYBqfTg/zpDj/6z0KPhHMl XM+uIm/vjRksm3zemZDAImgS9orNIME= From: Gerd Hoffmann To: qemu-devel@nongnu.org Subject: [PULL 1/3] Revert "vnc: allow fall back to RAW encoding" Date: Thu, 23 Jan 2020 15:21:20 +0100 Message-Id: <20200123142122.13839-2-kraxel@redhat.com> In-Reply-To: <20200123142122.13839-1-kraxel@redhat.com> References: <20200123142122.13839-1-kraxel@redhat.com> X-Scanned-By: MIMEDefang 2.79 on 10.5.11.14 X-MC-Unique: _TiYi6LnPwaSdphb7iJKCA-1 X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 207.211.31.120 X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Gerd Hoffmann , Cameron Esfahani Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: pass (identity @redhat.com) MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" This reverts commit de3f7de7f4e257ce44cdabb90f5f17ee99624557. Remove VNC optimization to reencode framebuffer update as raw if it's smaller than the default encoding. QEMU's implementation was naive and didn't account for the ZLIB z_stream mutating with each compression. Because of the mutation, simply resetting the output buffer's offset wasn't sufficient to "rewind" the operation. The mutated z_stream would generate future zlib blocks which referred to symbols in past blocks which weren't sent. This would lead to artifacting. Considering that ZRLE is never larger than raw and even though ZLIB can occasionally be fractionally larger than raw, the overhead of implementing this optimization correctly isn't worth it. Signed-off-by: Cameron Esfahani Signed-off-by: Gerd Hoffmann --- ui/vnc.c | 20 ++------------------ 1 file changed, 2 insertions(+), 18 deletions(-) diff --git a/ui/vnc.c b/ui/vnc.c index 4100d6e4048c..3e8d1f120710 100644 --- a/ui/vnc.c +++ b/ui/vnc.c @@ -898,8 +898,6 @@ int vnc_raw_send_framebuffer_update(VncState *vs, int x= , int y, int w, int h) int vnc_send_framebuffer_update(VncState *vs, int x, int y, int w, int h) { int n =3D 0; - bool encode_raw =3D false; - size_t saved_offs =3D vs->output.offset; =20 switch(vs->vnc_encoding) { case VNC_ENCODING_ZLIB: @@ -922,24 +920,10 @@ int vnc_send_framebuffer_update(VncState *vs, int x, = int y, int w, int h) n =3D vnc_zywrle_send_framebuffer_update(vs, x, y, w, h); break; default: - encode_raw =3D true; + vnc_framebuffer_update(vs, x, y, w, h, VNC_ENCODING_RAW); + n =3D vnc_raw_send_framebuffer_update(vs, x, y, w, h); break; } - - /* If the client has the same pixel format as our internal buffer and - * a RAW encoding would need less space fall back to RAW encoding to - * save bandwidth and processing power in the client. */ - if (!encode_raw && vs->write_pixels =3D=3D vnc_write_pixels_copy && - 12 + h * w * VNC_SERVER_FB_BYTES <=3D (vs->output.offset - saved_o= ffs)) { - vs->output.offset =3D saved_offs; - encode_raw =3D true; - } - - if (encode_raw) { - vnc_framebuffer_update(vs, x, y, w, h, VNC_ENCODING_RAW); - n =3D vnc_raw_send_framebuffer_update(vs, x, y, w, h); - } - return n; } =20 --=20 2.18.1 From nobody Thu Nov 13 10:30:08 2025 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1579796685; cv=none; d=zohomail.com; s=zohoarc; b=FXpC9YQR/411e8UKljQ7NIaQ1UHZwjF11H8vRrA4Vk46f6faa+xurcccIagYYyHVsU6K01wI4v2h+bofbjz1y/ynAg0EMtOglMvSd4kL6wkYBhinHRSCvY/d5lWK8xiT3RFuXZcMgoE5koTSeII6gqVNFh+ZKip8L71wtIpCZYw= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1579796685; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:Message-ID:References:Sender:Subject:To; bh=uWPWSWfYKvtz3ECYoPIg8PimFhSZqtJF8y3utyXfJ80=; b=jo+aCuYsNPUmTOFk2lgFkCGjf/Yu5xkjSj0HV3QXEfQ4tPLtfdSPz1u05keFL2LM0zLKjehG6ws3T3QVhrCl4z7wVHxb7lOZv7IiKrgMQfhY9daUeiJYZukk1RIkw1FVGm2KQxuQpTgBx1sZIcafStuZgbfy++KkRe19hacEPBc= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1579796685040683.3191630390246; Thu, 23 Jan 2020 08:24:45 -0800 (PST) Received: from localhost ([::1]:60336 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1iufHf-0000cD-Al for importer@patchew.org; Thu, 23 Jan 2020 11:24:43 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:59809) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1iudNs-00074l-38 for qemu-devel@nongnu.org; Thu, 23 Jan 2020 09:23:01 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1iudNq-0004eh-Sd for qemu-devel@nongnu.org; Thu, 23 Jan 2020 09:22:59 -0500 Received: from us-smtp-delivery-1.mimecast.com ([207.211.31.120]:57788 helo=us-smtp-1.mimecast.com) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1iudNq-0004dY-Op for qemu-devel@nongnu.org; Thu, 23 Jan 2020 09:22:58 -0500 Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-387-sev2OAqlNIOOVoMOIDcMCQ-1; Thu, 23 Jan 2020 09:21:26 -0500 Received: from smtp.corp.redhat.com (int-mx05.intmail.prod.int.phx2.redhat.com [10.5.11.15]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id D4D9F8017CC; Thu, 23 Jan 2020 14:21:25 +0000 (UTC) Received: from sirius.home.kraxel.org (ovpn-116-106.ams2.redhat.com [10.36.116.106]) by smtp.corp.redhat.com (Postfix) with ESMTP id 39A7A80896; Thu, 23 Jan 2020 14:21:23 +0000 (UTC) Received: by sirius.home.kraxel.org (Postfix, from userid 1000) id 779A49C7F; Thu, 23 Jan 2020 15:21:22 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1579789378; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=uWPWSWfYKvtz3ECYoPIg8PimFhSZqtJF8y3utyXfJ80=; b=OEGv9WpvYGSqfQ+awiG6sH5eP9IO0c85lM0xt+n0ew0FVcoFHExqGxa7fS5vmxzgI5I08v upE3+eLHfEoAO+dwD2Sbk1HyQpR4ydu/i/1orVzkW0PhaaQO0NZbk/XxqnYfOhzGod/B/Z mHpPm5ObVrTqFR5zYPffqkTiXzf4nqY= From: Gerd Hoffmann To: qemu-devel@nongnu.org Subject: [PULL 2/3] vnc: prioritize ZRLE compression over ZLIB Date: Thu, 23 Jan 2020 15:21:21 +0100 Message-Id: <20200123142122.13839-3-kraxel@redhat.com> In-Reply-To: <20200123142122.13839-1-kraxel@redhat.com> References: <20200123142122.13839-1-kraxel@redhat.com> X-Scanned-By: MIMEDefang 2.79 on 10.5.11.15 X-MC-Unique: sev2OAqlNIOOVoMOIDcMCQ-1 X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 207.211.31.120 X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Gerd Hoffmann , Cameron Esfahani Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: pass (identity @redhat.com) MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" From: Cameron Esfahani In my investigation, ZRLE always compresses better than ZLIB so prioritize ZRLE over ZLIB, even if the client hints that ZLIB is preferred. zlib buffer is always reset in zrle_compress_data(), so using offset to calculate next_out and avail_out is useless. Signed-off-by: Cameron Esfahani Message-Id: Signed-off-by: Gerd Hoffmann --- ui/vnc-enc-zrle.c | 4 ++-- ui/vnc.c | 11 +++++++++-- 2 files changed, 11 insertions(+), 4 deletions(-) diff --git a/ui/vnc-enc-zrle.c b/ui/vnc-enc-zrle.c index 17fd28a2e2b0..b4f71e32cfe8 100644 --- a/ui/vnc-enc-zrle.c +++ b/ui/vnc-enc-zrle.c @@ -98,8 +98,8 @@ static int zrle_compress_data(VncState *vs, int level) /* set pointers */ zstream->next_in =3D vs->zrle->zrle.buffer; zstream->avail_in =3D vs->zrle->zrle.offset; - zstream->next_out =3D vs->zrle->zlib.buffer + vs->zrle->zlib.offset; - zstream->avail_out =3D vs->zrle->zlib.capacity - vs->zrle->zlib.offset; + zstream->next_out =3D vs->zrle->zlib.buffer; + zstream->avail_out =3D vs->zrle->zlib.capacity; zstream->data_type =3D Z_BINARY; =20 /* start encoding */ diff --git a/ui/vnc.c b/ui/vnc.c index 3e8d1f120710..1d7138a3a073 100644 --- a/ui/vnc.c +++ b/ui/vnc.c @@ -2071,8 +2071,15 @@ static void set_encodings(VncState *vs, int32_t *enc= odings, size_t n_encodings) break; #endif case VNC_ENCODING_ZLIB: - vs->features |=3D VNC_FEATURE_ZLIB_MASK; - vs->vnc_encoding =3D enc; + /* + * VNC_ENCODING_ZRLE compresses better than VNC_ENCODING_ZLIB. + * So prioritize ZRLE, even if the client hints that it prefers + * ZLIB. + */ + if ((vs->features & VNC_FEATURE_ZRLE_MASK) =3D=3D 0) { + vs->features |=3D VNC_FEATURE_ZLIB_MASK; + vs->vnc_encoding =3D enc; + } break; case VNC_ENCODING_ZRLE: vs->features |=3D VNC_FEATURE_ZRLE_MASK; --=20 2.18.1 From nobody Thu Nov 13 10:30:08 2025 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1579800779; cv=none; d=zohomail.com; s=zohoarc; b=mxRwUtvb8tYw9z9+Tk339S2g1caes0TUt6ttCe3F7HXn0Lum9I4e9PxYGq8Y/iKiWjYPkA+gI37HPQnbr4j4++mpd9HH3I5EcDUdaWBmEg+5SRWNy5+qyHOuPPo8+bUef2C6LbjwbEXZyJ5PSMJyXenS/+xd3OEDH3U/buYbR0k= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1579800779; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=aawRGz1XJLzcOhERvs/O0IrY3DsPdDnK/U0cdLxG+AA=; b=V5SHvc5iEFomKX9F6xHKWT/09IoXcVSbaDQAzH8hUSf0rxWBRafiI3WsO73Ajh8RF6DJ/Hr9WejQe4XoITVcUAyP+Wa3VEsDqAhDhPOdAYk9RcZF304e3Jl1WtnnvN5YdlSa6V9qjuqVSTpg0CbU8esQkzmYNZMIiejJzTywfJE= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1579800779242605.0591530307491; Thu, 23 Jan 2020 09:32:59 -0800 (PST) Received: from localhost ([::1]:33516 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1iugLi-0007MV-19 for importer@patchew.org; Thu, 23 Jan 2020 12:32:58 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:59534) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1iudMS-0004us-C5 for qemu-devel@nongnu.org; Thu, 23 Jan 2020 09:21:33 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1iudMR-0003KL-CF for qemu-devel@nongnu.org; Thu, 23 Jan 2020 09:21:32 -0500 Received: from us-smtp-2.mimecast.com ([205.139.110.61]:45809 helo=us-smtp-delivery-1.mimecast.com) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1iudMR-0003KA-8C for qemu-devel@nongnu.org; Thu, 23 Jan 2020 09:21:31 -0500 Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-104-PNK7Vc-PPsO5YYstv7B4cg-1; Thu, 23 Jan 2020 09:21:28 -0500 Received: from smtp.corp.redhat.com (int-mx07.intmail.prod.int.phx2.redhat.com [10.5.11.22]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id E69468010C5 for ; Thu, 23 Jan 2020 14:21:27 +0000 (UTC) Received: from sirius.home.kraxel.org (ovpn-116-106.ams2.redhat.com [10.36.116.106]) by smtp.corp.redhat.com (Postfix) with ESMTP id 3C5361001925; Thu, 23 Jan 2020 14:21:23 +0000 (UTC) Received: by sirius.home.kraxel.org (Postfix, from userid 1000) id 7FF049B13; Thu, 23 Jan 2020 15:21:22 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1579789290; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=aawRGz1XJLzcOhERvs/O0IrY3DsPdDnK/U0cdLxG+AA=; b=JGvKaRykdYRYO3HSg8Ne+RE/tzFyg5jxK+u4Dk1eVn3gTS6s7537Q8kmSIU/IuN0WSmbgS f7vrek+ainSz49rTFpVDZ7uS8dPdE4cVuJxSmzklPwV+NVZKGaiVVY+7MUWJ5zc3DOzKT8 OiwpLtMbAgAVoTnLBMSj6xAMrAFlYB4= From: Gerd Hoffmann To: qemu-devel@nongnu.org Subject: [PULL 3/3] ui/console: Display the 'none' backend in '-display help' Date: Thu, 23 Jan 2020 15:21:22 +0100 Message-Id: <20200123142122.13839-4-kraxel@redhat.com> In-Reply-To: <20200123142122.13839-1-kraxel@redhat.com> References: <20200123142122.13839-1-kraxel@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.84 on 10.5.11.22 X-MC-Unique: PNK7Vc-PPsO5YYstv7B4cg-1 X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 205.139.110.61 X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Gerd Hoffmann Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) Content-Type: text/plain; charset="utf-8" From: Philippe Mathieu-Daud=C3=A9 Commit c388f408b5 added the possibility to list the display backends using '-display help'. Since the 'none' backend is is not implemented as a DisplayChangeListenerOps, it is not registered to the dpys[] array with qemu_display_register(), and is not listed in the help output. This might be confusing, as we list it in the man page: -display type Select type of display to use. This option is a replacement for the old style -sdl/-curses/... options. Valid values for type are none Do not display video output. The guest will still see an emulated graphics card, but its output will not be displayed to the QEMU user. This option differs from the -nographic option in that it only affects what is done with video output; -nographic also changes the destination of the serial and parallel port data. Fix by manually listing the special 'none' backend in the help. Suggested-by: Thomas Huth Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Eric Blake Message-id: 20200120192947.31613-1-philmd@redhat.com Signed-off-by: Gerd Hoffmann --- ui/console.c | 1 + 1 file changed, 1 insertion(+) diff --git a/ui/console.c b/ui/console.c index 69339b028bb2..179901c35e0d 100644 --- a/ui/console.c +++ b/ui/console.c @@ -2338,6 +2338,7 @@ void qemu_display_help(void) int idx; =20 printf("Available display backend types:\n"); + printf("none\n"); for (idx =3D DISPLAY_TYPE_NONE; idx < DISPLAY_TYPE__MAX; idx++) { if (!dpys[idx]) { ui_module_load_one(DisplayType_str(idx)); --=20 2.18.1