From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-5.1 required=3.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,SPF_HELO_NONE, SPF_PASS,USER_AGENT_SANE_1 autolearn=no autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id C7BEEC48BCF for ; Wed, 9 Jun 2021 12:08:36 +0000 (UTC) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 7392661285 for ; Wed, 9 Jun 2021 12:08:36 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 7392661285 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=redhat.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Received: from localhost ([::1]:42434 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1lqx0d-0004Rz-JD for qemu-devel@archiver.kernel.org; Wed, 09 Jun 2021 08:08:35 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:38078) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1lqx04-0003lT-Pz for qemu-devel@nongnu.org; Wed, 09 Jun 2021 08:08:00 -0400 Received: from us-smtp-delivery-124.mimecast.com ([216.205.24.124]:23395) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1lqx02-0002AH-2D for qemu-devel@nongnu.org; Wed, 09 Jun 2021 08:08:00 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1623240477; h=from:from:reply-to:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type:in-reply-to:in-reply-to: references:references; bh=6Ymq9rH0AnY0Mfwkq+9dbfhHhP5oRcBF2Zaef7OH3/E=; b=Pvs79E/m7vyiLgzMg9j+gYfWnKnGVxZRB8Fqs0IqF7K0vXqkpUBEkoyngDsJCilYofS2WL 4kpB0P2gw5zV2KCmvttgYN2HoCcUW5OEKvHxx1JQ7YShsDsrFObFgE2qKMmtn/2i29uXwL s6z/dFuxK/NCsKQw5L6K0gaVPHzAQKw= 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-395-MbTMe5BQOyKqe0eAoMX1XQ-1; Wed, 09 Jun 2021 08:07:54 -0400 X-MC-Unique: MbTMe5BQOyKqe0eAoMX1XQ-1 Received: from smtp.corp.redhat.com (int-mx08.intmail.prod.int.phx2.redhat.com [10.5.11.23]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id D9B8BEC1A8; Wed, 9 Jun 2021 12:07:53 +0000 (UTC) Received: from redhat.com (ovpn-115-127.ams2.redhat.com [10.36.115.127]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 88D9419C46; Wed, 9 Jun 2021 12:07:45 +0000 (UTC) Date: Wed, 9 Jun 2021 13:07:42 +0100 From: Daniel =?utf-8?B?UC4gQmVycmFuZ8Op?= To: John Snow Subject: Re: GSoC Intro - TUI interface for QMP Message-ID: References: <87czswxuwn.fsf@dusky.pond.sub.org> <1577ce78-bf98-3f3d-7594-2b91d84967ec@redhat.com> MIME-Version: 1.0 In-Reply-To: <1577ce78-bf98-3f3d-7594-2b91d84967ec@redhat.com> User-Agent: Mutt/2.0.7 (2021-05-04) X-Scanned-By: MIMEDefang 2.84 on 10.5.11.23 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=berrange@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Received-SPF: pass client-ip=216.205.24.124; envelope-from=berrange@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -29 X-Spam_score: -3.0 X-Spam_bar: --- X-Spam_report: (-3.0 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.199, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action 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: , Reply-To: Daniel =?utf-8?B?UC4gQmVycmFuZ8Op?= Cc: kwolf@redhat.com, ehabkost@redhat.com, qemu-devel@nongnu.org, wainersm@redhat.com, Markus Armbruster , "Niteesh G. S." , Stefan Hajnoczi Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: "Qemu-devel" On Tue, Jun 08, 2021 at 11:49:41AM -0400, John Snow wrote: > On 6/8/21 11:01 AM, Markus Armbruster wrote: > > John Snow writes: > > > > [...] > > > > > A challenge will be where to pull the help text from. The QEMU server > > > is not capable (today) of sending help information over the QMP socket > > > itself. > > > > > > We will need to implement a QMP command inside of QEMU directly that > > > is capable of delivering this information to the client so that it can > > > render it. > > > > > > Since not all versions of QEMU will have this feature, the qmp-shell > > > will need to be able to gracefully deal with the lack of help text, > > > displaying an error indicating that this version of QEMU does not have > > > help information compiled into it. > > > > The doc text is bulky: my bld/docs/manual/interop/qemu-qmp-ref.html is > > 1.7 MiB and growing. Less lavish markup results in smaller data. We > > may want to store it compressed, or load it on demand. We might even > > have to make it compile-time optional for some use cases. > > > > > > ACK, understood. > > raw QAPI directory, including only the json files, is "only" 551.3 kB. > > I assume we can compile help text to something json (or json-like) and then > compress it. Perhaps we could compile something like > qapi-help-introspect.json.tgz and load it on-demand from the QEMU binary > when help text is requested. I think that's overthinking things. Even a small QEMU install is 10s of MB in size once you add up the qemu binary, firmware blobs and depedancies. If we only keep the raw help text from the json, we'll have < 1/2 MB, which is lost in the noise of the overall deploymnt size. No need for compression or complex load-on-demand, just keep it small and simple. Regards, Daniel -- |: https://berrange.com -o- https://www.flickr.com/photos/dberrange :| |: https://libvirt.org -o- https://fstop138.berrange.com :| |: https://entangle-photo.org -o- https://www.instagram.com/dberrange :|