Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Big endian test failures on QEMU MIPS #1278

Closed
3 of 9 tasks
t-b opened this issue Jan 6, 2019 · 9 comments · Fixed by #1302
Closed
3 of 9 tasks

Big endian test failures on QEMU MIPS #1278

t-b opened this issue Jan 6, 2019 · 9 comments · Fixed by #1302

Comments

@t-b
Copy link
Contributor

t-b commented Jan 6, 2019

Environment Information

  • What platform are you using? (please provide specific distribution/version in summary)
    • Linux
    • Windows
    • OSX
    • Other
    • QEMU MIPS big-endian
  • 32 and/or 64 bit?
    • 32-bit
    • 64-bit
  • What build system are you using?
    • autotools (configure)
    • cmake

Summary of Issue

The following tests FAILED:
         59 - nc_test (Timeout)
         65 - nc_test4_tst_filter (Failed)
         71 - nc_test4_tst_files4 (Timeout)
        125 - nc_test4_tst_filterparser (Failed)
        158 - ncdap_tst_ncdap3 (Failed)
        159 - ncdap_t_dap3a (Failed)
        160 - ncdap_test_cvt (Failed)
        161 - ncdap_test_vara (Failed)
        162 - ncdap_tst_ber (Failed)
        163 - ncdap_tst_remote3 (Failed)
        164 - ncdap_tst_fillmismatch (Failed)
        165 - ncdap_test_varm3 (Failed)
        166 - dap4_test_test

The timeouts are due to the slow CPU I guess.

Steps to reproduce the behavior

@WardF
Copy link
Member

WardF commented Jan 7, 2019

Thanks! Looking at building the debians-mips-qemu image now.

@WardF
Copy link
Member

WardF commented Jan 7, 2019

Setting up to duplicate your tests, although as you note it takes quite a long time. Do you know offhand if the error occurs when using autoconf-based builds as well?

@t-b
Copy link
Contributor Author

t-b commented Jan 7, 2019

@WardF Nope I've not tried with autoconf-based builds.

@DennisHeimbigner
Copy link
Collaborator

I believe that at least the dap4 failure also appears under automake.

@t-b
Copy link
Contributor Author

t-b commented Jan 16, 2019

@WardF Test results for using autotools on 98e6384 are attached.
test-suite-logs.tar.gz

@WardF
Copy link
Member

WardF commented Jan 29, 2019

Thanks; we are still looking at debugging this. We are also looking for Big Endian hardware solutions which should speed up the development/debugging cycle.

@DennisHeimbigner
Copy link
Collaborator

I am in the process of trying to fix these using the qemu emulation.,
I have some of the true failures (as opposed to timeouts) fixed,
and hope to have all of them fixed soon.

@t-b
Copy link
Contributor Author

t-b commented Jan 29, 2019

@DennisHeimbigner @WardF Nice to hear that the QEMU image is of use. I'm happy also review the fix PR.

@WardF Regarding speeding it up, QEMU supports also S390x (aka IBM Z-Systems) and debian supports that as well, and that should be, thanks to KVM, much faster as the MIPS thingie. See also https://wiki.qemu.org/Documentation/Platforms/S390X.

DennisHeimbigner added a commit that referenced this issue Feb 1, 2019
re: issue #1278
re: issue #876
re: issue #806

* Major change to the handling of 8-byte parameters for nc_def_var_filter.
  The old code was not well thought out.
  * The new algorithm is documented in docs/filters.md.
  * Added new utility file plugins/H5Zutil.c to support
  * Modified plugins/H5Zmisc.c to use new algorithm
  the new algorithm.
  * Renamed include/ncfilter.h to include/netcdf_filter.h
    and made it an installed header so clients can access the
    new algorithm utility.
  * Fixed nc_test4/tst_filterparser.c and nc_test4/test_filter_misc.c
    to use the new algorithm
* libdap4/ fixes:
  * d4swap.c has an error in the endian pre-processing such
    that record counts were not being swapped correctly.
  * d4data.c had an error in that checksums were being computed
    after endian swapping rather than before.
* ocinitialize() was never being called, so xxdr bigendian handling
  was never set correctly.
  * Required adding debug statements to occompile
* Found and fixed memory leak in ncdump.c

Not tested:
* HDF4
* Pnetcdf
* parallel HDF5
@DennisHeimbigner
Copy link
Collaborator

I think I have fixed the big-endian errors. See PR #1302

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants