Annotation of wikisrc/users/leot/aarch64_problems.mdwn, revision 1.3

1.1       leot        1: # Various (possible) problems of aarch64
                      2: 
                      3: Here a list of possible problems of NetBSD/evbarm aarch64 that needs further
                      4: investigation in order to write proper PR or better yet to fix them!
                      5: 
                      6: 
                      7: ## `mpv` and NetBSD crashes
                      8: Just by invoking `mpv` via:
                      9: 
1.2       leot       10:     $ mpv
1.1       leot       11: 
                     12: It is possible to completely crash NetBSD on aarch64. Investigate why and if
                     13: possible get a complete backtrace.
                     14: 
                     15: (Is it PaX MPROTECT related?)
                     16: 
                     17: 
                     18: ## Python `import requests` SIGILLs
                     19: Doing a (please note that also `python36` is affected):
                     20: 
1.2       leot       21:     $ python2.7 -c 'import requests'
                     22:     Illegal instruction (core dumped)
                     23:     Exit 132
1.1       leot       24: 
                     25: leads to a SIGILL. Trying to reduce the test case this also happens with just a:
                     26: 
1.2       leot       27:     $ python2.7 -c 'import OpenSSL'
                     28:     Illegal instruction (core dumped)
                     29:     Exit 132
1.1       leot       30: 
                     31: Trying to debug this a bit further we can see:
                     32: 
1.2       leot       33:     % cat asi.py
                     34:     import OpenSSL
                     35:     % python2.7 -m trace --trace asi.py
                     36:     [...]
                     37:     binding.py(88):     for attr in dir(lib):
                     38:     binding.py(89):         if attr not in excluded_names:
                     39:     binding.py(90):             setattr(conditional_lib, attr, getattr(lib, attr))
                     40:     binding.py(88):     for attr in dir(lib):
                     41:     binding.py(89):         if attr not in excluded_names:
                     42:     binding.py(90):             setattr(conditional_lib, attr, getattr(lib, attr))
                     43:     binding.py(88):     for attr in dir(lib):
                     44:     binding.py(89):         if attr not in excluded_names:
                     45:     binding.py(90):             setattr(conditional_lib, attr, getattr(lib, attr))
                     46:     binding.py(88):     for attr in dir(lib):
                     47:     binding.py(92):     return conditional_lib
                     48:     binding.py(126):                 cls._lib_loaded = True
                     49:     binding.py(128):                 cls.lib.SSL_library_init()
                     50:     Illegal instruction (core dumped)
                     51:     Exit 132

CVSweb for NetBSD wikisrc <wikimaster@NetBSD.org> software: FreeBSD-CVSweb