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

SIG_BUS on SunOS pm1 5.10 Generic_150400-59 sun4v sparc sun4v #83

Closed
zolyfarkas opened this issue Jun 6, 2018 · 3 comments
Closed

SIG_BUS on SunOS pm1 5.10 Generic_150400-59 sun4v sparc sun4v #83

zolyfarkas opened this issue Jun 6, 2018 · 3 comments

Comments

@zolyfarkas
Copy link

zolyfarkas commented Jun 6, 2018

This happened with aircompressor-0.9.
is aircompressor not supported on 64 bit sparc platforms?

Here is the native stack:

----------------- lwp# 2 / thread# 2 --------------------
ffffffff7e7dccbc _lwp_kill (6, 0, ffffffff7e949968, ffffffffffffffff, ffffffff7e93e000, 0) + 8
ffffffff7e74c250 abort (1, 1d8, ffffffff7db9b1cc, 1f1ebc, 0, 0) + 118
ffffffff7db84a48 _1cCosFabort6Fb_v (1, 1, 4b318, ffffffff7e0dda20, 55902c, 4b000) + 58
ffffffff7ddfb2d4 _1cHVMErrorOreport_and_die6M_v (1, ffffffff7e1eeb35, 100110800, ffffffff7db98100, ffffffff7e2d5a80, ffffffff7e2751c0) + 10ac
ffffffff7db9574c JVM_handle_solaris_signal (a, ffffffff7affa2a0, ffffffff7dd7cff0, ffffffff7aff9b30, ffffffffffaaf928, ffffffff7aff9fc0) + c0c
ffffffff7db8d364 signalHandler (a, ffffffff7affa2a0, ffffffff7aff9fc0, ffffffff7e94ec38, 1001042d0, 2) + 1c
ffffffff7e7d8d6c __sighndlr (a, ffffffff7affa2a0, ffffffff7aff9fc0, ffffffff7db8d348, 0, 9) + c
ffffffff7e7cc8d4 call_user_handler (ffffffff7e600a00, ffffffff7e600a00, ffffffff7aff9fc0, c, 0, 0) + 3e0
ffffffff7e7ccae0 sigacthandler (0, ffffffff7affa2a0, ffffffff7aff9fc0, ffffffff7e600a00, 0, ffffffff7e93e000) + 68
--- called from signal handler with signal 10 (SIGBUS) ---
ffffffff7dd7cff0 Unsafe_GetInt (ffffffff7affc5e8, ffffffff7e26f240, ffffffff7affa510, 11, 100110800, 191800) + 174
ffffffff6bb450a0 * *sun/misc/Unsafe.getInt(Ljava/lang/Object;J)I [compiled]
ffffffff6b007b18 * io/airlift/compress/snappy/SnappyRawCompressor.compress(Ljava/lang/Object;JJLjava/lang/Object;JJ[S)I+462
ffffffff6b007b18 * io/airlift/compress/snappy/SnappyCompressor.compress([BII[BII)I+57
ffffffff6b007b18 * io/airlift/compress/snappy/SnappyFramedOutputStream.writeCompressed([BII)V+59
ffffffff6b008068 * io/airlift/compress/snappy/SnappyFramedOutputStream.flushBuffer()V+34
ffffffff6b008068 * io/airlift/compress/snappy/SnappyFramedOutputStream.flush()V+32

@dain
Copy link
Member

dain commented Jun 6, 2018

We don't have any sparc systems to test on, so this is not something we can generally support. Does sparc support unaligned reads, because we make no effort to align reads? Also, the code assumes a little endian native encoding. Adding support for either of these would likely make this code too difficult to support (and may slow stuff down).

If you can reproduce the problem on intel, I can fix it. Alternative, you can send a patch.

@zolyfarkas
Copy link
Author

Thanks for the answer, if little-endian is supported only, the fact that it crashes on sparc should not be a surprise since SPARC is big-endian... same issues would probably be with ARM, POWER....

Maybe this should be documented in the readme: https://github.com/airlift/aircompressor...
the 100% java statement is a bit misleading...

@dain
Copy link
Member

dain commented Oct 1, 2018

I added code that verifies the VM is compatible with the compressor code, and updated the read me. Thanks.

@dain dain closed this as completed Oct 1, 2018
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

No branches or pull requests

2 participants