1. 23 2月, 2013 1 次提交
  2. 21 2月, 2013 1 次提交
  3. 19 2月, 2013 2 次提交
  4. 18 2月, 2013 3 次提交
  5. 17 2月, 2013 1 次提交
  6. 12 2月, 2013 2 次提交
  7. 07 2月, 2013 1 次提交
    • P
      tests/test-string-input-visitor: Handle errors provoked by fuzz test · 01845438
      Peter Maydell 提交于
      It's OK and expected for visitors to return errors when presented with
      the fuzz test's random data. Since the fuzzer doesn't care about
      errors, we pass in NULL rather than an Error**. This fixes a bug in
      the fuzzer where it was passing the same Error** into each visitor,
      with the effect that once one visitor returned an error, each later
      visitor would notice that it had been passed in an Error** representing
      an already set error, and do nothing.
      
      For the case of visit_type_str() we also need to handle the case where
      an error means that the visitor doesn't set our char*. We initialize
      the pointer to NULL so we can safely g_free() it regardless of whether
      the visitor allocated a string for us or not.
      
      This fixes a problem where this test failed the MacOSX malloc()
      consistency checks and might segfault on other platforms [due
      to calling free() on an uninitialized pointer variable when
      visit_type_str() failed.].
      Signed-off-by: NPeter Maydell <peter.maydell@linaro.org>
      Reviewed-by: NAndreas Färber <afaerber@suse.de>
      Signed-off-by: NLuiz Capitulino <lcapitulino@redhat.com>
      01845438
  8. 05 2月, 2013 1 次提交
    • E
      cutils: unsigned int parsing functions · e3f9fe2d
      Eduardo Habkost 提交于
      There are lots of duplicate parsing code using strto*() in QEMU, and
      most of that code is broken in one way or another. Even the visitors
      code have duplicate integer parsing code[1]. This introduces functions
      to help parsing unsigned int values: parse_uint() and parse_uint_full().
      
      Parsing functions for signed ints and floats will be submitted later.
      
      parse_uint_full() has all the checks made by opts_type_uint64() at
      opts-visitor.c:
      
       - Check for NULL (returns -EINVAL)
       - Check for negative numbers (returns -EINVAL)
       - Check for empty string (returns -EINVAL)
       - Check for overflow or other errno values set by strtoll() (returns
         -errno)
       - Check for end of string (reject invalid characters after number)
         (returns -EINVAL)
      
      parse_uint() does everything above except checking for the end of the
      string, so callers can continue parsing the remainder of string after
      the number.
      
      Unit tests included.
      
      [1] string-input-visitor.c:parse_int() could use the same parsing code
          used by opts-visitor.c:opts_type_int(), instead of duplicating that
          logic.
      Signed-off-by: NEduardo Habkost <ehabkost@redhat.com>
      Reviewed-by: NEric Blake <eblake@redhat.com>
      Reviewed-by: NLaszlo Ersek <lersek@redhat.com>
      Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
      e3f9fe2d
  9. 02 2月, 2013 2 次提交
    • A
      sparc: disable qtest in make check · baeddded
      Anthony Liguori 提交于
      We've seen this repeatedly in buildbot but I can now reliably
      reproduce it myself too.  With a few hundred runs of 'make check',
      qemu-system-sparc will hang consuming 100% CPU.  I've attached GDB
      to the hung process and unfortunately, I can't get anything useful
      out of GDB (RIP is not a valid simple and there is nothing else on
      the stack).
      
      At any rate, since this only manifests in qemu-system-sparc and it
      doesn't appear to be a qtest specific problem, I think we should
      disable it until the problem is resolved.
      Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
      baeddded
    • E
      libqtest: Wait for the right child PID after killing QEMU · 6bf00766
      Eduardo Habkost 提交于
      When running "make check" with gcov enabled, we get the following
      message:
      
         hw/tmp105.gcda:cannot open data file, assuming not executed
      
      The problem happens because:
      
       * tmp105-test exits before QEMU exits, because waitpid() at
         qtest_quit() fails;
       * waitpid() fails because there's another process already
         waiting for the QEMU process;
       * The process that is already waiting for QEMU is the child created by
         qtest_init() to run system();
       * qtest_quit() is incorrectly waiting for the QEMU PID directly instead
         of the child created by qtest_init().
      
      This fixes the problem by sending SIGTERM to QEMU, but waiting for the
      child process created by qtest_init() (that exits immediately after QEMU
      exits).
      Reported-by: NAndreas Färber <afaerber@suse.de>
      Signed-off-by: NEduardo Habkost <ehabkost@redhat.com>
      Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
      6bf00766
  10. 01 2月, 2013 4 次提交
  11. 30 1月, 2013 1 次提交
  12. 27 1月, 2013 1 次提交
  13. 26 1月, 2013 9 次提交
  14. 17 1月, 2013 3 次提交
  15. 13 1月, 2013 8 次提交