1. 23 9月, 2016 4 次提交
  2. 18 5月, 2016 1 次提交
  3. 08 4月, 2016 1 次提交
    • G
      Sort the fw_cfg file list · bab47d9a
      Gerd Hoffmann 提交于
      Entries are inserted in filename order instead of being
      appended to the end in case sorting is enabled.
      
      This will avoid any future issues of moving the file creation
      around, it doesn't matter what order they are created now,
      the will always be in filename order.
      Signed-off-by: NGerd Hoffmann <kraxel@redhat.com>
      
      Added machine type handling for compatibility.  This was
      a fairly complex change, this will preserve the order of fw_cfg
      for older versions no matter what order the firmware files
      actually come in.  A list is kept of the correct legacy order
      and the entries will be inserted based upon their order in
      the list.  Except that some entries are ordered (in a specific
      area of the list) based upon what order they appear on the
      command line.  Special handling is added for those entries.
      Signed-off-by: NCorey Minyard <cminyard@mvista.com>
      Reviewed-by: NMichael S. Tsirkin <mst@redhat.com>
      Signed-off-by: NMichael S. Tsirkin <mst@redhat.com>
      bab47d9a
  4. 23 3月, 2016 2 次提交
    • V
      util: move declarations out of qemu-common.h · f348b6d1
      Veronia Bahaa 提交于
      Move declarations out of qemu-common.h for functions declared in
      utils/ files: e.g. include/qemu/path.h for utils/path.c.
      Move inline functions out of qemu-common.h and into new files (e.g.
      include/qemu/bcd.h)
      Signed-off-by: NVeronia Bahaa <veroniabahaa@gmail.com>
      Signed-off-by: NPaolo Bonzini <pbonzini@redhat.com>
      f348b6d1
    • M
      include/qemu/osdep.h: Don't include qapi/error.h · da34e65c
      Markus Armbruster 提交于
      Commit 57cb38b3 included qapi/error.h into qemu/osdep.h to get the
      Error typedef.  Since then, we've moved to include qemu/osdep.h
      everywhere.  Its file comment explains: "To avoid getting into
      possible circular include dependencies, this file should not include
      any other QEMU headers, with the exceptions of config-host.h,
      compiler.h, os-posix.h and os-win32.h, all of which are doing a
      similar job to this file and are under similar constraints."
      qapi/error.h doesn't do a similar job, and it doesn't adhere to
      similar constraints: it includes qapi-types.h.  That's in excess of
      100KiB of crap most .c files don't actually need.
      
      Add the typedef to qemu/typedefs.h, and include that instead of
      qapi/error.h.  Include qapi/error.h in .c files that need it and don't
      get it now.  Include qapi-types.h in qom/object.h for uint16List.
      
      Update scripts/clean-includes accordingly.  Update it further to match
      reality: replace config.h by config-target.h, add sysemu/os-posix.h,
      sysemu/os-win32.h.  Update the list of includes in the qemu/osdep.h
      comment quoted above similarly.
      
      This reduces the number of objects depending on qapi/error.h from "all
      of them" to less than a third.  Unfortunately, the number depending on
      qapi-types.h shrinks only a little.  More work is needed for that one.
      Signed-off-by: NMarkus Armbruster <armbru@redhat.com>
      [Fix compilation without the spice devel packages. - Paolo]
      Signed-off-by: NPaolo Bonzini <pbonzini@redhat.com>
      da34e65c
  5. 04 3月, 2016 3 次提交
  6. 29 1月, 2016 1 次提交
  7. 22 12月, 2015 1 次提交
  8. 18 9月, 2015 1 次提交
  9. 11 9月, 2015 1 次提交
  10. 07 7月, 2015 1 次提交
    • E
      vl: move rom_load_all after machine init done · 6b3f7f63
      Eric Auger 提交于
      On ARM, commit ac9d32e3 postponed the
      memory preparation for boot until the machine init done notifier. This
      has for consequence to insert ROM at machine init done time.
      
      However the rom_load_all function stayed called before the ROM are
      inserted. As a consequence the rom_load_all function does not do
      everything it is expected to do, on ARM.
      
      It currently registers the ROM reset notifier but does not iterate through
      the registered ROM list. the isrom field is not set properly. This latter
      is used to report info in the monitor and also to decide whether the
      rom->data can be freed on ROM reset notifier.
      
      To fix that regression the patch moves the rom_load_all call after
      machine init done. We also take the opportunity to rename the rom_load_all
      function into rom_check_and_resgister_reset() and integrate the
      rom_load_done in it.
      Signed-off-by: NEric Auger <eric.auger@linaro.org>
      Reported-by: NPeter Crosthwaite <peter.crosthwaite@xilinx.com>
      Message-Id: <1434470874-22573-1-git-send-email-eric.auger@linaro.org>
      Signed-off-by: NPaolo Bonzini <pbonzini@redhat.com>
      6b3f7f63
  11. 28 4月, 2015 1 次提交
  12. 19 3月, 2015 1 次提交
  13. 10 3月, 2015 1 次提交
  14. 18 2月, 2015 1 次提交
    • M
      hmp: Name HMP info handler functions hmp_info_SUBCOMMAND() · 1ce6be24
      Markus Armbruster 提交于
      Some are called do_info_SUBCOMMAND() (old ones, usually), some
      hmp_info_SUBCOMMAND(), some SUBCOMMAND_info(), sometimes SUBCOMMAND
      pointlessly differs in spelling.
      
      Normalize to hmp_info_SUBCOMMAND(), where SUBCOMMAND is exactly the
      subcommand name with '-' replaced by '_'.
      
      Exceptions:
      
      * sun4m_irq_info(), sun4m_pic_info() renamed to sun4m_hmp_info_irq(),
        sun4m_hmp_info_pic().
      
      * lm32_irq_info(), lm32_pic_info() renamed to lm32_hmp_info_irq(),
        lm32_hmp_info_pic().
      Signed-off-by: NMarkus Armbruster <armbru@redhat.com>
      1ce6be24
  15. 08 1月, 2015 1 次提交
  16. 23 12月, 2014 1 次提交
  17. 25 11月, 2014 1 次提交
  18. 17 11月, 2014 1 次提交
  19. 03 11月, 2014 1 次提交
    • M
      hw/core/loader: implement address translation in uimage loader · 25bda50a
      Max Filippov 提交于
      Such address translation is needed when load address recorded in uImage
      is a virtual address. When the actual load address is requested, return
      untranslated address: user that needs the translated address can always
      apply translation function to it and those that need it untranslated
      don't need to do the inverse translation.
      
      Add translation function pointer and its parameter to uimage_load
      prototype. Update all existing users.
      
      No user-visible functional changes.
      
      Cc: qemu-stable@nongnu.org
      Signed-off-by: NMax Filippov <jcmvbkbc@gmail.com>
      Reviewed-by: NAlexander Graf <agraf@suse.de>
      25bda50a
  20. 09 9月, 2014 1 次提交
  21. 08 9月, 2014 1 次提交
  22. 20 8月, 2014 1 次提交
  23. 18 8月, 2014 1 次提交
  24. 11 3月, 2014 1 次提交
    • M
      pc: avoid duplicate names for ROM MRs · ac41881b
      Michael S. Tsirkin 提交于
      Since
      commit 04920fc0
          loader: store FW CFG ROM files in RAM
      RAM MRs including ROM files in FW CFGs are created
      and named using the file basename.
      
      This becomes problematic if these names are
      supplied by user, since the basename might not
      be unique.
      
      There are two cases we care about:
      - option-rom flag.
      - option ROM for devices. This triggers e.g. when
        using rombar=0.
      
      At the moment we get an assert. E.g
      qemu -option-rom /usr/share/ipxe/8086100e.rom -option-rom
      /usr/share/ipxe.efi/8086100e.rom
      RAMBlock "/rom@genroms/8086100e.rom" already registered, abort!
      
      This is a regression from 1.6.
      
      For now let's keep it simple and just avoid creating the
      MRs in case of option ROMs.
      
      when using 1.7 machine types, enable
      option ROMs in RAM to match that version.
      Signed-off-by: NMichael S. Tsirkin <mst@redhat.com>
      ac41881b
  25. 10 3月, 2014 1 次提交
  26. 05 3月, 2014 1 次提交
    • A
      elf-loader: add more return codes · 18674b26
      Alexey Kardashevskiy 提交于
      The existing load_elf() just returns -1 if it fails to load ELF. However
      it could be smarter than this and tell more about the failure such as
      wrong endianness or incompatible platform.
      
      This adds additional return codes for wrong architecture, wrong
      endianness and if the image is not ELF at all.
      
      This adds a load_elf_strerror() helper to convert return codes into
      string messages.
      
      This fixes handling of what load_elf() returns for s390x, other
      callers just check the return value for <0 and this remains unchanged.
      Signed-off-by: NAlexey Kardashevskiy <aik@ozlabs.ru>
      Signed-off-by: NAlexander Graf <agraf@suse.de>
      18674b26
  27. 11 2月, 2014 1 次提交
  28. 20 12月, 2013 1 次提交
    • A
      roms: Flush icache when writing roms to guest memory · 582b55a9
      Alexander Graf 提交于
      We use the rom infrastructure to write firmware and/or initial kernel
      blobs into guest address space. So we're basically emulating the cache
      off phase on very early system bootup.
      
      That phase is usually responsible for clearing the instruction cache for
      anything it writes into cachable memory, to ensure that after reboot we
      don't happen to execute stale bits from the instruction cache.
      
      So we need to invalidate the icache every time we write a rom into guest
      address space. We do not need to do this for every DMA since the guest
      expects it has to flush the icache manually in that case.
      
      This fixes random reboot issues on e5500 (booke ppc) for me.
      Signed-off-by: NAlexander Graf <agraf@suse.de>
      582b55a9
  29. 13 12月, 2013 1 次提交
    • A
      roms: Flush icache when writing roms to guest memory · a94b36dd
      Alexander Graf 提交于
      We use the rom infrastructure to write firmware and/or initial kernel
      blobs into guest address space. So we're basically emulating the cache
      off phase on very early system bootup.
      
      That phase is usually responsible for clearing the instruction cache for
      anything it writes into cachable memory, to ensure that after reboot we
      don't happen to execute stale bits from the instruction cache.
      
      So we need to invalidate the icache every time we write a rom into guest
      address space. We do not need to do this for every DMA since the guest
      expects it has to flush the icache manually in that case.
      
      This fixes random reboot issues on e5500 (booke ppc) for me.
      Signed-off-by: NAlexander Graf <agraf@suse.de>
      Signed-off-by: NPaolo Bonzini <pbonzini@redhat.com>
      a94b36dd
  30. 14 10月, 2013 3 次提交
  31. 21 8月, 2013 1 次提交
    • M
      loader: store FW CFG ROM files in RAM · 04920fc0
      Michael S. Tsirkin 提交于
      ROM files that are put in FW CFG are copied to guest ram, by BIOS, but
      they are not backed by RAM so they don't get migrated.
      
      Each time we change two bytes in such a ROM this breaks cross-version
      migration: since we can migrate after BIOS has read the first byte but
      before it has read the second one, getting an inconsistent state.
      
      Future-proof this by creating, for each such ROM,
      an MR serving as the backing store.
      This MR is never mapped into guest memory, but it's registered
      as RAM so it's migrated with the guest.
      
      Naturally, this only helps for -M 1.7 and up, older machine types
      will still have the cross-version migration bug.
      Luckily the race window for the problem to trigger is very small,
      which is also likely why we didn't notice the cross-version
      migration bug in testing yet.
      Signed-off-by: NMichael S. Tsirkin <mst@redhat.com>
      Reviewed-by: NLaszlo Ersek <lersek@redhat.com>
      04920fc0
  32. 08 8月, 2013 1 次提交