1. 02 11月, 2014 10 次提交
    • E
      pc: Add pc_compat_2_1() function · 2cad57c7
      Eduardo Habkost 提交于
      Signed-off-by: NEduardo Habkost <ehabkost@redhat.com>
      Reviewed-by: NMichael S. Tsirkin <mst@redhat.com>
      Signed-off-by: NMichael S. Tsirkin <mst@redhat.com>
      2cad57c7
    • D
      -machine vmport=off: Allow disabling of VMWare ioport emulation · 9b23cfb7
      Dr. David Alan Gilbert 提交于
      This is a pc & q35 only machine opt.
      
      VMWare apparently doesn't like running under QEMU due to our
      incomplete emulation of it's special IO Port.  This adds a
      pc & q35 property to allow it to be turned off.
      Signed-off-by: NDr. David Alan Gilbert <dgilbert@redhat.com>
      Signed-off-by: NDon Slutz <dslutz@verizon.com>
      Reviewed-by: NMichael S. Tsirkin <mst@redhat.com>
      Signed-off-by: NMichael S. Tsirkin <mst@redhat.com>
      Reviewed-by: NPaolo Bonzini <pbonzini@redhat.com>
      Reviewed-by: NEduardo Habkost <ehabkost@redhat.com>
      Reviewed-by: NRichard W.M. Jones <rjones@redhat.com>
      9b23cfb7
    • G
      pc: Update rtc_cmos in pc_cpu_plug · 2d996150
      Gu Zheng 提交于
      Update rtc_cmos in pc_cpu_plug() directly, instead of the notifier.
      Reviewed-by: NIgor Mammedov <imammedo@redhat.com>
      Signed-off-by: NGu Zheng <guz.fnst@cn.fujitsu.com>
      Acked-by: NMichael S. Tsirkin <mst@redhat.com>
      Signed-off-by: NMichael S. Tsirkin <mst@redhat.com>
      Reviewed-by: NIgor Mammedov <imammedo@redhat.com>
      2d996150
    • G
      pc: add cpu hotplug handler to PC_MACHINE · 5279569e
      Gu Zheng 提交于
      Add cpu hotplug handler to PC_MACHINE, which will perform the acpi
      cpu hotplug callback via hotplug_handler API.
      Reviewed-by: NIgor Mammedov <imammedo@redhat.com>
      Signed-off-by: NGu Zheng <guz.fnst@cn.fujitsu.com>
      Acked-by: NMichael S. Tsirkin <mst@redhat.com>
      Signed-off-by: NMichael S. Tsirkin <mst@redhat.com>
      Reviewed-by: NIgor Mammedov <imammedo@redhat.com>
      5279569e
    • S
      acpi: create separate file for TCPA log · 42a5b308
      Stefan Berger 提交于
      Create the TCPA log in a separate file rather than allocating
      ACPI table memory for it.
      Signed-off-by: NStefan Berger <stefanb@linux.vnet.ibm.com>
      Reviewed-by: NMichael S. Tsirkin <mst@redhat.com>
      Signed-off-by: NMichael S. Tsirkin <mst@redhat.com>
      42a5b308
    • M
      virtio-pci: fix migration for pci bus master · 68a27b20
      Michael S. Tsirkin 提交于
      Current support for bus master (clearing OK bit) together with the need to
      support guests which do not enable PCI bus mastering, leads to extra state in
      VIRTIO_PCI_FLAG_BUS_MASTER_BUG bit, which isn't robust in case of cross-version
      migration for the case when guests use the device before setting DRIVER_OK.
      
      Rip out this code, and replace it:
      -   Modern QEMU doesn't need VIRTIO_PCI_FLAG_BUS_MASTER_BUG
          so just drop it for latest machine type.
      -   For compat machine types, set PCI_COMMAND if DRIVER_OK
          is set.
      
      As this is needed for 2.1 for both pc and ppc, move PC_COMPAT macros from pc.h
      to a new common header.
      
      Cc: Greg Kurz <gkurz@linux.vnet.ibm.com>
      Signed-off-by: NMichael S. Tsirkin <mst@redhat.com>
      Reviewed-by: NAlexander Graf <agraf@suse.de>
      
      68a27b20
    • J
      pc: Fix disabling of vapic for compat PC models · df1fd4b5
      Jan Kiszka 提交于
      We used to be able to address both the QEMU and the KVM APIC via "apic".
      This doesn't work anymore. So we need to use their parent class to turn
      off the vapic on machines that should not expose them.
      Signed-off-by: NJan Kiszka <jan.kiszka@siemens.com>
      Reviewed-by: NMichael S. Tsirkin <mst@redhat.com>
      Signed-off-by: NMichael S. Tsirkin <mst@redhat.com>
      
      df1fd4b5
    • L
      i386/pc: add piix and q35 machtypes to sorting families for -M \? · 562542b6
      Laszlo Ersek 提交于
      With this patch applied, the output of -M \? is
      
      > Supported machines are:
      > pc                   Standard PC (i440FX + PIIX, 1996) (alias of pc-i440fx-2.2)
      > pc-i440fx-2.2        Standard PC (i440FX + PIIX, 1996) (default)
      > pc-i440fx-2.1        Standard PC (i440FX + PIIX, 1996)
      > pc-i440fx-2.0        Standard PC (i440FX + PIIX, 1996)
      > pc-i440fx-1.7        Standard PC (i440FX + PIIX, 1996)
      > pc-i440fx-1.6        Standard PC (i440FX + PIIX, 1996)
      > pc-i440fx-1.5        Standard PC (i440FX + PIIX, 1996)
      > pc-i440fx-1.4        Standard PC (i440FX + PIIX, 1996)
      > pc-1.3               Standard PC (i440FX + PIIX, 1996)
      > pc-1.2               Standard PC (i440FX + PIIX, 1996)
      > pc-1.1               Standard PC (i440FX + PIIX, 1996)
      > pc-1.0               Standard PC (i440FX + PIIX, 1996)
      > pc-0.15              Standard PC (i440FX + PIIX, 1996)
      > pc-0.14              Standard PC (i440FX + PIIX, 1996)
      > pc-0.13              Standard PC (i440FX + PIIX, 1996)
      > pc-0.12              Standard PC (i440FX + PIIX, 1996)
      > pc-0.11              Standard PC (i440FX + PIIX, 1996)
      > pc-0.10              Standard PC (i440FX + PIIX, 1996)
      > q35                  Standard PC (Q35 + ICH9, 2009) (alias of pc-q35-2.2)
      > pc-q35-2.2           Standard PC (Q35 + ICH9, 2009)
      > pc-q35-2.1           Standard PC (Q35 + ICH9, 2009)
      > pc-q35-2.0           Standard PC (Q35 + ICH9, 2009)
      > pc-q35-1.7           Standard PC (Q35 + ICH9, 2009)
      > pc-q35-1.6           Standard PC (Q35 + ICH9, 2009)
      > pc-q35-1.5           Standard PC (Q35 + ICH9, 2009)
      > pc-q35-1.4           Standard PC (Q35 + ICH9, 2009)
      > isapc                ISA-only PC
      > none                 empty machine
      
      RHBZ: https://bugzilla.redhat.com/show_bug.cgi?id=1145042Signed-off-by: NLaszlo Ersek <lersek@redhat.com>
      Reviewed-by: NMichael S. Tsirkin <mst@redhat.com>
      Signed-off-by: NMichael S. Tsirkin <mst@redhat.com>
      Reviewed-by: NPaolo Bonzini <pbonzini@redhat.com>
      Reviewed-by: NMarcel Apfelbaum <marcel.a@redhat.com>
      Acked-by: NDavid Gibson <david@gibson.dropbear.id.au>
      
      562542b6
    • L
      well-defined listing order for machine types · 2709f263
      Laszlo Ersek 提交于
      Commit 261747f1 ("vl: Use MachineClass instead of global QEMUMachine
      list") broke the ordering of the machine types in the user-visible output
      of
      
        qemu-system-XXXX -M \?
      
      This occurred because registration was rebased from a manually maintained
      linked list to GLib hash tables:
      
        qemu_register_machine()
          type_register()
            type_register_internal()
              type_table_add()
                g_hash_table_insert()
      
      and because the listing was rebased accordingly, from the traversal of the
      list to the traversal of the hash table (rendered as an ad-hoc list):
      
        machine_parse()
          object_class_get_list(TYPE_MACHINE)
            object_class_foreach()
              g_hash_table_foreach()
      
      The current order is a "random" one, for practical purposes, which is
      annoying for users.
      
      Introduce new members QEMUMachine.family and MachineClass.family, allowing
      machine types to be "clustered". Introduce a comparator function that
      establishes a total ordering between machine types, ordering machine types
      in the same family next to each other. In machine_parse(), list the
      supported machine types sorted with the comparator function.
      
      The comparator function:
      - sorts whole families before standalone machine types,
      - sorts whole families between each other in alphabetically increasing
        order,
      - sorts machine types inside the same family in alphabetically decreasing
        order,
      - sorts standalone machine types between each other in alphabetically
        increasing order.
      
      After this patch, all machine types are considered standalone, and
      accordingly, the output is alphabetically ascending. This will be refined
      in the following patches.
      
      Effects on the x86_64 output:
      
      Before:
      
      > Supported machines are:
      > pc-0.13              Standard PC (i440FX + PIIX, 1996)
      > pc-i440fx-2.0        Standard PC (i440FX + PIIX, 1996)
      > pc-1.0               Standard PC (i440FX + PIIX, 1996)
      > pc-i440fx-2.1        Standard PC (i440FX + PIIX, 1996)
      > pc-q35-1.7           Standard PC (Q35 + ICH9, 2009)
      > pc-1.1               Standard PC (i440FX + PIIX, 1996)
      > pc-0.14              Standard PC (i440FX + PIIX, 1996)
      > pc-q35-2.0           Standard PC (Q35 + ICH9, 2009)
      > pc-i440fx-1.4        Standard PC (i440FX + PIIX, 1996)
      > pc-i440fx-1.5        Standard PC (i440FX + PIIX, 1996)
      > pc-0.15              Standard PC (i440FX + PIIX, 1996)
      > pc-q35-1.4           Standard PC (Q35 + ICH9, 2009)
      > isapc                ISA-only PC
      > pc                   Standard PC (i440FX + PIIX, 1996) (alias of pc-i440fx-2.2)
      > pc-i440fx-2.2        Standard PC (i440FX + PIIX, 1996) (default)
      > pc-1.2               Standard PC (i440FX + PIIX, 1996)
      > pc-0.10              Standard PC (i440FX + PIIX, 1996)
      > pc-0.11              Standard PC (i440FX + PIIX, 1996)
      > pc-q35-2.1           Standard PC (Q35 + ICH9, 2009)
      > q35                  Standard PC (Q35 + ICH9, 2009) (alias of pc-q35-2.2)
      > pc-q35-2.2           Standard PC (Q35 + ICH9, 2009)
      > pc-i440fx-1.6        Standard PC (i440FX + PIIX, 1996)
      > pc-i440fx-1.7        Standard PC (i440FX + PIIX, 1996)
      > none                 empty machine
      > pc-q35-1.5           Standard PC (Q35 + ICH9, 2009)
      > pc-q35-1.6           Standard PC (Q35 + ICH9, 2009)
      > pc-0.12              Standard PC (i440FX + PIIX, 1996)
      > pc-1.3               Standard PC (i440FX + PIIX, 1996)
      
      After:
      
      > Supported machines are:
      > isapc                ISA-only PC
      > none                 empty machine
      > pc-0.10              Standard PC (i440FX + PIIX, 1996)
      > pc-0.11              Standard PC (i440FX + PIIX, 1996)
      > pc-0.12              Standard PC (i440FX + PIIX, 1996)
      > pc-0.13              Standard PC (i440FX + PIIX, 1996)
      > pc-0.14              Standard PC (i440FX + PIIX, 1996)
      > pc-0.15              Standard PC (i440FX + PIIX, 1996)
      > pc-1.0               Standard PC (i440FX + PIIX, 1996)
      > pc-1.1               Standard PC (i440FX + PIIX, 1996)
      > pc-1.2               Standard PC (i440FX + PIIX, 1996)
      > pc-1.3               Standard PC (i440FX + PIIX, 1996)
      > pc-i440fx-1.4        Standard PC (i440FX + PIIX, 1996)
      > pc-i440fx-1.5        Standard PC (i440FX + PIIX, 1996)
      > pc-i440fx-1.6        Standard PC (i440FX + PIIX, 1996)
      > pc-i440fx-1.7        Standard PC (i440FX + PIIX, 1996)
      > pc-i440fx-2.0        Standard PC (i440FX + PIIX, 1996)
      > pc-i440fx-2.1        Standard PC (i440FX + PIIX, 1996)
      > pc                   Standard PC (i440FX + PIIX, 1996) (alias of pc-i440fx-2.2)
      > pc-i440fx-2.2        Standard PC (i440FX + PIIX, 1996) (default)
      > pc-q35-1.4           Standard PC (Q35 + ICH9, 2009)
      > pc-q35-1.5           Standard PC (Q35 + ICH9, 2009)
      > pc-q35-1.6           Standard PC (Q35 + ICH9, 2009)
      > pc-q35-1.7           Standard PC (Q35 + ICH9, 2009)
      > pc-q35-2.0           Standard PC (Q35 + ICH9, 2009)
      > pc-q35-2.1           Standard PC (Q35 + ICH9, 2009)
      > q35                  Standard PC (Q35 + ICH9, 2009) (alias of pc-q35-2.2)
      > pc-q35-2.2           Standard PC (Q35 + ICH9, 2009)
      
      Effects on the aarch64 output:
      
      Before:
      
      > Supported machines are:
      > lm3s811evb           Stellaris LM3S811EVB
      > canon-a1100          Canon PowerShot A1100 IS
      > vexpress-a15         ARM Versatile Express for Cortex-A15
      > vexpress-a9          ARM Versatile Express for Cortex-A9
      > xilinx-zynq-a9       Xilinx Zynq Platform Baseboard for Cortex-A9
      > connex               Gumstix Connex (PXA255)
      > n800                 Nokia N800 tablet aka. RX-34 (OMAP2420)
      > lm3s6965evb          Stellaris LM3S6965EVB
      > versatileab          ARM Versatile/AB (ARM926EJ-S)
      > borzoi               Borzoi PDA (PXA270)
      > tosa                 Tosa PDA (PXA255)
      > cheetah              Palm Tungsten|E aka. Cheetah PDA (OMAP310)
      > midway               Calxeda Midway (ECX-2000)
      > mainstone            Mainstone II (PXA27x)
      > n810                 Nokia N810 tablet aka. RX-44 (OMAP2420)
      > terrier              Terrier PDA (PXA270)
      > highbank             Calxeda Highbank (ECX-1000)
      > cubieboard           cubietech cubieboard
      > sx1-v1               Siemens SX1 (OMAP310) V1
      > sx1                  Siemens SX1 (OMAP310) V2
      > realview-eb-mpcore   ARM RealView Emulation Baseboard (ARM11MPCore)
      > kzm                  ARM KZM Emulation Baseboard (ARM1136)
      > akita                Akita PDA (PXA270)
      > z2                   Zipit Z2 (PXA27x)
      > musicpal             Marvell 88w8618 / MusicPal (ARM926EJ-S)
      > realview-pb-a8       ARM RealView Platform Baseboard for Cortex-A8
      > versatilepb          ARM Versatile/PB (ARM926EJ-S)
      > realview-eb          ARM RealView Emulation Baseboard (ARM926EJ-S)
      > realview-pbx-a9      ARM RealView Platform Baseboard Explore for Cortex-A9
      > spitz                Spitz PDA (PXA270)
      > none                 empty machine
      > virt                 ARM Virtual Machine
      > collie               Collie PDA (SA-1110)
      > smdkc210             Samsung SMDKC210 board (Exynos4210)
      > verdex               Gumstix Verdex (PXA270)
      > nuri                 Samsung NURI board (Exynos4210)
      > integratorcp         ARM Integrator/CP (ARM926EJ-S)
      
      After:
      
      > Supported machines are:
      > akita                Akita PDA (PXA270)
      > borzoi               Borzoi PDA (PXA270)
      > canon-a1100          Canon PowerShot A1100 IS
      > cheetah              Palm Tungsten|E aka. Cheetah PDA (OMAP310)
      > collie               Collie PDA (SA-1110)
      > connex               Gumstix Connex (PXA255)
      > cubieboard           cubietech cubieboard
      > highbank             Calxeda Highbank (ECX-1000)
      > integratorcp         ARM Integrator/CP (ARM926EJ-S)
      > kzm                  ARM KZM Emulation Baseboard (ARM1136)
      > lm3s6965evb          Stellaris LM3S6965EVB
      > lm3s811evb           Stellaris LM3S811EVB
      > mainstone            Mainstone II (PXA27x)
      > midway               Calxeda Midway (ECX-2000)
      > musicpal             Marvell 88w8618 / MusicPal (ARM926EJ-S)
      > n800                 Nokia N800 tablet aka. RX-34 (OMAP2420)
      > n810                 Nokia N810 tablet aka. RX-44 (OMAP2420)
      > none                 empty machine
      > nuri                 Samsung NURI board (Exynos4210)
      > realview-eb          ARM RealView Emulation Baseboard (ARM926EJ-S)
      > realview-eb-mpcore   ARM RealView Emulation Baseboard (ARM11MPCore)
      > realview-pb-a8       ARM RealView Platform Baseboard for Cortex-A8
      > realview-pbx-a9      ARM RealView Platform Baseboard Explore for Cortex-A9
      > smdkc210             Samsung SMDKC210 board (Exynos4210)
      > spitz                Spitz PDA (PXA270)
      > sx1                  Siemens SX1 (OMAP310) V2
      > sx1-v1               Siemens SX1 (OMAP310) V1
      > terrier              Terrier PDA (PXA270)
      > tosa                 Tosa PDA (PXA255)
      > verdex               Gumstix Verdex (PXA270)
      > versatileab          ARM Versatile/AB (ARM926EJ-S)
      > versatilepb          ARM Versatile/PB (ARM926EJ-S)
      > vexpress-a15         ARM Versatile Express for Cortex-A15
      > vexpress-a9          ARM Versatile Express for Cortex-A9
      > virt                 ARM Virtual Machine
      > xilinx-zynq-a9       Xilinx Zynq Platform Baseboard for Cortex-A9
      > z2                   Zipit Z2 (PXA27x)
      
      RHBZ: https://bugzilla.redhat.com/show_bug.cgi?id=1145042Signed-off-by: NLaszlo Ersek <lersek@redhat.com>
      Reviewed-by: NMichael S. Tsirkin <mst@redhat.com>
      Signed-off-by: NMichael S. Tsirkin <mst@redhat.com>
      Reviewed-by: NPaolo Bonzini <pbonzini@redhat.com>
      Reviewed-by: NMarcel Apfelbaum <marcel.a@redhat.com>
      Acked-by: NDavid Gibson <david@gibson.dropbear.id.au>
      
      2709f263
    • E
      smbios: Fix assertion on socket count calculation · 7dfddd7f
      Eduardo Habkost 提交于
      QEMU currently allows the number of VCPUs to not be a multiple of the
      number of threads per socket, but the smbios socket count calculation
      introduced by commit c97294ec doesn't
      take that into account, triggering an assertion. e.g.:
      
        $ ./x86_64-softmmu/qemu-system-x86_64 -smp 4,sockets=2,cores=6,threads=1
        qemu-system-x86_64: /home/ehabkost/rh/proj/virt/qemu/hw/i386/smbios.c:825: smbios_get_tables: Assertion `smbios_smp_sockets >= 1' failed.
        Aborted (core dumped)
      
      Socket count calculation doesn't belong to smbios.c and should
      eventually be moved to the main SMP topology configuration code. But
      while we don't move the code, at least make it correct by rounding up
      the division.
      
      Cc: Gabriel Somlo <somlo@cmu.edu>
      Cc: qemu-stable@nongnu.org
      Signed-off-by: NEduardo Habkost <ehabkost@redhat.com>
      Reviewed-By: NIgor Mammedov <imammedo@redhat.com>
      Reviewed-by: NMichael S. Tsirkin <mst@redhat.com>
      Signed-off-by: NMichael S. Tsirkin <mst@redhat.com>
      
      7dfddd7f
  2. 22 10月, 2014 1 次提交
  3. 20 10月, 2014 2 次提交
  4. 15 10月, 2014 3 次提交
  5. 03 10月, 2014 3 次提交
    • J
      q35/ahci: Pick up -cdrom and -hda options · d93162e1
      John Snow 提交于
      This patch implements the backend for the Q35 board
      for us to be able to pick up and use drives defined
      by the -cdrom, -hda, or -drive if=ide shorthand options.
      Signed-off-by: NJohn Snow <jsnow@redhat.com>
      Reviewed-by: NMarkus Armbruster <armbru@redhat.com>
      Reviewed-by: NMichael S. Tsirkin <mst@redhat.com>
      Message-id: 1412187569-23452-7-git-send-email-jsnow@redhat.com
      Signed-off-by: NStefan Hajnoczi <stefanha@redhat.com>
      d93162e1
    • J
      ide: Update ide_drive_get to be HBA agnostic · d8f94e1b
      John Snow 提交于
      Instead of duplicating the logic for the if_ide
      (bus,unit) mappings, rely on the blockdev layer
      for managing those mappings for us, and use the
      drive_get_by_index call instead.
      
      This allows ide_drive_get to work for AHCI HBAs
      as well, and can be used in the Q35 initialization.
      
      Lastly, change the nature of the argument to
      ide_drive_get so that represents the number of
      total drives we can support, and not the total
      number of buses. This will prevent array overflows
      if the units-per-default-bus property ever needs
      to be adjusted for compatibility reasons.
      Signed-off-by: NJohn Snow <jsnow@redhat.com>
      Reviewed-by: NMarkus Armbruster <armbru@redhat.com>
      Reviewed-by: NMichael S. Tsirkin <mst@redhat.com>
      Message-id: 1412187569-23452-5-git-send-email-jsnow@redhat.com
      Signed-off-by: NStefan Hajnoczi <stefanha@redhat.com>
      d8f94e1b
    • J
      pc/vl: Add units-per-default-bus property · 16026518
      John Snow 提交于
      This patch adds the 'units_per_default_bus' property which
      allows individual boards to declare their desired
      index => (bus,unit) mapping for their default HBA, so that
      boards such as Q35 can specify that its default if_ide HBA,
      AHCI, only accepts one unit per bus.
      
      This property only overrides the mapping for drives matching
      the block_default_type interface.
      
      This patch also adds this property to *all* past and present
      Q35 machine types. This retroactive addition is justified
      because the previous erroneous index=>(bus,unit) mappings
      caused by lack of such a property were not utilized due to
      lack of initialization code in the Q35 init routine.
      
      Further, semantically, the Q35 board type has always had the
      property that its default HBA, AHCI, only accepts one unit per
      bus. The new code added to add devices to drives relies upon
      the accuracy of this mapping. Thus, the property is applied
      retroactively to reduce complexity of allowing IDE HBAs with
      different units per bus.
      
      Examples:
      
      Prior to this patch, all IDE HBAs were assumed to use 2 units
      per bus (Master, Slave). When using Q35 and AHCI, however, we
      only allow one unit per bus.
      
      -hdb foo.qcow2 would become index=1, or bus=0,unit=1.
      -hdd foo.qcow2 would become index=3, or bus=1,unit=1.
      -drive file=foo.qcow2,index=5 becomes bus=2,unit=1.
      
      These are invalid for AHCI. They now become, under Q35 only:
      
      -hdb foo.qcow2 --> index=1, bus=1, unit=0.
      -hdd foo.qcow2 --> index=3, bus=3, unit=0.
      -drive file=foo.qcow2,index=5 --> bus=5,unit=0.
      
      The mapping is adjusted based on the fact that the default IF
      for the Q35 machine type is IF_IDE, and units-per-default-bus
      overrides the IDE mapping from its default of 2 units per bus
      to just 1 unit per bus.
      Signed-off-by: NJohn Snow <jsnow@redhat.com>
      Reviewed-by: NMarkus Armbruster <armbru@redhat.com>
      Reviewed-by: NMichael S. Tsirkin <mst@redhat.com>
      Message-id: 1412187569-23452-4-git-send-email-jsnow@redhat.com
      Signed-off-by: NStefan Hajnoczi <stefanha@redhat.com>
      16026518
  6. 26 9月, 2014 1 次提交
  7. 22 9月, 2014 1 次提交
  8. 19 9月, 2014 1 次提交
    • M
      pc: leave more space for BIOS allocations · 438f92ee
      Michael S. Tsirkin 提交于
      Since QEMU 2.1, we are allocating more space for ACPI tables, so no
      space is left after initrd for the BIOS to allocate memory.
      
      Besides ACPI tables, there are a few other uses of high memory in
      SeaBIOS: SMBIOS tables and USB drivers use it in particular.  These uses
      allocate a very small amount of memory.  Malloc metadata also lives
      there.  So we need _some_ extra padding there to avoid initrd breakage,
      but not much.
      
      John Snow found a case where RHEL5 was broken by the recent change to
      ACPI_TABLE_SIZE; in his case 4KB of extra padding are fine, but just to
      be safe I am adding 32KB, which is roughly the same amount of padding
      that was left by QEMU 2.0 and earlier.
      
      Move initrd to leave some space for the BIOS.
      
      Cc: qemu-stable@nongnu.org
      Signed-off-by: NPaolo Bonzini <pbonzini@redhat.com>
      Reported-by: NJohn Snow <jsnow@redhat.com>
      Signed-off-by: NMichael S. Tsirkin <mst@redhat.com>
      438f92ee
  9. 16 9月, 2014 3 次提交
  10. 11 9月, 2014 1 次提交
  11. 09 9月, 2014 1 次提交
  12. 03 9月, 2014 2 次提交
    • Z
      acpi-build: Set FORCE_APIC_CLUSTER_MODEL bit for FADT flags · 07b81ed9
      zhanghailiang 提交于
      If we start Windows 2008 R2 DataCenter with number of cpu less than 8,
      The system will use APIC Flat Logical destination mode as default configuration,
      Which has an upper limit of 8 CPUs.
      
      The fault is that VM can not show all processors within Task Manager if
      we hot-add cpus when the number of cpus in VM extends the limit of 8.
      
      If we use cluster destination model, the problem will be solved.
      
      Note:
      This flag was introduced later than ACPI v1.0 specification while QEMU
      generates v1.0 tables only, but...
      
      linux kernel ignores this flag, so patch has no influence on it.
      
      Tested with Win[XPsp3|Srv2003EE|Srv2008DC|Srv2008R2|Srv2012R2], there
      isn't BSODs and guests boot just fine. In cases guest doesn't support
      cpu-hotplug, cpu becomes visible after reboot and in case the guest
      supports cpu-hotplug, it works as expected with this patch.
      
      Cc: qemu-stable@nongnu.org
      Signed-off-by: Nhuangzhichao <huangzhichao@huawei.com>
      Signed-off-by: Nzhanghailiang <zhang.zhanghailiang@huawei.com>
      Reviewed-by: NMichael S. Tsirkin <mst@redhat.com>
      Signed-off-by: NMichael S. Tsirkin <mst@redhat.com>
      Reviewed-By: NIgor Mammedov <imammedo@redhat.com>
      07b81ed9
    • G
      Fix debug print warning · c5539cb4
      Gonglei 提交于
      Steps:
      
      1.enable qemu debug print, using simply scprit as below:
       grep "//#define DEBUG" * -rl | xargs sed -i "s/\/\/#define DEBUG/#define DEBUG/g"
      2. make -j
      3. get some warning:
      hw/i2c/pm_smbus.c: In function 'smb_ioport_writeb':
      hw/i2c/pm_smbus.c:142: warning: format '%04x' expects type 'unsigned int', but argument 2 has type 'hwaddr'
      hw/i2c/pm_smbus.c:142: warning: format '%02x' expects type 'unsigned int', but argument 3 has type 'uint64_t'
      hw/i2c/pm_smbus.c: In function 'smb_ioport_readb':
      hw/i2c/pm_smbus.c:209: warning: format '%04x' expects type 'unsigned int', but argument 2 has type 'hwaddr'
      hw/intc/i8259.c: In function 'pic_ioport_read':
      hw/intc/i8259.c:373: warning: format '%02x' expects type 'unsigned int', but argument 2 has type 'hwaddr'
      hw/input/pckbd.c: In function 'kbd_write_command':
      hw/input/pckbd.c:232: warning: format '%02x' expects type 'unsigned int', but argument 2 has type 'uint64_t'
      hw/input/pckbd.c: In function 'kbd_write_data':
      hw/input/pckbd.c:333: warning: format '%02x' expects type 'unsigned int', but argument 2 has type 'uint64_t'
      hw/isa/apm.c: In function 'apm_ioport_writeb':
      hw/isa/apm.c:44: warning: format '%x' expects type 'unsigned int', but argument 2 has type 'hwaddr'
      hw/isa/apm.c:44: warning: format '%02x' expects type 'unsigned int', but argument 3 has type 'uint64_t'
      hw/isa/apm.c: In function 'apm_ioport_readb':
      hw/isa/apm.c:67: warning: format '%x' expects type 'unsigned int', but argument 2 has type 'hwaddr'
      hw/timer/mc146818rtc.c: In function 'cmos_ioport_write':
      hw/timer/mc146818rtc.c:394: warning: format '%02x' expects type 'unsigned int', but argument 3 has type 'uint64_t'
      hw/i386/pc.c: In function 'port92_write':
      hw/i386/pc.c:479: warning: format '%02x' expects type 'unsigned int', but argument 2 has type 'uint64_t'
      
      Fix them.
      
      Cc: qemu-trivial@nongnu.org
      Signed-off-by: NGonglei <arei.gonglei@huawei.com>
      Signed-off-by: NMichael Tokarev <mjt@tls.msk.ru>
      c5539cb4
  13. 29 8月, 2014 5 次提交
  14. 25 8月, 2014 3 次提交
  15. 18 8月, 2014 2 次提交
  16. 16 8月, 2014 1 次提交