1. 16 10月, 2019 3 次提交
  2. 25 9月, 2019 1 次提交
  3. 12 9月, 2019 2 次提交
  4. 07 8月, 2019 1 次提交
  5. 26 6月, 2019 1 次提交
  6. 10 4月, 2019 5 次提交
  7. 03 4月, 2019 1 次提交
  8. 13 3月, 2019 1 次提交
  9. 12 3月, 2019 3 次提交
    • M
      qemu_firmware: Introduce qemuFirmwareFillDomain() · 804d2003
      Michal Privoznik 提交于
      And finally the last missing piece. This is what puts it all
      together.
      
      At the beginning, qemuFirmwareFillDomain() loads all possible
      firmware description files based on algorithm described earlier.
      Then it tries to find description which matches given domain.
      The criteria are:
      
        - firmware is the right type (e.g. it's bios when bios was
          requested in domain XML)
        - firmware is suitable for guest architecture/machine type
        - firmware allows desired guest features to stay enabled (e.g.
          if s3/s4 is enabled for guest then firmware has to support
          it too)
      
      Once the desired description has been found it is then used to
      set various bits of virDomainDef so that proper qemu cmd line is
      constructed as demanded by the description file. For instance,
      secure boot enabled firmware might request SMM -> it will be
      enabled if needed.
      Signed-off-by: NMichal Privoznik <mprivozn@redhat.com>
      Reviewed-by: NLaszlo Ersek <lersek@redhat.com>
      804d2003
    • M
      qemu_firmware: Introduce qemuFirmwareFetchConfigs · 3c876d24
      Michal Privoznik 提交于
      Implementation for yet another part of firmware description
      specification. This one covers selecting which files to parse.
      
      There are three locations from which description files can be
      loaded. In order of preference, from most generic to most
      specific these are:
      
        /usr/share/qemu/firmware
        /etc/qemu/firmware
        $XDG_CONFIG_HOME/qemu/firmware
      
      If a file is found in two or more locations then the most specific
      one is used. Moreover, if file is empty then it means it is
      overriding some generic description and disabling it.
      
      Again, this is described in more details and with nice examples
      in firmware.json specification (qemu commit 3a0adfc9bf).
      
      However, there's one slight difference - for the root user the
      home directory is not searched. This follows rules laid out by
      similar look up processes, e.g. PKI x509 certs are not searched
      in /root but they are looked for under /home.
      Signed-off-by: NMichal Privoznik <mprivozn@redhat.com>
      Reviewed-by: NLaszlo Ersek <lersek@redhat.com>
      3c876d24
    • M
      qemu: Introduce basic skeleton for parsing firmware description · 8b5b80f4
      Michal Privoznik 提交于
      The firmware description is a JSON file which follows
      specification from qemu.git/docs/interop/firmware.json. The
      description file basically says: Firmware file X is {bios|uefi},
      supports these targets and machine types, requires these features
      to be enabled on qemu cmd line and this is how you put it onto
      qemu cmd line.
      
      The firmware.json specification covers more (i.e. how to select
      the right firmware) but that will be covered and implemented in
      next commits.
      Signed-off-by: NMichal Privoznik <mprivozn@redhat.com>
      Reviewed-by: NDaniel P. Berrangé <berrange@redhat.com>
      8b5b80f4