From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Gabriel L. Somlo" Subject: Re: [PATCH v3 0/4] SysFS driver for QEMU fw_cfg device Date: Mon, 5 Oct 2015 09:13:22 -0400 Message-ID: <20151005131322.GH1977@HEDWIG.INI.CMU.EDU> References: <1443914889-9619-1-git-send-email-somlo@cmu.edu> <20151005100035.GA19064@leverpostej> <20151005124042.GF1977@HEDWIG.INI.CMU.EDU> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Return-path: Content-Disposition: inline In-Reply-To: Sender: linux-api-owner-u79uwXL29TY76Z2rM5mHXA@public.gmane.org To: Peter Maydell Cc: Mark Rutland , gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r@public.gmane.org, paul-DWxLp4Yu+b8AvxtiuMwx3w@public.gmane.org, Kumar Gala , Will Deacon , agross-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org, zajec5-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org, Hanjun Guo , Catalin Marinas , "linux-api-u79uwXL29TY76Z2rM5mHXA@public.gmane.org" , lkml - Kernel Mailing List , kernelnewbies-7JyXY6prKcjpASu1u0TL5ti2O/JbrIOy@public.gmane.org, Matt Fleming , Laszlo Ersek , Jordan Justen , "Michael S. Tsirkin" , Leif Lindholm , Ard Biesheuvel , Paolo Bonzini , Gerd Hoffmann , QEMU Developers List-Id: linux-api@vger.kernel.org On Mon, Oct 05, 2015 at 01:50:47PM +0100, Peter Maydell wrote: > On 5 October 2015 at 13:40, Gabriel L. Somlo wrote: > > In addition, Michael's comment earlier in the thread suggests that > > even my current acpi version isn't sufficiently "orthodox" w.r.t. > > ACPI, and I should be providing the hardware access routine as > > an ACPI/AML routine, to avoid race conditions with the rest of ACPI, > > and for encapsulation. I.e. it's even rude to use the fw_cfg node's > > ACPI _CRS method (the part where I'd be treating it like a DT stand-in > > only to query fw_cfg's hardware specifics). > > If you want to try to support "firmware might also be reading > fw_cfg at the same time as the kernel" this is a (painful) > problem regardless of how the kernel figures out whether a > fw_cfg device is present. I had assumed that one of the design > assumptions of this series was that firmware would only > read the fw_cfg before booting the guest kernel and never touch > it afterwards. If it might touch it later then letting the > guest kernel also mess with fw_cfg seems like a really bad idea. I don't know of any case where firmware and kernel might race each other to access fw_cfg. The issue AFAICT is whether it's safe (future-proof) to rely on parsing _CRS for the fw_cfg i/o access information, or whether such logic could be rendered obsolete by potential future updates to fw_cfg's _CRS. If I "outsource" the fw_cfg_dump_blob_by_key() functionality entirely to an ACPI method, my kernel driver won't have to worry about keeping up with said future updates. On the down-side, that means the kernel driver will be ACPI or nothing (but I'm OK with that, at my curent level of understanding :) Thanks, --Gabriel