Uploaded image for project: 'Qt'
  1. Qt
  2. QTBUG-37031

[regression] some tst_QAtomicInteger_* are failing for BlackBerry 10

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Closed
    • Priority: P1: Critical
    • Resolution: Done
    • Affects Version/s: 5.3.0, 5.4.0
    • Fix Version/s: 5.3.0
    • Component/s: Core: Threads
    • Labels:
      None
    • Environment:
      BlackBerry 10
      BlackBerry Native SDK 10.2
    • Commits:
      c8cde619a5f53521c86114cec64b9dbe73e6fa55

      Description

      After https://codereview.qt-project.org/43290 and https://codereview.qt-project.org/51306 most of the tst_QAtomicInteger_* tests regressed for the BlackBerry 10 platform.

      tst_QAtomicInteger_char
      $ ./tst_qatomicinteger_char -silent
      Testing tst_QAtomicInteger_char
      FAIL!  : tst_QAtomicInteger_char::refDeref(-1) Compared values are not the same
         Actual   (++atomic): 
         Expected (T(value)): �
         Loc: [../tst_qatomicinteger.cpp(369)]
      FAIL!  : tst_QAtomicInteger_char::refDeref(-47) Compared values are not the same
         Actual   (--atomic): 
         Expected (prevValue): 
         Loc: [../tst_qatomicinteger.cpp(368)]
      FAIL!  : tst_QAtomicInteger_char::refDeref(char_min) Compared values are not the same
         Actual   (--atomic): �
         Expected (prevValue): ?
         Loc: [../tst_qatomicinteger.cpp(368)]
      FAIL!  : tst_QAtomicInteger_char::refDeref(char_max) Compared values are not the same
         Actual   (--atomic): ?
         Expected (prevValue): ~
         Loc: [../tst_qatomicinteger.cpp(368)]
      FAIL!  : tst_QAtomicInteger_char::fetchAndSub(0) Compared values are not the same
         Actual   (atomic.load()): 
         Expected (T(value)): 
         Loc: [../tst_qatomicinteger.cpp(540)]
      FAIL!  : tst_QAtomicInteger_char::fetchAndSub(+1) Compared values are not the same
         Actual   (atomic.load()): 
         Expected (T(value)): ?
         Loc: [../tst_qatomicinteger.cpp(540)]
      FAIL!  : tst_QAtomicInteger_char::fetchAndSub(-1) Compared values are not the same
         Actual   (atomic.load()): �
         Expected (newValue1): 
         Loc: [../tst_qatomicinteger.cpp(538)]
      FAIL!  : tst_QAtomicInteger_char::fetchAndSub(-47) Compared values are not the same
         Actual   (atomic.load()): 
         Expected (newValue1): �
         Loc: [../tst_qatomicinteger.cpp(538)]
      FAIL!  : tst_QAtomicInteger_char::fetchAndSub(char_min) Compared values are not the same
         Actual   (atomic.load()): �
         Expected (newValue1): V
         Loc: [../tst_qatomicinteger.cpp(538)]
      FAIL!  : tst_QAtomicInteger_char::fetchAndSub(char_max) Compared values are not the same
         Actual   (atomic.load()): �
         Expected (T(value)): ?
         Loc: [../tst_qatomicinteger.cpp(544)]
      FAIL!  : tst_QAtomicInteger_char::addSub(0) Compared values are not the same
         Actual   (atomic.load()): 
         Expected (T(value)): 
         Loc: [../tst_qatomicinteger.cpp(602)]
      FAIL!  : tst_QAtomicInteger_char::addSub(+1) Compared values are not the same
         Actual   (atomic.load()): 
         Expected (T(value)): ?
         Loc: [../tst_qatomicinteger.cpp(602)]
      FAIL!  : tst_QAtomicInteger_char::addSub(-1) Compared values are not the same
         Actual   (atomic.load()): �
         Expected (newValue2): 
         Loc: [../tst_qatomicinteger.cpp(596)]
      FAIL!  : tst_QAtomicInteger_char::addSub(-47) Compared values are not the same
         Actual   (atomic.load()): 
         Expected (T(value)): 
         Loc: [../tst_qatomicinteger.cpp(594)]
      FAIL!  : tst_QAtomicInteger_char::addSub(char_min) Compared values are not the same
         Actual   (atomic.load()): �
         Expected (T(value)): �
         Loc: [../tst_qatomicinteger.cpp(594)]
      FAIL!  : tst_QAtomicInteger_char::addSub(char_max) Compared values are not the same
         Actual   (atomic.load()): �
         Expected (T(value)): ?
         Loc: [../tst_qatomicinteger.cpp(594)]
      FAIL!  : tst_QAtomicInteger_char::fetchAndOr(-47) Compared values are not the same
         Actual   (atomic.load()): 
         Expected (minusOne): �
         Loc: [../tst_qatomicinteger.cpp(683)]
      FAIL!  : tst_QAtomicInteger_char::fetchAndOr(char_min) Compared values are not the same
         Actual   (atomic.load()): �
         Expected (T(value | 1)): �
         Loc: [../tst_qatomicinteger.cpp(681)]
      FAIL!  : tst_QAtomicInteger_char::fetchAndAnd(-1) Compared values are not the same
         Actual   (atomic.load()): �
         Expected (T(value & 0xf)): ?
         Loc: [../tst_qatomicinteger.cpp(724)]
      FAIL!  : tst_QAtomicInteger_char::fetchAndAnd(-47) Compared values are not the same
         Actual   (atomic.load()): 
         Expected (T(value & 0xf)): ?
         Loc: [../tst_qatomicinteger.cpp(724)]
      FAIL!  : tst_QAtomicInteger_char::fetchAndAnd(char_min) Compared values are not the same
         Actual   (atomic.load()): �
         Expected (T(value & 0xf)): 
         Loc: [../tst_qatomicinteger.cpp(724)]
      FAIL!  : tst_QAtomicInteger_char::fetchAndXor(0) Compared values are not the same
         Actual   (atomic.load()): 
         Expected (T(value)): 
         Loc: [../tst_qatomicinteger.cpp(772)]
      FAIL!  : tst_QAtomicInteger_char::fetchAndXor(+1) Compared values are not the same
         Actual   (atomic.load()): 
         Expected (T(value)): ?
         Loc: [../tst_qatomicinteger.cpp(772)]
      FAIL!  : tst_QAtomicInteger_char::fetchAndXor(42) Compared values are not the same
         Actual   (atomic.load()): 
         Expected (T(value)): *
         Loc: [../tst_qatomicinteger.cpp(772)]
      FAIL!  : tst_QAtomicInteger_char::fetchAndXor(-1) Compared values are not the same
         Actual   (atomic.load()): �
         Expected (T(value ^ pattern)): 3
         Loc: [../tst_qatomicinteger.cpp(770)]
      FAIL!  : tst_QAtomicInteger_char::fetchAndXor(-47) Compared values are not the same
         Actual   (atomic.load()): 
         Expected (T(value ^ pattern)): ?
         Loc: [../tst_qatomicinteger.cpp(770)]
      FAIL!  : tst_QAtomicInteger_char::fetchAndXor(char_min) Compared values are not the same
         Actual   (atomic.load()): �
         Expected (T(value ^ pattern)): L
         Loc: [../tst_qatomicinteger.cpp(770)]
      FAIL!  : tst_QAtomicInteger_char::fetchAndXor(char_max) Compared values are not the same
         Actual   (atomic.load()): �
         Expected (T(value)): ?
         Loc: [../tst_qatomicinteger.cpp(772)]
      Totals: 80 passed, 28 failed, 0 skipped
      
      tst_QAtomicInteger_short
      Testing tst_QAtomicInteger_short
      FAIL!  : tst_QAtomicInteger_short::refDeref(-1) Compared values are not the same
         Actual   (++atomic): 0
         Expected (T(value)): -1
         Loc: [../tst_qatomicinteger.cpp(369)]
      FAIL!  : tst_QAtomicInteger_short::refDeref(-47) Compared values are not the same
         Actual   (--atomic): -47
         Expected (prevValue): -48
         Loc: [../tst_qatomicinteger.cpp(368)]
      FAIL!  : tst_QAtomicInteger_short::refDeref(int8_min) Compared values are not the same
         Actual   (--atomic): -128
         Expected (prevValue): -129
         Loc: [../tst_qatomicinteger.cpp(368)]
      FAIL!  : tst_QAtomicInteger_short::refDeref(-uint8_max) Compared values are not the same
         Actual   (--atomic): -255
         Expected (prevValue): -256
         Loc: [../tst_qatomicinteger.cpp(368)]
      FAIL!  : tst_QAtomicInteger_short::refDeref(short_min) Compared values are not the same
         Actual   (--atomic): -32768
         Expected (prevValue): 32767
         Loc: [../tst_qatomicinteger.cpp(368)]
      FAIL!  : tst_QAtomicInteger_short::refDeref(short_max) Compared values are not the same
         Actual   (--atomic): 32767
         Expected (prevValue): 32766
         Loc: [../tst_qatomicinteger.cpp(368)]
      FAIL!  : tst_QAtomicInteger_short::fetchAndSub(0) Compared values are not the same
         Actual   (atomic.load()): -42
         Expected (T(value)): 0
         Loc: [../tst_qatomicinteger.cpp(540)]
      FAIL!  : tst_QAtomicInteger_short::fetchAndSub(+1) Compared values are not the same
         Actual   (atomic.load()): -41
         Expected (T(value)): 1
         Loc: [../tst_qatomicinteger.cpp(540)]
      FAIL!  : tst_QAtomicInteger_short::fetchAndSub(-1) Compared values are not the same
         Actual   (atomic.load()): -1
         Expected (newValue1): -43
         Loc: [../tst_qatomicinteger.cpp(538)]
      FAIL!  : tst_QAtomicInteger_short::fetchAndSub(-47) Compared values are not the same
         Actual   (atomic.load()): -47
         Expected (newValue1): -89
         Loc: [../tst_qatomicinteger.cpp(538)]
      FAIL!  : tst_QAtomicInteger_short::fetchAndSub(int8_min) Compared values are not the same
         Actual   (atomic.load()): -128
         Expected (newValue1): -170
         Loc: [../tst_qatomicinteger.cpp(538)]
      FAIL!  : tst_QAtomicInteger_short::fetchAndSub(-uint8_max) Compared values are not the same
         Actual   (atomic.load()): -255
         Expected (newValue1): -297
         Loc: [../tst_qatomicinteger.cpp(538)]
      FAIL!  : tst_QAtomicInteger_short::fetchAndSub(short_min) Compared values are not the same
         Actual   (atomic.load()): -32768
         Expected (newValue1): 32726
         Loc: [../tst_qatomicinteger.cpp(538)]
      FAIL!  : tst_QAtomicInteger_short::fetchAndSub(short_max) Compared values are not the same
         Actual   (atomic.load()): -32727
         Expected (T(value)): 32767
         Loc: [../tst_qatomicinteger.cpp(544)]
      FAIL!  : tst_QAtomicInteger_short::addSub(0) Compared values are not the same
         Actual   (atomic.load()): -42
         Expected (T(value)): 0
         Loc: [../tst_qatomicinteger.cpp(602)]
      FAIL!  : tst_QAtomicInteger_short::addSub(+1) Compared values are not the same
         Actual   (atomic.load()): -41
         Expected (T(value)): 1
         Loc: [../tst_qatomicinteger.cpp(602)]
      FAIL!  : tst_QAtomicInteger_short::addSub(-1) Compared values are not the same
         Actual   (atomic.load()): -1
         Expected (newValue2): -43
         Loc: [../tst_qatomicinteger.cpp(596)]
      FAIL!  : tst_QAtomicInteger_short::addSub(-47) Compared values are not the same
         Actual   (atomic.load()): -5
         Expected (T(value)): -47
         Loc: [../tst_qatomicinteger.cpp(594)]
      FAIL!  : tst_QAtomicInteger_short::addSub(int8_min) Compared values are not the same
         Actual   (atomic.load()): -86
         Expected (T(value)): -128
         Loc: [../tst_qatomicinteger.cpp(594)]
      FAIL!  : tst_QAtomicInteger_short::addSub(-uint8_max) Compared values are not the same
         Actual   (atomic.load()): -213
         Expected (T(value)): -255
         Loc: [../tst_qatomicinteger.cpp(594)]
      FAIL!  : tst_QAtomicInteger_short::addSub(short_min) Compared values are not the same
         Actual   (atomic.load()): -32726
         Expected (T(value)): -32768
         Loc: [../tst_qatomicinteger.cpp(594)]
      FAIL!  : tst_QAtomicInteger_short::addSub(short_max) Compared values are not the same
         Actual   (atomic.load()): -32727
         Expected (T(value)): 32767
         Loc: [../tst_qatomicinteger.cpp(594)]
      FAIL!  : tst_QAtomicInteger_short::fetchAndOr(-47) Compared values are not the same
         Actual   (atomic.load()): -47
         Expected (minusOne): -1
         Loc: [../tst_qatomicinteger.cpp(683)]
      FAIL!  : tst_QAtomicInteger_short::fetchAndOr(int8_min) Compared values are not the same
         Actual   (atomic.load()): -128
         Expected (T(value | 1)): -127
         Loc: [../tst_qatomicinteger.cpp(681)]
      FAIL!  : tst_QAtomicInteger_short::fetchAndOr(-uint8_max) Compared values are not the same
         Actual   (atomic.load()): -255
         Expected (minusOne): -1
         Loc: [../tst_qatomicinteger.cpp(683)]
      FAIL!  : tst_QAtomicInteger_short::fetchAndOr(short_min) Compared values are not the same
         Actual   (atomic.load()): -32768
         Expected (T(value | 1)): -32767
         Loc: [../tst_qatomicinteger.cpp(681)]
      FAIL!  : tst_QAtomicInteger_short::fetchAndAnd(-1) Compared values are not the same
         Actual   (atomic.load()): -1
         Expected (T(value & 0xf)): 15
         Loc: [../tst_qatomicinteger.cpp(724)]
      FAIL!  : tst_QAtomicInteger_short::fetchAndAnd(-47) Compared values are not the same
         Actual   (atomic.load()): -47
         Expected (T(value & 0xf)): 1
         Loc: [../tst_qatomicinteger.cpp(724)]
      FAIL!  : tst_QAtomicInteger_short::fetchAndAnd(int8_min) Compared values are not the same
         Actual   (atomic.load()): -128
         Expected (T(value & 0xf)): 0
         Loc: [../tst_qatomicinteger.cpp(724)]
      FAIL!  : tst_QAtomicInteger_short::fetchAndAnd(-uint8_max) Compared values are not the same
         Actual   (atomic.load()): -255
         Expected (T(value & 0xf)): 1
         Loc: [../tst_qatomicinteger.cpp(724)]
      FAIL!  : tst_QAtomicInteger_short::fetchAndAnd(short_min) Compared values are not the same
         Actual   (atomic.load()): -32768
         Expected (T(value & 0xf)): 0
         Loc: [../tst_qatomicinteger.cpp(724)]
      FAIL!  : tst_QAtomicInteger_short::fetchAndXor(0) Compared values are not the same
         Actual   (atomic.load()): -13108
         Expected (T(value)): 0
         Loc: [../tst_qatomicinteger.cpp(772)]
      FAIL!  : tst_QAtomicInteger_short::fetchAndXor(+1) Compared values are not the same
         Actual   (atomic.load()): -13107
         Expected (T(value)): 1
         Loc: [../tst_qatomicinteger.cpp(772)]
      FAIL!  : tst_QAtomicInteger_short::fetchAndXor(42) Compared values are not the same
         Actual   (atomic.load()): -13082
         Expected (T(value)): 42
         Loc: [../tst_qatomicinteger.cpp(772)]
      FAIL!  : tst_QAtomicInteger_short::fetchAndXor(-1) Compared values are not the same
         Actual   (atomic.load()): -1
         Expected (T(value ^ pattern)): 13107
         Loc: [../tst_qatomicinteger.cpp(770)]
      FAIL!  : tst_QAtomicInteger_short::fetchAndXor(-47) Compared values are not the same
         Actual   (atomic.load()): -47
         Expected (T(value ^ pattern)): 13085
         Loc: [../tst_qatomicinteger.cpp(770)]
      FAIL!  : tst_QAtomicInteger_short::fetchAndXor(int8_min) Compared values are not the same
         Actual   (atomic.load()): -128
         Expected (T(value ^ pattern)): 13132
         Loc: [../tst_qatomicinteger.cpp(770)]
      FAIL!  : tst_QAtomicInteger_short::fetchAndXor(int8_max) Compared values are not the same
         Actual   (atomic.load()): -13133
         Expected (T(value)): 127
         Loc: [../tst_qatomicinteger.cpp(772)]
      FAIL!  : tst_QAtomicInteger_short::fetchAndXor(uint8_max) Compared values are not the same
         Actual   (atomic.load()): -13261
         Expected (T(value)): 255
         Loc: [../tst_qatomicinteger.cpp(772)]
      FAIL!  : tst_QAtomicInteger_short::fetchAndXor(-uint8_max) Compared values are not the same
         Actual   (atomic.load()): -255
         Expected (T(value ^ pattern)): 13261
         Loc: [../tst_qatomicinteger.cpp(770)]
      FAIL!  : tst_QAtomicInteger_short::fetchAndXor(short_min) Compared values are not the same
         Actual   (atomic.load()): -32768
         Expected (T(value ^ pattern)): 19660
         Loc: [../tst_qatomicinteger.cpp(770)]
      FAIL!  : tst_QAtomicInteger_short::fetchAndXor(short_max) Compared values are not the same
         Actual   (atomic.load()): -19661
         Expected (T(value)): 32767
         Loc: [../tst_qatomicinteger.cpp(772)]
      Totals: 126 passed, 42 failed, 0 skipped
      
      tst_QAtomicInteger_schar
      Testing tst_QAtomicInteger_schar
      FAIL!  : tst_QAtomicInteger_schar::refDeref(-1) Compared values are not the same
         Loc: [../tst_qatomicinteger.cpp(369)]
      FAIL!  : tst_QAtomicInteger_schar::refDeref(-47) Compared values are not the same
         Loc: [../tst_qatomicinteger.cpp(368)]
      FAIL!  : tst_QAtomicInteger_schar::refDeref(schar_min) Compared values are not the same
         Loc: [../tst_qatomicinteger.cpp(368)]
      FAIL!  : tst_QAtomicInteger_schar::refDeref(schar_max) Compared values are not the same
         Loc: [../tst_qatomicinteger.cpp(368)]
      FAIL!  : tst_QAtomicInteger_schar::fetchAndSub(0) Compared values are not the same
         Loc: [../tst_qatomicinteger.cpp(540)]
      FAIL!  : tst_QAtomicInteger_schar::fetchAndSub(+1) Compared values are not the same
         Loc: [../tst_qatomicinteger.cpp(540)]
      FAIL!  : tst_QAtomicInteger_schar::fetchAndSub(-1) Compared values are not the same
         Loc: [../tst_qatomicinteger.cpp(538)]
      FAIL!  : tst_QAtomicInteger_schar::fetchAndSub(-47) Compared values are not the same
         Loc: [../tst_qatomicinteger.cpp(538)]
      FAIL!  : tst_QAtomicInteger_schar::fetchAndSub(schar_min) Compared values are not the same
         Loc: [../tst_qatomicinteger.cpp(538)]
      FAIL!  : tst_QAtomicInteger_schar::fetchAndSub(schar_max) Compared values are not the same
         Loc: [../tst_qatomicinteger.cpp(544)]
      FAIL!  : tst_QAtomicInteger_schar::addSub(0) Compared values are not the same
         Loc: [../tst_qatomicinteger.cpp(602)]
      FAIL!  : tst_QAtomicInteger_schar::addSub(+1) Compared values are not the same
         Loc: [../tst_qatomicinteger.cpp(602)]
      FAIL!  : tst_QAtomicInteger_schar::addSub(-1) Compared values are not the same
         Loc: [../tst_qatomicinteger.cpp(596)]
      FAIL!  : tst_QAtomicInteger_schar::addSub(-47) Compared values are not the same
         Loc: [../tst_qatomicinteger.cpp(594)]
      FAIL!  : tst_QAtomicInteger_schar::addSub(schar_min) Compared values are not the same
         Loc: [../tst_qatomicinteger.cpp(594)]
      FAIL!  : tst_QAtomicInteger_schar::addSub(schar_max) Compared values are not the same
         Loc: [../tst_qatomicinteger.cpp(594)]
      FAIL!  : tst_QAtomicInteger_schar::fetchAndOr(-47) Compared values are not the same
         Loc: [../tst_qatomicinteger.cpp(683)]
      FAIL!  : tst_QAtomicInteger_schar::fetchAndOr(schar_min) Compared values are not the same
         Loc: [../tst_qatomicinteger.cpp(681)]
      FAIL!  : tst_QAtomicInteger_schar::fetchAndAnd(-1) Compared values are not the same
         Loc: [../tst_qatomicinteger.cpp(724)]
      FAIL!  : tst_QAtomicInteger_schar::fetchAndAnd(-47) Compared values are not the same
         Loc: [../tst_qatomicinteger.cpp(724)]
      FAIL!  : tst_QAtomicInteger_schar::fetchAndAnd(schar_min) Compared values are not the same
         Loc: [../tst_qatomicinteger.cpp(724)]
      FAIL!  : tst_QAtomicInteger_schar::fetchAndXor(0) Compared values are not the same
         Loc: [../tst_qatomicinteger.cpp(772)]
      FAIL!  : tst_QAtomicInteger_schar::fetchAndXor(+1) Compared values are not the same
         Loc: [../tst_qatomicinteger.cpp(772)]
      FAIL!  : tst_QAtomicInteger_schar::fetchAndXor(42) Compared values are not the same
         Loc: [../tst_qatomicinteger.cpp(772)]
      FAIL!  : tst_QAtomicInteger_schar::fetchAndXor(-1) Compared values are not the same
         Loc: [../tst_qatomicinteger.cpp(770)]
      FAIL!  : tst_QAtomicInteger_schar::fetchAndXor(-47) Compared values are not the same
         Loc: [../tst_qatomicinteger.cpp(770)]
      FAIL!  : tst_QAtomicInteger_schar::fetchAndXor(schar_min) Compared values are not the same
         Loc: [../tst_qatomicinteger.cpp(770)]
      FAIL!  : tst_QAtomicInteger_schar::fetchAndXor(schar_max) Compared values are not the same
         Loc: [../tst_qatomicinteger.cpp(772)]
      Totals: 80 passed, 28 failed, 0 skipped
      

      these tests were passing before the changes were merged.

        Attachments

          Issue Links

          No reviews matched the request. Check your Options in the drop-down menu of this sections header.

            Activity

              People

              Assignee:
              thiago Thiago Macieira
              Reporter:
              seahumad [BB] Sergio Ahumada (Inactive)
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

                Dates

                Created:
                Updated:
                Resolved:

                  Gerrit Reviews

                  There are no open Gerrit changes