Skip to content
Snippets Groups Projects
  1. Mar 20, 2018
    • Luke Shumaker's avatar
      linux-user: init_guest_space: Try to make ARM space+commpage continuous · 2a53535a
      Luke Shumaker authored
      
      At a fixed distance after the usable memory that init_guest_space maps, for
      32-bit ARM targets we also need to map a commpage.  The normal
      init_guest_space logic doesn't keep this in mind when searching for an
      address range.
      
      If !host_start, then try to find a big continuous segment where we can put
      both the usable memory and the commpage; we then munmap that segment and
      set current_start to that address; and let the normal code mmap the usable
      memory and the commpage separately.  That is: if we don't have hint of
      where to start looking for memory, come up with one that is better than
      NULL.  Depending on host_size and guest_start, there may or may not be a
      gap between the usable memory and the commpage, so this is slightly more
      restrictive than it needs to be; but it's only a hint, so that's OK.
      
      We only do that for !host start, because if host_start, then either:
       - we got an address passed in with -B, in which case we don't want to
         interfere with what the user said;
       - or host_start is based off of the ELF image's loaddr.  The check "if
         (host_start && real_start != current_start)" suggests that we really
         want lowest available address that is >= loaddr.  I don't know why that
         is, but I'm trusting that Paul Brook knew what he was doing when he
         wrote the original version of that check in
         c581deda way back in 2010.
      
      Signed-off-by: default avatarLuke Shumaker <lukeshu@parabola.nu>
      Message-Id: <20171228180814.9749-11-lukeshu@lukeshu.com>
      Signed-off-by: default avatarLaurent Vivier <laurent@vivier.eu>
      2a53535a
  2. Mar 19, 2018
    • Igor Mammedov's avatar
      Use cpu_create(type) instead of cpu_init(cpu_model) · 2278b939
      Igor Mammedov authored
      
      With all targets defining CPU_RESOLVING_TYPE, refactor
      cpu_parse_cpu_model(type, cpu_model) to parse_cpu_model(cpu_model)
      so that callers won't have to know internal resolving cpu
      type. Place it in exec.c so it could be called from both
      target independed vl.c and *-user/main.c.
      
      That allows us to stop abusing cpu type from
        MachineClass::default_cpu_type
      as resolver class in vl.c which were confusing part of
      cpu_parse_cpu_model().
      
      Also with new parse_cpu_model(), the last users of cpu_init()
      in null-machine.c and bsd/linux-user targets could be switched
      to cpu_create() API and cpu_init() API will be removed by
      follow up patch.
      
      With no longer users left remove MachineState::cpu_model field,
      new code should use MachineState::cpu_type instead and
      leave cpu_model parsing to generic code in vl.c.
      
      Signed-off-by: default avatarIgor Mammedov <imammedo@redhat.com>
      Reviewed-by: default avatarEduardo Habkost <ehabkost@redhat.com>
      Message-Id: <1518000027-274608-5-git-send-email-imammedo@redhat.com>
      [ehabkost: Fix bsd-user build error]
      Signed-off-by: default avatarEduardo Habkost <ehabkost@redhat.com>
      2278b939
  3. Mar 16, 2018
    • Max Filippov's avatar
      target/xtensa: add linux-user support · ba7651fb
      Max Filippov authored
      
      Import list of syscalls from the kernel source. Conditionalize code/data
      that is only used with softmmu. Implement exception handlers. Implement
      signal hander (only the core registers for now, no coprocessors or TIE).
      
      Cc: Riku Voipio <riku.voipio@iki.fi>
      Cc: Laurent Vivier <laurent@vivier.eu>
      Signed-off-by: default avatarMax Filippov <jcmvbkbc@gmail.com>
      ba7651fb
  4. Mar 13, 2018
  5. Mar 12, 2018
    • Thomas Huth's avatar
      Polish the version strings containing the package version · 7e563bfb
      Thomas Huth authored
      Since commit 67a1de0d there is no space anymore between the
      version number and the parentheses when running configure with
      --with-pkgversion=foo :
      
       $ qemu-system-s390x --version
       QEMU emulator version 2.11.50(foo)
      
      But the space is included when building without that option
      when building from a git checkout:
      
       $ qemu-system-s390x --version
       QEMU emulator version 2.11.50 (v2.11.0-1494-gbec9c64-dirty)
      
      The same confusion exists with the "query-version" QMP command.
      Let's fix this by introducing a proper QEMU_FULL_VERSION definition
      that includes the space and parentheses, while the QEMU_PKGVERSION
      should just cleanly contain the package version string itself.
      Note that this also changes the behavior of the "query-version" QMP
      command (the space and parentheses are not included there anymore),
      but that's supposed to be OK since the strings there are not meant
      to be parsed by other tools.
      
      Fixes: 67a1de0d
      Buglink: https://bugs.launchpad.net/qemu/+bug/1673373
      
      
      Signed-off-by: default avatarThomas Huth <thuth@redhat.com>
      Message-Id: <1518692807-25859-1-git-send-email-thuth@redhat.com>
      Signed-off-by: default avatarPaolo Bonzini <pbonzini@redhat.com>
      7e563bfb
  6. Mar 09, 2018
  7. Mar 06, 2018
  8. Mar 02, 2018
  9. Mar 01, 2018
  10. Feb 25, 2018
  11. Feb 18, 2018
Loading