1. 18 7月, 2014 25 次提交
  2. 17 7月, 2014 3 次提交
  3. 16 7月, 2014 5 次提交
  4. 15 7月, 2014 7 次提交
    • P
      Merge remote-tracking branch 'remotes/riku/linux-user-for-upstream' into staging · cbb46f5f
      Peter Maydell 提交于
      * remotes/riku/linux-user-for-upstream:
        linux-user: use TARGET_SA_ONSTACK in get_sigframe
        alloca one extra byte sockets
        linux-user: handle AF_PACKET sockaddrs in target_to_host_sockaddr
        qemu-user: Impl. setsockopt(SO_BINDTODEVICE)
        SIOCGIFINDEX: fix typo
      Signed-off-by: NPeter Maydell <peter.maydell@linaro.org>
      cbb46f5f
    • P
      Merge remote-tracking branch 'remotes/agraf/tags/signed-ppc-for-upstream' into staging · 146ae001
      Peter Maydell 提交于
      Patch queue for ppc - 2014-07-15
      
      Some more bug fixes during the RC phase:
      
        - Fix huge page mapping regressions
        - Fix Book3S thread number enumeration
        - Fix Book3S VFIO permission issue
      
      # gpg: Signature made Tue 15 Jul 2014 15:13:54 BST using RSA key ID 03FEDC60
      # gpg: Can't check signature: public key not found
      
      * remotes/agraf/tags/signed-ppc-for-upstream:
        sPAPR/IOMMU: Fix TCE entry permission
        spapr: Enable use of huge pages
        spapr: Move RMA memory region registration code
        ppc: memory: Replace memory_region_init_ram with memory_region_allocate_system_memory
        target-ppc: Fix number of threads per core limit
      Signed-off-by: NPeter Maydell <peter.maydell@linaro.org>
      146ae001
    • G
      sPAPR/IOMMU: Fix TCE entry permission · 27e27782
      Gavin Shan 提交于
      The permission of TCE entry should exclude physical base address.
      Otherwise, unmapping TCE entry can be interpreted to mapping TCE
      entry wrongly for VFIO devices.
      Signed-off-by: NGavin Shan <gwshan@linux.vnet.ibm.com>
      Acked-by: NAlex Williamson <alex.williamson@redhat.com>
      Signed-off-by: NAlexander Graf <agraf@suse.de>
      27e27782
    • A
      spapr: Enable use of huge pages · f92f5da1
      Alexey Kardashevskiy 提交于
      0b183fc8 "memory: move mem_path handling to
      memory_region_allocate_system_memory" disabled -mempath use for all
      machines that do not use memory_region_allocate_system_memory() to
      register RAM. Since SPAPR uses memory_region_init_ram(), the huge pages
      support was disabled for it.
      
      This replaces memory_region_init_ram()+vmstate_register_ram_global() with
      memory_region_allocate_system_memory() to get huge pages back.
      
      This changes RAM size from (ram_limit - rma_alloc_size) to ram_limit as
      the previous patch moved RMA memory region allocation after RAM allocation
      and therefore this change does not have immediate effect but simplifies
      the code.
      Signed-off-by: NAlexey Kardashevskiy <aik@ozlabs.ru>
      Signed-off-by: NAlexander Graf <agraf@suse.de>
      f92f5da1
    • A
      spapr: Move RMA memory region registration code · 658fa66b
      Alexey Kardashevskiy 提交于
      PPC970 does not support VRMA (virtual RMA) so real memory required
      for SLOF to execute must be allocated by the KVM_ALLOCATE_RMA ioctl.
      Later this memory is used as a part of the guest RAM area.
      The RMA allocating code also registers a memory region for this piece
      of RAM.
      
      We are going to simplify memory regions layout: RMA memory region
      will be a subregion in the RAM memory region, both starting from zero.
      This way we will not have to take care of start address alignment for
      the piece of RAM next to the RMA.
      
      This moves memory region business closer to the RAM memory region
      creation/allocation code.
      
      As this is a mechanical patch, no change in behaviour is expected.
      Signed-off-by: NAlexey Kardashevskiy <aik@ozlabs.ru>
      [agraf: fix compilation on non-kvm systems]
      Signed-off-by: NAlexander Graf <agraf@suse.de>
      658fa66b
    • S
      ppc: memory: Replace memory_region_init_ram with memory_region_allocate_system_memory · e938ba0c
      Shreyas B. Prabhu 提交于
      Commit 0b183fc8:"memory: move mem_path handling to
      memory_region_allocate_system_memory" split memory_region_init_ram and
      memory_region_init_ram_from_file. Also it moved mem-path handling a step
      up from memory_region_init_ram to memory_region_allocate_system_memory.
      
      Therefore for any board that uses memory_region_init_ram directly,
      -mem-path is not supported.
      
      Fix this by replacing memory_region_init_ram with
      memory_region_allocate_system_memory.
      Signed-off-by: NShreyas B. Prabhu <shreyas@linux.vnet.ibm.com>
      Signed-off-by: NAlexander Graf <agraf@suse.de>
      e938ba0c
    • A
      target-ppc: Fix number of threads per core limit · 063cac53
      Alexey Kardashevskiy 提交于
      The number of threads per core is different for POWER6/7/8 CPUs.
      Guest systems do not expect to see more threads per core than
      a specific CPU supports so we need to limit this number.
      This limit is implemented by ppc_get_compat_smt_threads().
      
      However it has a problem as it checks for PCR (Processor Compatibility
      Register) mask, 2.05 means 2 threads per core, 2.06 - 4 threads.
      For POWER8 one would expect PCR_COMPAT_2_07 bit set and
      ppc_get_compat_smt_threads() checking for it to return 8 threads
      per core. But the latest PowerISA spec now is 2.07 and there is
      no 2.07 compatibility mode defined, QEMU does not define it either
      (will be in PowerISA 2.08).
      
      Instead of relying on a PCR mask, this uses kvmppc_smt_threads()
      which returns the maximum supported threads number for KVM or
      1 for TCG.
      Signed-off-by: NAlexey Kardashevskiy <aik@ozlabs.ru>
      Signed-off-by: NAlexander Graf <agraf@suse.de>
      063cac53