bugGNU Octave - Bugs: bug #55521, [octave forge] (image) Unit tests...

 
 

bug #55521: [octave forge] (image) Unit tests for bwpack and bwunpack fail on big endian architectures

Submitter:  Rafael Laboissière <rlaboiss>
Submitted:  Sat 19 Jan 2019 09:02:15 PM UTC
   
 
Category:  Octave Package Severity:  3 - Normal
Priority:  5 - Normal Item Group:  Other
Status:  None Assigned to:  None
Originator Name:  Open/Closed:  * Open
Release:  * other Operating System:  * GNU/Linux
Fixed Release:  None Planned Release:  None
* Mandatory Fields

Add a New Comment Rich Markup
   

Jump to the original submission

Wed 23 Jan 2019 07:24:22 PM UTC, comment #8: 
Avinoam Kalma <avinoam>
Group Member
Wed 23 Jan 2019 07:20:45 PM UTC, comment #7: 
Avinoam Kalma <avinoam>
Group Member
Wed 23 Jan 2019 07:19:33 PM UTC, comment #6: 

Could we add the bug number comment "## bug #55521" also to this test in bwpack.m?

assert (bwpack (eye (5)), uint32 ([1 2 4 8 16]))

(Currently only 4 out of the 5 new xtests are marked with the bug number.)


Hartmut <hardy>
Wed 23 Jan 2019 07:01:30 PM UTC, comment #5: 
Avinoam Kalma <avinoam>
Group Member
Tue 22 Jan 2019 04:44:16 AM UTC, comment #4: 

In this case, please apply the attached patch for now, such that the test will not fial on big-endian systems.

(file #46068)

Rafael Laboissière <rlaboiss>
Mon 21 Jan 2019 11:25:34 AM UTC, comment #3: 

Thank you for the bug report. This is a known issue in Octave core. Duplicate of bug #54931.

I'd prefer to not do anything in the image package itself, since any effort on fixing this for the package would be better spent trying to fix it in core.

Carnë Draug <carandraug>
Group Member
Sun 20 Jan 2019 06:31:19 PM UTC, comment #2: 

Adding people to CC.

Avinoam Kalma <avinoam>
Group Member
Sat 19 Jan 2019 09:03:10 PM UTC, comment #1: 

The title of the bug went wrong.  It is related to the OF package image, not signal.  Please, fix it.

Rafael Laboissière <rlaboiss>
Sat 19 Jan 2019 09:02:15 PM UTC, original submission:  

Some unit tests for functions bwpack and bwunpack are failing on Debian GNU/Linux big-endian systems (mips and [s390x https://buildd.debian.org/status/fetch.php?pkg=octave-image&arch=s390x&ver=2.10.0-1&stamp=1546707021&raw=0] architectures).

Here is an excerpt of the build log with the problematic tests:


[inst/bwpack.m]
>>>>> /<<PKGBUILDDIR>>/inst/bwpack.m
***** error id=Octave:invalid-fun-call bwpack ()
***** error id=Octave:invalid-input-arg bwpack ("text")
***** assert (bwpack (eye (5)), uint32 ([1 2 4 8 16]))
!!!!! test failed
ASSERT errors for:  assert (bwpack (eye (5)),uint32 ([1, 2, 4, 8, 16]))

  Location  |  Observed  |  Expected  |  Reason
    (1)        16777216        1         Abs err 1.6777e+07 exceeds tol 0 by 2e+07
    (2)        33554432        2         Abs err 3.3554e+07 exceeds tol 0 by 3e+07
    (3)        67108864        4         Abs err 6.7109e+07 exceeds tol 0 by 7e+07
    (4)       134217728        8         Abs err 1.3422e+08 exceeds tol 0 by 1e+08
    (5)       268435456        16        Abs err 2.6844e+08 exceeds tol 0 by 3e+08
***** assert (bwpack (repmat (eye (4), 15, 1)),
        uint32 ([286331153    572662306    1145324612    2290649224
                  17895697     35791394      71582788     143165576]))
!!!!! test failed
ASSERT errors for:  assert (bwpack (repmat (eye (4), 15, 1)),uint32 ([286331153, 572662306, 1145324612, 2290649224; 17895697, 35791394, 71582788, 143165576]))

  Location  |  Observed  |  Expected  |  Reason
   (2,1)      286331137     17895697     Abs err 2.6844e+08 exceeds tol 0 by 3e+08
   (2,2)      572662274     35791394     Abs err 5.3687e+08 exceeds tol 0 by 5e+08
   (2,3)      1145324548    71582788     Abs err 1.0737e+09 exceeds tol 0 by 1e+09
   (2,4)      2290649096   143165576     Abs err 2.1475e+09 exceeds tol 0 by 2e+09
***** assert (bwpack (ones (3, 3, 3, 3)), repmat (uint32 (7), 1, 3, 3, 3))
!!!!! test failed
ASSERT errors for:  assert (bwpack (ones (3, 3, 3, 3)),repmat (uint32 (7), 1, 3, 3, 3))

  Location  |  Observed  |  Expected  |  Reason
 (1,1,1,1)    117440512        7         Abs err 1.1744e+08 exceeds tol 0 by 1e+08
 (1,2,1,1)    117440512        7         Abs err 1.1744e+08 exceeds tol 0 by 1e+08
 (1,3,1,1)    117440512        7         Abs err 1.1744e+08 exceeds tol 0 by 1e+08
 (1,1,2,1)    117440512        7         Abs err 1.1744e+08 exceeds tol 0 by 1e+08
 (1,2,2,1)    117440512        7         Abs err 1.1744e+08 exceeds tol 0 by 1e+08
 (1,3,2,1)    117440512        7         Abs err 1.1744e+08 exceeds tol 0 by 1e+08
 (1,1,3,1)    117440512        7         Abs err 1.1744e+08 exceeds tol 0 by 1e+08
 (1,2,3,1)    117440512        7         Abs err 1.1744e+08 exceeds tol 0 by 1e+08
 (1,3,3,1)    117440512        7         Abs err 1.1744e+08 exceeds tol 0 by 1e+08
 (1,1,1,2)    117440512        7         Abs err 1.1744e+08 exceeds tol 0 by 1e+08
 (1,2,1,2)    117440512        7         Abs err 1.1744e+08 exceeds tol 0 by 1e+08
 (1,3,1,2)    117440512        7         Abs err 1.1744e+08 exceeds tol 0 by 1e+08
 (1,1,2,2)    117440512        7         Abs err 1.1744e+08 exceeds tol 0 by 1e+08
 (1,2,2,2)    117440512        7         Abs err 1.1744e+08 exceeds tol 0 by 1e+08
 (1,3,2,2)    117440512        7         Abs err 1.1744e+08 exceeds tol 0 by 1e+08
 (1,1,3,2)    117440512        7         Abs err 1.1744e+08 exceeds tol 0 by 1e+08
 (1,2,3,2)    117440512        7         Abs err 1.1744e+08 exceeds tol 0 by 1e+08
 (1,3,3,2)    117440512        7         Abs err 1.1744e+08 exceeds tol 0 by 1e+08
 (1,1,1,3)    117440512        7         Abs err 1.1744e+08 exceeds tol 0 by 1e+08
 (1,2,1,3)    117440512        7         Abs err 1.1744e+08 exceeds tol 0 by 1e+08
 (1,3,1,3)    117440512        7         Abs err 1.1744e+08 exceeds tol 0 by 1e+08
 (1,1,2,3)    117440512        7         Abs err 1.1744e+08 exceeds tol 0 by 1e+08
 (1,2,2,3)    117440512        7         Abs err 1.1744e+08 exceeds tol 0 by 1e+08
 (1,3,2,3)    117440512        7         Abs err 1.1744e+08 exceeds tol 0 by 1e+08
 (1,1,3,3)    117440512        7         Abs err 1.1744e+08 exceeds tol 0 by 1e+08
 (1,2,3,3)    117440512        7         Abs err 1.1744e+08 exceeds tol 0 by 1e+08
 (1,3,3,3)    117440512        7         Abs err 1.1744e+08 exceeds tol 0 by 1e+08
[inst/bwunpack.m]
>>>>> /<<PKGBUILDDIR>>/inst/bwunpack.m
***** error id=Octave:invalid-fun-call bwunpack ()
***** error <BWP must be an uint32 array> bwunpack (uint8 (1))
***** error <M must be a non-negative integer> bwunpack (uint32 (1), -1)
***** error <M must be a non-negative integer> bwunpack (uint32 (1), 4.2)
***** assert (bwunpack (uint32 (2.^[0:31])), logical (eye (32)))
!!!!! test failed
ASSERT errors for:  assert (bwunpack (uint32 (2 .^ [0:31])),logical (eye (32)))

  Location  |  Observed  |  Expected  |  Reason
   (1,1)          0            1         Abs err 1 exceeds tol 0 by 1
   (25,1)         1            0         Abs err 1 exceeds tol 0 by 1
   (2,2)          0            1         Abs err 1 exceeds tol 0 by 1
   (26,2)         1            0         Abs err 1 exceeds tol 0 by 1
   (3,3)          0            1         Abs err 1 exceeds tol 0 by 1
   (27,3)         1            0         Abs err 1 exceeds tol 0 by 1
   (4,4)          0            1         Abs err 1 exceeds tol 0 by 1
   (28,4)         1            0         Abs err 1 exceeds tol 0 by 1
   (5,5)          0            1         Abs err 1 exceeds tol 0 by 1
   (29,5)         1            0         Abs err 1 exceeds tol 0 by 1
   (6,6)          0            1         Abs err 1 exceeds tol 0 by 1
   (30,6)         1            0         Abs err 1 exceeds tol 0 by 1
   (7,7)          0            1         Abs err 1 exceeds tol 0 by 1
   (31,7)         1            0         Abs err 1 exceeds tol 0 by 1
   (8,8)          0            1         Abs err 1 exceeds tol 0 by 1
   (32,8)         1            0         Abs err 1 exceeds tol 0 by 1
   (9,9)          0            1         Abs err 1 exceeds tol 0 by 1
   (17,9)         1            0         Abs err 1 exceeds tol 0 by 1
  (10,10)         0            1         Abs err 1 exceeds tol 0 by 1
  (18,10)         1            0         Abs err 1 exceeds tol 0 by 1
  (11,11)         0            1         Abs err 1 exceeds tol 0 by 1
  (19,11)         1            0         Abs err 1 exceeds tol 0 by 1
  (12,12)         0            1         Abs err 1 exceeds tol 0 by 1
  (20,12)         1            0         Abs err 1 exceeds tol 0 by 1
  (13,13)         0            1         Abs err 1 exceeds tol 0 by 1
  (21,13)         1            0         Abs err 1 exceeds tol 0 by 1
  (14,14)         0            1         Abs err 1 exceeds tol 0 by 1
  (22,14)         1            0         Abs err 1 exceeds tol 0 by 1
  (15,15)         0            1         Abs err 1 exceeds tol 0 by 1
  (23,15)         1            0         Abs err 1 exceeds tol 0 by 1
  (16,16)         0            1         Abs err 1 exceeds tol 0 by 1
  (24,16)         1            0         Abs err 1 exceeds tol 0 by 1
   (9,17)         1            0         Abs err 1 exceeds tol 0 by 1
  (17,17)         0            1         Abs err 1 exceeds tol 0 by 1
  (10,18)         1            0         Abs err 1 exceeds tol 0 by 1
  (18,18)         0            1         Abs err 1 exceeds tol 0 by 1
  (11,19)         1            0         Abs err 1 exceeds tol 0 by 1
  (19,19)         0            1         Abs err 1 exceeds tol 0 by 1
  (12,20)         1            0         Abs err 1 exceeds tol 0 by 1
  (20,20)         0            1         Abs err 1 exceeds tol 0 by 1
  (13,21)         1            0         Abs err 1 exceeds tol 0 by 1
  (21,21)         0            1         Abs err 1 exceeds tol 0 by 1
  (14,22)         1            0         Abs err 1 exceeds tol 0 by 1
  (22,22)         0            1         Abs err 1 exceeds tol 0 by 1
  (15,23)         1            0         Abs err 1 exceeds tol 0 by 1
  (23,23)         0            1         Abs err 1 exceeds tol 0 by 1
  (16,24)         1            0         Abs err 1 exceeds tol 0 by 1
  (24,24)         0            1         Abs err 1 exceeds tol 0 by 1
   (1,25)         1            0         Abs err 1 exceeds tol 0 by 1
  (25,25)         0            1         Abs err 1 exceeds tol 0 by 1
   (2,26)         1            0         Abs err 1 exceeds tol 0 by 1
  (26,26)         0            1         Abs err 1 exceeds tol 0 by 1
   (3,27)         1            0         Abs err 1 exceeds tol 0 by 1
  (27,27)         0            1         Abs err 1 exceeds tol 0 by 1
   (4,28)         1            0         Abs err 1 exceeds tol 0 by 1
  (28,28)         0            1         Abs err 1 exceeds tol 0 by 1
   (5,29)         1            0         Abs err 1 exceeds tol 0 by 1
  (29,29)         0            1         Abs err 1 exceeds tol 0 by 1
   (6,30)         1            0         Abs err 1 exceeds tol 0 by 1
  (30,30)         0            1         Abs err 1 exceeds tol 0 by 1
   (7,31)         1            0         Abs err 1 exceeds tol 0 by 1
  (31,31)         0            1         Abs err 1 exceeds tol 0 by 1
   (8,32)         1            0         Abs err 1 exceeds tol 0 by 1
  (32,32)         0            1         Abs err 1 exceeds tol 0 by 1
***** assert (bwunpack (uint32 (repmat (7, [1 3 3 3])), 3), true (3, 3, 3, 3))
!!!!! test failed
ASSERT errors for:  assert (bwunpack (uint32 (repmat (7, [1, 3, 3, 3])), 3),true (3, 3, 3, 3))

  Location  |  Observed  |  Expected  |  Reason
 (1,1,1,1)        0            1         Abs err 1 exceeds tol 0 by 1
 (2,1,1,1)        0            1         Abs err 1 exceeds tol 0 by 1
 (3,1,1,1)        0            1         Abs err 1 exceeds tol 0 by 1
 (1,2,1,1)        0            1         Abs err 1 exceeds tol 0 by 1
 (2,2,1,1)        0            1         Abs err 1 exceeds tol 0 by 1
 (3,2,1,1)        0            1         Abs err 1 exceeds tol 0 by 1
 (1,3,1,1)        0            1         Abs err 1 exceeds tol 0 by 1
 (2,3,1,1)        0            1         Abs err 1 exceeds tol 0 by 1
 (3,3,1,1)        0            1         Abs err 1 exceeds tol 0 by 1
 (1,1,2,1)        0            1         Abs err 1 exceeds tol 0 by 1
 (2,1,2,1)        0            1         Abs err 1 exceeds tol 0 by 1
 (3,1,2,1)        0            1         Abs err 1 exceeds tol 0 by 1
 (1,2,2,1)        0            1         Abs err 1 exceeds tol 0 by 1
 (2,2,2,1)        0            1         Abs err 1 exceeds tol 0 by 1
 (3,2,2,1)        0            1         Abs err 1 exceeds tol 0 by 1
 (1,3,2,1)        0            1         Abs err 1 exceeds tol 0 by 1
 (2,3,2,1)        0            1         Abs err 1 exceeds tol 0 by 1
 (3,3,2,1)        0            1         Abs err 1 exceeds tol 0 by 1
 (1,1,3,1)        0            1         Abs err 1 exceeds tol 0 by 1
 (2,1,3,1)        0            1         Abs err 1 exceeds tol 0 by 1
 (3,1,3,1)        0            1         Abs err 1 exceeds tol 0 by 1
 (1,2,3,1)        0            1         Abs err 1 exceeds tol 0 by 1
 (2,2,3,1)        0            1         Abs err 1 exceeds tol 0 by 1
 (3,2,3,1)        0            1         Abs err 1 exceeds tol 0 by 1
 (1,3,3,1)        0            1         Abs err 1 exceeds tol 0 by 1
 (2,3,3,1)        0            1         Abs err 1 exceeds tol 0 by 1
 (3,3,3,1)        0            1         Abs err 1 exceeds tol 0 by 1
 (1,1,1,2)        0            1         Abs err 1 exceeds tol 0 by 1
 (2,1,1,2)        0            1         Abs err 1 exceeds tol 0 by 1
 (3,1,1,2)        0            1         Abs err 1 exceeds tol 0 by 1
 (1,2,1,2)        0            1         Abs err 1 exceeds tol 0 by 1
 (2,2,1,2)        0            1         Abs err 1 exceeds tol 0 by 1
 (3,2,1,2)        0            1         Abs err 1 exceeds tol 0 by 1
 (1,3,1,2)        0            1         Abs err 1 exceeds tol 0 by 1
 (2,3,1,2)        0            1         Abs err 1 exceeds tol 0 by 1
 (3,3,1,2)        0            1         Abs err 1 exceeds tol 0 by 1
 (1,1,2,2)        0            1         Abs err 1 exceeds tol 0 by 1
 (2,1,2,2)        0            1         Abs err 1 exceeds tol 0 by 1
 (3,1,2,2)        0            1         Abs err 1 exceeds tol 0 by 1
 (1,2,2,2)        0            1         Abs err 1 exceeds tol 0 by 1
 (2,2,2,2)        0            1         Abs err 1 exceeds tol 0 by 1
 (3,2,2,2)        0            1         Abs err 1 exceeds tol 0 by 1
 (1,3,2,2)        0            1         Abs err 1 exceeds tol 0 by 1
 (2,3,2,2)        0            1         Abs err 1 exceeds tol 0 by 1
 (3,3,2,2)        0            1         Abs err 1 exceeds tol 0 by 1
 (1,1,3,2)        0            1         Abs err 1 exceeds tol 0 by 1
 (2,1,3,2)        0            1         Abs err 1 exceeds tol 0 by 1
 (3,1,3,2)        0            1         Abs err 1 exceeds tol 0 by 1
 (1,2,3,2)        0            1         Abs err 1 exceeds tol 0 by 1
 (2,2,3,2)        0            1         Abs err 1 exceeds tol 0 by 1
 (3,2,3,2)        0            1         Abs err 1 exceeds tol 0 by 1
 (1,3,3,2)        0            1         Abs err 1 exceeds tol 0 by 1
 (2,3,3,2)        0            1         Abs err 1 exceeds tol 0 by 1
 (3,3,3,2)        0            1         Abs err 1 exceeds tol 0 by 1
 (1,1,1,3)        0            1         Abs err 1 exceeds tol 0 by 1
 (2,1,1,3)        0            1         Abs err 1 exceeds tol 0 by 1
 (3,1,1,3)        0            1         Abs err 1 exceeds tol 0 by 1
 (1,2,1,3)        0            1         Abs err 1 exceeds tol 0 by 1
 (2,2,1,3)        0            1         Abs err 1 exceeds tol 0 by 1
 (3,2,1,3)        0            1         Abs err 1 exceeds tol 0 by 1
 (1,3,1,3)        0            1         Abs err 1 exceeds tol 0 by 1
 (2,3,1,3)        0            1         Abs err 1 exceeds tol 0 by 1
 (3,3,1,3)        0            1         Abs err 1 exceeds tol 0 by 1
 (1,1,2,3)        0            1         Abs err 1 exceeds tol 0 by 1
 (2,1,2,3)        0            1         Abs err 1 exceeds tol 0 by 1
 (3,1,2,3)        0            1         Abs err 1 exceeds tol 0 by 1
 (1,2,2,3)        0            1         Abs err 1 exceeds tol 0 by 1
 (2,2,2,3)        0            1         Abs err 1 exceeds tol 0 by 1
 (3,2,2,3)        0            1         Abs err 1 exceeds tol 0 by 1
 (1,3,2,3)        0            1         Abs err 1 exceeds tol 0 by 1
 (2,3,2,3)        0            1         Abs err 1 exceeds tol 0 by 1
 (3,3,2,3)        0            1         Abs err 1 exceeds tol 0 by 1
 (1,1,3,3)        0            1         Abs err 1 exceeds tol 0 by 1
 (2,1,3,3)        0            1         Abs err 1 exceeds tol 0 by 1
 (3,1,3,3)        0            1         Abs err 1 exceeds tol 0 by 1
 (1,2,3,3)        0            1         Abs err 1 exceeds tol 0 by 1
 (2,2,3,3)        0            1         Abs err 1 exceeds tol 0 by 1
 (3,2,3,3)        0            1         Abs err 1 exceeds tol 0 by 1
 (1,3,3,3)        0            1         Abs err 1 exceeds tol 0 by 1
 (2,3,3,3)        0            1         Abs err 1 exceeds tol 0 by 1
 (3,3,3,3)        0            1         Abs err 1 exceeds tol 0 by 1


Rafael Laboissière <rlaboiss>

 

(Note: upload size limit is set to 16384 kB, after insertion of the required escape characters.)

Attach Files:
   
   
Comment:
   

Attached Files

 

Digest:
   bug dependencies.

Items that depend on this one: None found

 

Carbon-Copy List
  • -email is unavailable- added by hardy (Posted a comment)
  • -email is unavailable- added by avinoam (Posted a comment)
  • -email is unavailable- added by avinoam
  • -email is unavailable- added by avinoam
  • -email is unavailable- added by avinoam
  • -email is unavailable- added by pantxo (Updated the item)
  • -email is unavailable- added by rlaboiss (Submitted the item)
  •  

    There are 0 votes so far. Votes easily highlight which items people would like to see resolved in priority, independently of the priority of the item set by tracker managers.

    Only group members can vote.

     

    Follow 6 latest changes.

    Date Changed by Updated Field Previous Value => Replaced by
    2019-01-22 rlaboiss Attached File- Added xtest-bwpack-big-endian.patch, #46068
    2019-01-21 carandraug Dependencies- Depends on bugs #54931
    2019-01-20 avinoam Carbon-Copy- Added hardy
        Carbon-Copy- Added carandraug
        Carbon-Copy- Added tojtoj
    2019-01-19 pantxo Summary[octave forge] (signal) Unit tests for bwpack and bwunpack fail on big endian architectures [octave forge] (image) Unit tests for bwpack and bwunpack fail on big endian architectures

    Back to the top

    Powered by Savane 3.14-3b9d.
    Corresponding source code