From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:41006) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Zj5KO-0008LV-Hw for qemu-devel@nongnu.org; Mon, 05 Oct 2015 08:57:17 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Zj5KJ-0006Jd-IL for qemu-devel@nongnu.org; Mon, 05 Oct 2015 08:57:16 -0400 Received: from foss.arm.com ([217.140.101.70]:46856) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Zj5KJ-0006Iy-D9 for qemu-devel@nongnu.org; Mon, 05 Oct 2015 08:57:11 -0400 Date: Mon, 5 Oct 2015 13:56:47 +0100 From: Mark Rutland Message-ID: <20151005125647.GL19064@leverpostej> References: <1443914889-9619-1-git-send-email-somlo@cmu.edu> <20151005100035.GA19064@leverpostej> <561263A4.2020304@redhat.com> <20151005122332.GK19064@leverpostej> <20151005124346.GG1977@HEDWIG.INI.CMU.EDU> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20151005124346.GG1977@HEDWIG.INI.CMU.EDU> Subject: Re: [Qemu-devel] [PATCH v3 0/4] SysFS driver for QEMU fw_cfg device List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: "Gabriel L. Somlo" Cc: peter.maydell@linaro.org, paul@pwsan.com, zajec5@gmail.com, catalin.marinas@arm.com, jordan.l.justen@intel.com, kernelnewbies@kernelnewbies.org, gregkh@linuxfoundation.org, agross@codeaurora.org, will.deacon@arm.com, linux-kernel@vger.kernel.org, leif.lindholm@linaro.org, qemu-devel@nongnu.org, ard.biesheuvel@linaro.org, matt.fleming@intel.com, mst@redhat.com, hanjun.guo@linaro.org, galak@codeaurora.org, Paolo Bonzini , linux-api@vger.kernel.org, lersek@redhat.com, kraxel@redhat.com On Mon, Oct 05, 2015 at 08:43:46AM -0400, Gabriel L. Somlo wrote: > On Mon, Oct 05, 2015 at 01:23:33PM +0100, Mark Rutland wrote: > > On Mon, Oct 05, 2015 at 01:48:52PM +0200, Paolo Bonzini wrote: > > > > > > > > > On 05/10/2015 12:00, Mark Rutland wrote: > > > > Some of the keys in the example look like they'd come from other sources > > > > (e.g. the *-tables entries), while others look like kernel/bootloader > > > > configuration options (e.g. etc/boot-fail-wait, bootorder) -- I'm > > > > concerned about redundancy here. > > > > > > The redundancy is because the firmware and the bootloader actually > > > _consume_ these fw_cfg strings to produce the others (the ACPI tables, > > > the kernel configuration options). > > > > > > On the other hand, hiding some strings just because they ought to have > > > been consumed already makes little sense. > > > > Sure. However, I'm concerned that providing redundant interfaces for > > those could lead to people grabbing information from here (because it's > > convenient) rather than the existing canonical locations, which means we > > get more software that works on fewer systems for no good reason. > > > > What I couldn't figure out was what _additional_ information this > > provided; it looked like a mixed bag of details we could already get > > from disparate sources. If that's all it does, then it seems to me like > > it doesn't add any benefit and potentially makes things worse. > > > > So what do we get from this interface that we cannot get elsewhere, and > > why is this the best way of exposing it? > > Starting with qemu 2.4, it is possible to insert arbitrary named > blobs into fw_cfg from the qemu command line. *Those* entries > might be interesting to userspace, which is why it might be handy > to access to fw_cfg blobs in general. So this is a mechanism to pass arbitrary key:value pairs to a guest userspace? What would those be used for, and why would this be the correct location for that? How do we avoid clashes between user-selected names and those we need to pass actual FW data? Mark.