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

Haiku supporting patches #3723

Closed
wants to merge 4 commits into from

Conversation

extrowerk
Copy link
Contributor

Just some basic patches from HaikuPorts.

@nobu
Copy link
Member

nobu commented Oct 30, 2020

Haiku don't allow unsetting O_NONBLOCK or O_NDELAY on packaged FS

This change seems unsetting O_NONBLOCK and O_NDELAY.

@nobu
Copy link
Member

nobu commented Oct 30, 2020

And what error occurs in that case?

@extrowerk
Copy link
Contributor Author

extrowerk commented Oct 30, 2020

And what error occurs in that case?

Packaged filesystem is read-only and doesn't allow to set them, it results an error at starting ruby if it instaleld trough the package management.
This change is Haiku exclusive. Sorry for the bad wording in the commit message.

@nobu
Copy link
Member

nobu commented Oct 30, 2020

I meant which value errno was set to and what error message was shown.
I guess it might be possible on other platforms per filesystems.

@extrowerk
Copy link
Contributor Author

/Ports/haikuports> ruby -v
ruby 2.7.2p137 (2020-10-01 revision 5445e04352) [x86_64-haiku]
/Ports/haikuports> ruby
Traceback (most recent call last):
        1: from <internal:gem_prelude>:1:in `<internal:gem_prelude>'
<internal:gem_prelude>:1:in `require': Operation not supported -- /boot/system/lib/ruby/2.7.0/rubygems.rb (LoadError)

@extrowerk
Copy link
Contributor Author

strace output:

[ 92222] image_relocated(0x12e3cd) (53 us)
[ 92222] set_area_protection(0x3e5988, 0x5) = 0x0 No error (4 us)
[ 92222] set_area_protection(0x3e598a, 0x5) = 0x0 No error (3 us)
[ 92222] set_area_protection(0x3e598c, 0x5) = 0x0 No error (10 us)
[ 92222] set_area_protection(0x3e598f, 0x5) = 0x0 No error (3 us)
[ 92222] set_area_protection(0x3e5991, 0x5) = 0x0 No error (4 us)
[ 92222] set_area_protection(0x3e5993, 0x5) = 0x0 No error (10 us)
[ 92222] set_area_protection(0x3e5996, 0x5) = 0x0 No error (3 us)
[ 92222] get_system_info(0x7fc7075743b0) = 0x0 No error (1 us)
[ 92222] get_system_info(0x7fc7075741c0) = 0x0 No error (1 us)
[ 92222] reserve_address_range([0x104a3b419000], 0x7, 0x1000000000) = 0x0 No error (2 us)
[ 92222] create_area("heap", 0xd58dc5dc40, 0x1, 0x40000, 0x0, 0x103) = 0x3e5999 (5 us)
[ 92222] resize_area(0x3e5999, 0x50000) = 0x0 No error (2 us)
[ 92222] open(0xffffffff, "/dev/urandom", 0x0, 0x0) = 0x4 (12 us)
[ 92222] read(0x4, 0xffffffffffffffff, 0x1b4f808de30, 0x8) = 0x8 (2 us)
[ 92222] close(0x4) = 0x0 No error (2 us)
[ 92222] read_stat(0xffffffff, "/boot/system/bin/lib/libroot-addon-icu.so", false, 0x7fc707572550, 0x80) = 0x80006003 No such file or directory (5 us)
[ 92222] read_stat(0xffffffff, "/boot/home/config/non-packaged/lib/libroot-addon-icu.so", false, 0x7fc707572550, 0x80) = 0x80006003 No such file or directory (5 us)
[ 92222] read_stat(0xffffffff, "/boot/home/config/lib/libroot-addon-icu.so", false, 0x7fc707572550, 0x80) = 0x80006003 No such file or directory (1 us)
[ 92222] read_stat(0xffffffff, "/boot/system/non-packaged/lib/libroot-addon-icu.so", false, 0x7fc707572550, 0x80) = 0x80006003 No such file or directory (3 us)
[ 92222] read_stat(0xffffffff, "/boot/system/lib/libroot-addon-icu.so", false, 0x7fc707572550, 0x80) = 0x0 No error (4 us)
[ 92222] open(0xffffffff, "/boot/system/lib/libroot-addon-icu.so", 0x0, 0x0) = 0x4 (3 us)
[ 92222] read_stat(0x4, (nil), true, 0x7fc707572a50, 0x80) = 0x0 No error (0 us)
[ 92222] normalize_path("/boot/system/lib/libroot-addon-icu.so", true, 0x7fc707573040) = 0x0 No error (8 us)
[ 92222] read(0x4, 0x0, 0x7fc707573000, 0x40) = 0x40 (3 us)
[ 92222] read(0x4, 0x40, 0x7fc707573440, 0xa8) = 0xa8 (1 us)
[ 92222] reserve_address_range([0x5a51680000], 0x7, 0x212000) = 0x0 No error (1 us)
[ 92222] map_file("libroot-addon-icu.so_seg0ro", 0x7fc707572f18, 0x1, 0x11000, 0x1003, 0x1, true, 0x0, 0x27497425f0) = 0x3e599a (4 us)
[ 92222] map_file("libroot-addon-icu.so_seg1rw", 0x7fc707572f18, 0x1, 0x1000, 0x3, 0x1, true, 0x0, 0x2749742638) = 0x3e599b (3 us)
[ 92222] read_stat(0x4, (nil), false, 0x7fc707572a50, 0x80) = 0x0 No error (0 us)
[ 92222] register_image(0x7fc707572ad0, 0x470) = 0x12e3d4 (2 us)
[ 92222] close(0x4) = 0x0 No error (1 us)
[ 92222] read_stat(0xffffffff, "/boot/system/bin/lib/libstdc++.so.6", false, 0x7fc7075724e0, 0x80) = 0x80006003 No such file or directory (3 us)
[ 92222] read_stat(0xffffffff, "/boot/home/config/non-packaged/lib/libstdc++.so.6", false, 0x7fc7075724e0, 0x80) = 0x80006003 No such file or directory (3 us)
[ 92222] read_stat(0xffffffff, "/boot/home/config/lib/libstdc++.so.6", false, 0x7fc7075724e0, 0x80) = 0x80006003 No such file or directory (2 us)
[ 92222] read_stat(0xffffffff, "/boot/system/non-packaged/lib/libstdc++.so.6", false, 0x7fc7075724e0, 0x80) = 0x80006003 No such file or directory (3 us)
[ 92222] read_stat(0xffffffff, "/boot/system/lib/libstdc++.so.6", false, 0x7fc7075724e0, 0x80) = 0x0 No error (3 us)
[ 92222] read_link(0xffffffff, "/boot/system/lib/libstdc++.so.6", 0x7fc707572560, [0x13]) = 0x0 No error (3 us)
[ 92222] open(0xffffffff, "/boot/system/lib/libstdc++.so.6.0.25", 0x0, 0x0) = 0x4 (2 us)
[ 92222] read_stat(0x4, (nil), true, 0x7fc7075729e0, 0x80) = 0x0 No error (0 us)
[ 92222] normalize_path("/boot/system/lib/libstdc++.so.6.0.25", true, 0x7fc707572fd0) = 0x0 No error (6 us)
[ 92222] read(0x4, 0x0, 0x7fc707572f90, 0x40) = 0x40 (2 us)
[ 92222] read(0x4, 0x40, 0x7fc7075733d0, 0x118) = 0x118 (1 us)
[ 92222] reserve_address_range([0xc839fe2000], 0x7, 0x376000) = 0x0 No error (1 us)
[ 92222] map_file("libstdc++.so.6.0.25_seg0ro", 0x7fc707572ea8, 0x1, 0x162000, 0x1003, 0x1, true, 0x0, 0x2749742d90) = 0x3e599c (6 us)
[ 92222] map_file("libstdc++.so.6.0.25_seg1rw", 0x7fc707572ea8, 0x1, 0xc000, 0x3, 0x1, true, 0x0, 0x2749742dd8) = 0x3e599d (3 us)
[ 92222] create_area("libstdc++.so.6.0.25_seg2rw", 0x7fc707572ea8, 0x1, 0x8000, 0x0, 0x3) = 0x3e599e (2 us)
[ 92222] read(0x4, 0x1e44f0, 0x7fc7075733d0, 0x800) = 0x800 (2 us)
[ 92222] read(0x4, 0x1e43de, 0x7fc7075742bf, 0x111) = 0x111 (1 us)
[ 92222] read(0x4, 0x16db00, 0x7fc7075733d0, 0x29) = 0x29 (1 us)
[ 92222] read_stat(0x4, (nil), false, 0x7fc7075729e0, 0x80) = 0x0 No error (0 us)
[ 92222] register_image(0x7fc707572a60, 0x470) = 0x12e3d5 (2 us)
[ 92222] close(0x4) = 0x0 No error (1 us)
[ 92222] read_stat(0xffffffff, "/boot/system/bin/lib/libicudata.so.57", false, 0x7fc7075724e0, 0x80) = 0x80006003 No such file or directory (3 us)
[ 92222] read_stat(0xffffffff, "/boot/home/config/non-packaged/lib/libicudata.so.57", false, 0x7fc7075724e0, 0x80) = 0x80006003 No such file or directory (3 us)
[ 92222] read_stat(0xffffffff, "/boot/home/config/lib/libicudata.so.57", false, 0x7fc7075724e0, 0x80) = 0x80006003 No such file or directory (2 us)
[ 92222] read_stat(0xffffffff, "/boot/system/non-packaged/lib/libicudata.so.57", false, 0x7fc7075724e0, 0x80) = 0x80006003 No such file or directory (2 us)
[ 92222] read_stat(0xffffffff, "/boot/system/lib/libicudata.so.57", false, 0x7fc7075724e0, 0x80) = 0x0 No error (3 us)
[ 92222] read_link(0xffffffff, "/boot/system/lib/libicudata.so.57", 0x7fc707572560, [0x12]) = 0x0 No error (3 us)
[ 92222] open(0xffffffff, "/boot/system/lib/libicudata.so.57.2", 0x0, 0x0) = 0x4 (3 us)
[ 92222] read_stat(0x4, (nil), true, 0x7fc7075729e0, 0x80) = 0x0 No error (1 us)
[ 92222] normalize_path("/boot/system/lib/libicudata.so.57.2", true, 0x7fc707572fd0) = 0x0 No error (5 us)
[ 92222] read(0x4, 0x0, 0x7fc707572f90, 0x40) = 0x40 (1 us)
[ 92222] read(0x4, 0x40, 0x7fc7075733d0, 0xe0) = 0xe0 (0 us)
[ 92222] reserve_address_range([0xe2b2e40000], 0x7, 0x1a80000) = 0x0 No error (1 us)
[ 92222] map_file("libicudata.so.57.2_seg0ro", 0x7fc707572ea8, 0x1, 0x1880000, 0x1003, 0x1, true, 0x0, 0x2749743908) = 0x3e599f (70 us)
[ 92222] map_file("libicudata.so.57.2_seg1rw", 0x7fc707572ea8, 0x1, 0x1000, 0x3, 0x1, true, 0x0, 0x2749743950) = 0x3e59a0 (3 us)
[ 92222] read_stat(0x4, (nil), false, 0x7fc7075729e0, 0x80) = 0x0 No error (0 us)
[ 92222] register_image(0x7fc707572a60, 0x470) = 0x12e3d6 (1 us)
[ 92222] close(0x4) = 0x0 No error (1 us)
[ 92222] read_stat(0xffffffff, "/boot/system/bin/lib/libicui18n.so.57", false, 0x7fc7075724e0, 0x80) = 0x80006003 No such file or directory (2 us)
[ 92222] read_stat(0xffffffff, "/boot/home/config/non-packaged/lib/libicui18n.so.57", false, 0x7fc7075724e0, 0x80) = 0x80006003 No such file or directory (3 us)
[ 92222] read_stat(0xffffffff, "/boot/home/config/lib/libicui18n.so.57", false, 0x7fc7075724e0, 0x80) = 0x80006003 No such file or directory (2 us)
[ 92222] read_stat(0xffffffff, "/boot/system/non-packaged/lib/libicui18n.so.57", false, 0x7fc7075724e0, 0x80) = 0x80006003 No such file or directory (2 us)
[ 92222] read_stat(0xffffffff, "/boot/system/lib/libicui18n.so.57", false, 0x7fc7075724e0, 0x80) = 0x0 No error (3 us)
[ 92222] read_link(0xffffffff, "/boot/system/lib/libicui18n.so.57", 0x7fc707572560, [0x12]) = 0x0 No error (2 us)
[ 92222] open(0xffffffff, "/boot/system/lib/libicui18n.so.57.2", 0x0, 0x0) = 0x4 (3 us)
[ 92222] read_stat(0x4, (nil), true, 0x7fc7075729e0, 0x80) = 0x0 No error (0 us)
[ 92222] normalize_path("/boot/system/lib/libicui18n.so.57.2", true, 0x7fc707572fd0) = 0x0 No error (6 us)
[ 92222] read(0x4, 0x0, 0x7fc707572f90, 0x40) = 0x40 (3 us)
[ 92222] read(0x4, 0x40, 0x7fc7075733d0, 0xa8) = 0xa8 (0 us)
[ 92222] reserve_address_range([0x97c78ff000], 0x7, 0x491000) = 0x0 No error (1 us)
[ 92222] map_file("libicui18n.so.57.2_seg0ro", 0x7fc707572ea8, 0x1, 0x27c000, 0x1003, 0x1, true, 0x0, 0x2749743fc8) = 0x3e59a1 (12 us)
[ 92222] map_file("libicui18n.so.57.2_seg1rw", 0x7fc707572ea8, 0x1, 0x15000, 0x3, 0x1, true, 0x0, 0x2749744010) = 0x3e59a2 (4 us)
[ 92222] read_stat(0x4, (nil), false, 0x7fc7075729e0, 0x80) = 0x0 No error (1 us)
[ 92222] register_image(0x7fc707572a60, 0x470) = 0x12e3d7 (2 us)
[ 92222] close(0x4) = 0x0 No error (1 us)
[ 92222] read_stat(0xffffffff, "/boot/system/bin/lib/libicuio.so.57", false, 0x7fc7075724e0, 0x80) = 0x80006003 No such file or directory (3 us)
[ 92222] read_stat(0xffffffff, "/boot/home/config/non-packaged/lib/libicuio.so.57", false, 0x7fc7075724e0, 0x80) = 0x80006003 No such file or directory (3 us)
[ 92222] read_stat(0xffffffff, "/boot/home/config/lib/libicuio.so.57", false, 0x7fc7075724e0, 0x80) = 0x80006003 No such file or directory (3 us)
[ 92222] read_stat(0xffffffff, "/boot/system/non-packaged/lib/libicuio.so.57", false, 0x7fc7075724e0, 0x80) = 0x80006003 No such file or directory (2 us)
[ 92222] read_stat(0xffffffff, "/boot/system/lib/libicuio.so.57", false, 0x7fc7075724e0, 0x80) = 0x0 No error (3 us)
[ 92222] read_link(0xffffffff, "/boot/system/lib/libicuio.so.57", 0x7fc707572560, [0x10]) = 0x0 No error (3 us)
[ 92222] open(0xffffffff, "/boot/system/lib/libicuio.so.57.2", 0x0, 0x0) = 0x4 (3 us)
[ 92222] read_stat(0x4, (nil), true, 0x7fc7075729e0, 0x80) = 0x0 No error (0 us)
[ 92222] normalize_path("/boot/system/lib/libicuio.so.57.2", true, 0x7fc707572fd0) = 0x0 No error (6 us)
[ 92222] read(0x4, 0x0, 0x7fc707572f90, 0x40) = 0x40 (2 us)
[ 92222] read(0x4, 0x40, 0x7fc7075733d0, 0xa8) = 0xa8 (1 us)
[ 92222] reserve_address_range([0x1385fabe000], 0x7, 0x20d000) = 0x0 No error (1 us)
[ 92222] map_file("libicuio.so.57.2_seg0ro", 0x7fc707572ea8, 0x1, 0xb000, 0x1003, 0x1, true, 0x0, 0x2749744720) = 0x3e59a3 (4 us)
[ 92222] map_file("libicuio.so.57.2_seg1rw", 0x7fc707572ea8, 0x1, 0x2000, 0x3, 0x1, true, 0x0, 0x2749744768) = 0x3e59a4 (2 us)
[ 92222] read_stat(0x4, (nil), false, 0x7fc7075729e0, 0x80) = 0x0 No error (0 us)
[ 92222] register_image(0x7fc707572a60, 0x470) = 0x12e3d8 (1 us)
[ 92222] close(0x4) = 0x0 No error (1 us)
[ 92222] read_stat(0xffffffff, "/boot/system/bin/lib/libicutu.so.57", false, 0x7fc7075724e0, 0x80) = 0x80006003 No such file or directory (2 us)
[ 92222] read_stat(0xffffffff, "/boot/home/config/non-packaged/lib/libicutu.so.57", false, 0x7fc7075724e0, 0x80) = 0x80006003 No such file or directory (3 us)
[ 92222] read_stat(0xffffffff, "/boot/home/config/lib/libicutu.so.57", false, 0x7fc7075724e0, 0x80) = 0x80006003 No such file or directory (1 us)
[ 92222] read_stat(0xffffffff, "/boot/system/non-packaged/lib/libicutu.so.57", false, 0x7fc7075724e0, 0x80) = 0x80006003 No such file or directory (3 us)
[ 92222] read_stat(0xffffffff, "/boot/system/lib/libicutu.so.57", false, 0x7fc7075724e0, 0x80) = 0x0 No error (3 us)
[ 92222] read_link(0xffffffff, "/boot/system/lib/libicutu.so.57", 0x7fc707572560, [0x10]) = 0x0 No error (2 us)
[ 92222] open(0xffffffff, "/boot/system/lib/libicutu.so.57.2", 0x0, 0x0) = 0x4 (2 us)
[ 92222] read_stat(0x4, (nil), true, 0x7fc7075729e0, 0x80) = 0x0 No error (1 us)
[ 92222] normalize_path("/boot/system/lib/libicutu.so.57.2", true, 0x7fc707572fd0) = 0x0 No error (5 us)
[ 92222] read(0x4, 0x0, 0x7fc707572f90, 0x40) = 0x40 (2 us)
[ 92222] read(0x4, 0x40, 0x7fc7075733d0, 0xa8) = 0xa8 (1 us)
[ 92222] reserve_address_range([0xc71d5a5000], 0x7, 0x262000) = 0x0 No error (1 us)
[ 92222] map_file("libicutu.so.57.2_seg0ro", 0x7fc707572ea8, 0x1, 0x2e000, 0x1003, 0x1, true, 0x0, 0x2749744e78) = 0x3e59a5 (4 us)
[ 92222] map_file("libicutu.so.57.2_seg1rw", 0x7fc707572ea8, 0x1, 0x2000, 0x3, 0x1, true, 0x0, 0x2749744ec0) = 0x3e59a6 (3 us)
[ 92222] create_area("libicutu.so.57.2_seg2rw", 0x7fc707572ea8, 0x1, 0x32000, 0x0, 0x3) = 0x3e59a7 (2 us)
[ 92222] read_stat(0x4, (nil), false, 0x7fc7075729e0, 0x80) = 0x0 No error (0 us)
[ 92222] register_image(0x7fc707572a60, 0x470) = 0x12e3d9 (1 us)
[ 92222] close(0x4) = 0x0 No error (0 us)
[ 92222] read_stat(0xffffffff, "/boot/system/bin/lib/libicuuc.so.57", false, 0x7fc7075724e0, 0x80) = 0x80006003 No such file or directory (2 us)
[ 92222] read_stat(0xffffffff, "/boot/home/config/non-packaged/lib/libicuuc.so.57", false, 0x7fc7075724e0, 0x80) = 0x80006003 No such file or directory (3 us)
[ 92222] read_stat(0xffffffff, "/boot/home/config/lib/libicuuc.so.57", false, 0x7fc7075724e0, 0x80) = 0x80006003 No such file or directory (2 us)
[ 92222] read_stat(0xffffffff, "/boot/system/non-packaged/lib/libicuuc.so.57", false, 0x7fc7075724e0, 0x80) = 0x80006003 No such file or directory (3 us)
[ 92222] read_stat(0xffffffff, "/boot/system/lib/libicuuc.so.57", false, 0x7fc7075724e0, 0x80) = 0x0 No error (2 us)
[ 92222] read_link(0xffffffff, "/boot/system/lib/libicuuc.so.57", 0x7fc707572560, [0x10]) = 0x0 No error (2 us)
[ 92222] open(0xffffffff, "/boot/system/lib/libicuuc.so.57.2", 0x0, 0x0) = 0x4 (3 us)
[ 92222] read_stat(0x4, (nil), true, 0x7fc7075729e0, 0x80) = 0x0 No error (0 us)
[ 92222] normalize_path("/boot/system/lib/libicuuc.so.57.2", true, 0x7fc707572fd0) = 0x0 No error (5 us)
[ 92222] read(0x4, 0x0, 0x7fc707572f90, 0x40) = 0x40 (2 us)
[ 92222] read(0x4, 0x40, 0x7fc7075733d0, 0xa8) = 0xa8 (1 us)
[ 92222] reserve_address_range([0xc60d9b4000], 0x7, 0x3a9000) = 0x0 No error (1 us)
[ 92222] map_file("libicuuc.so.57.2_seg0ro", 0x7fc707572ea8, 0x1, 0x194000, 0x1003, 0x1, true, 0x0, 0x2749745660) = 0x3e59a8 (8 us)
[ 92222] map_file("libicuuc.so.57.2_seg1rw", 0x7fc707572ea8, 0x1, 0x15000, 0x3, 0x1, true, 0x0, 0x27497456a8) = 0x3e59a9 (3 us)
[ 92222] read_stat(0x4, (nil), false, 0x7fc7075729e0, 0x80) = 0x0 No error (0 us)
[ 92222] register_image(0x7fc707572a60, 0x470) = 0x12e3da (1 us)
[ 92222] close(0x4) = 0x0 No error (0 us)
[ 92222] create_area("rld heap", 0x7fc707574318, 0x6, 0x10000, 0x0, 0x3) = 0x3e59aa (3 us)
[ 92222] create_area("rld heap", 0x7fc707574318, 0x6, 0x10000, 0x0, 0x3) = 0x3e59ab (1 us)
[ 92222] image_relocated(0x12e3d5) (0 us)
[ 92222] image_relocated(0x12e3d6) (0 us)
[ 92222] image_relocated(0x12e3da) (1 us)
[ 92222] image_relocated(0x12e3d7) (0 us)
[ 92222] image_relocated(0x12e3d8) (1 us)
[ 92222] image_relocated(0x12e3d9) (1 us)
[ 92222] image_relocated(0x12e3d4) (0 us)
[ 92222] set_area_protection(0x3e599a, 0x5) = 0x0 No error (8 us)
[ 92222] set_area_protection(0x3e599c, 0x5) = 0x0 No error (5 us)
[ 92222] set_area_protection(0x3e599f, 0x5) = 0x0 No error (4 us)
[ 92222] set_area_protection(0x3e59a1, 0x5) = 0x0 No error (6 us)
[ 92222] set_area_protection(0x3e59a3, 0x5) = 0x0 No error (4 us)
[ 92222] set_area_protection(0x3e59a5, 0x5) = 0x0 No error (5 us)
[ 92222] set_area_protection(0x3e59a8, 0x5) = 0x0 No error (4 us)
[ 92222] resize_area(0x3e5999, 0x60000) = 0x0 No error (3 us)
[ 92222] resize_area(0x3e5999, 0x70000) = 0x0 No error (1 us)
[ 92222] resize_area(0x3e5999, 0x90000) = 0x0 No error (2 us)
[ 92222] resize_area(0x3e5999, 0xb0000) = 0x0 No error (3 us)
[ 92222] read_stat(0x0, (nil), false, 0x7fc7075745c0, 0x80) = 0x0 No error (2 us)
[ 92222] read_stat(0x1, (nil), false, 0x7fc7075745c0, 0x80) = 0x0 No error (0 us)
[ 92222] read_stat(0x2, (nil), false, 0x7fc7075745c0, 0x80) = 0x0 No error (0 us)
[ 92222] get_thread_info(0x1683e, 0x7fc707574560) = 0x0 No error (1 us)
[ 92222] sigaction(0x1b, 0x7fc707574530, 0x7fc707574510) = 0x0 No error (1 us)
[ 92222] resize_area(0x3e5999, 0x1e0000) = 0x0 No error (1 us)
[ 92222] resize_area(0x3e5999, 0x1f0000) = 0x0 No error (1 us)
[ 92222] resize_area(0x3e5999, 0x200000) = 0x0 No error (1 us)
[ 92222] resize_area(0x3e5999, 0x210000) = 0x0 No error (1 us)
[ 92222] resize_area(0x3e5999, 0x220000) = 0x0 No error (1 us)
[ 92222] resize_area(0x3e5999, 0x230000) = 0x0 No error (0 us)
[ 92222] resize_area(0x3e5999, 0x240000) = 0x0 No error (1 us)
[ 92222] resize_area(0x3e5999, 0x250000) = 0x0 No error (1 us)
[ 92222] resize_area(0x3e5999, 0x260000) = 0x0 No error (2 us)
[ 92222] resize_area(0x3e5999, 0x270000) = 0x0 No error (1 us)
[ 92222] resize_area(0x3e5999, 0x280000) = 0x0 No error (1 us)
[ 92222] resize_area(0x3e5999, 0x290000) = 0x0 No error (1 us)
[ 92222] resize_area(0x3e5999, 0x2a0000) = 0x0 No error (1 us)
[ 92222] resize_area(0x3e5999, 0x2b0000) = 0x0 No error (1 us)
[ 92222] resize_area(0x3e5999, 0x2c0000) = 0x0 No error (1 us)
[ 92222] get_clock(0xfffffffe, [0x46bc]) = 0x0 No error (1 us)
[ 92222] resize_area(0x3e5999, 0x2d0000) = 0x0 No error (1 us)
[ 92222] resize_area(0x3e5999, 0x340000) = 0x0 No error (1 us)
[ 92222] resize_area(0x3e5999, 0x2950000) = 0x0 No error (1 us)
[ 92222] resize_area(0x3e5999, 0x2960000) = 0x0 No error (1 us)
[ 92222] resize_area(0x3e5999, 0x2970000) = 0x0 No error (1 us)
[ 92222] open(0xffffffff, "/dev/urandom", 0x10c0, 0x0) = 0x4 (20 us)
[ 92222] fcntl(0x4, 0x2, 0xd58dc4e0c0) = 0x1 No Error (1) (1 us)
[ 92222] read_stat(0x4, (nil), false, 0x7fc707573aa0, 0x80) = 0x0 No error (1 us)
[ 92222] read(0x4, 0xffffffffffffffff, 0x7fc707573bd0, 0x10) = 0x10 (3 us)
[ 92222] close(0x4) = 0x0 No error (3 us)
[ 92222] resize_area(0x3e5999, 0x2980000) = 0x0 No error (2 us)
[ 92222] resize_area(0x3e5999, 0x29a0000) = 0x0 No error (2 us)
[ 92222] resize_area(0x3e5999, 0x29c0000) = 0x0 No error (2 us)
[ 92222] resize_area(0x3e5999, 0x29d0000) = 0x0 No error (2 us)
[ 92222] ioctl(0x0, TCGETA, 0x7fc7075744a0, 0x20) = 0x0 No error (4 us)
[ 92222] ioctl(0x1, TCGETA, 0x7fc7075744a0, 0x20) = 0x0 No error (0 us)
[ 92222] ioctl(0x2, TCGETA, 0x7fc7075744a0, 0x20) = 0x0 No error (0 us)
[ 92222] resize_area(0x3e5999, 0x29e0000) = 0x0 No error (2 us)
[ 92222] open(0xffffffff, "/dev/urandom", 0x10c0, 0x0) = 0x4 (12 us)
[ 92222] read_stat(0x4, (nil), false, 0x7fc7075743e0, 0x80) = 0x0 No error (1 us)
[ 92222] read(0x4, 0xffffffffffffffff, 0x7fc707574520, 0x10) = 0x10 (125 us)
[ 92222] close(0x4) = 0x0 No error (2 us)
[ 92222] set_signal_mask(0x3, 0x7fc707574578, (nil)) = 0x0 No error (1 us)
[ 92222] sigaction(0x2, 0x7fc707574520, 0x7fc707574500) = 0x0 No error (1 us)
[ 92222] sigaction(0x1, 0x7fc707574520, 0x7fc707574500) = 0x0 No error (0 us)
[ 92222] sigaction(0x3, 0x7fc707574520, 0x7fc707574500) = 0x0 No error (0 us)
[ 92222] sigaction(0xf, 0x7fc707574520, 0x7fc707574500) = 0x0 No error (0 us)
[ 92222] sigaction(0xe, 0x7fc707574520, 0x7fc707574500) = 0x0 No error (0 us)
[ 92222] sigaction(0x12, 0x7fc707574520, 0x7fc707574500) = 0x0 No error (1 us)
[ 92222] sigaction(0x13, 0x7fc707574520, 0x7fc707574500) = 0x0 No error (1 us)
[ 92222] sigaction(0x1e, 0x7fc707574520, 0x7fc707574500) = 0x0 No error (1 us)
[ 92222] sigaction(0x4, 0x7fc707574520, 0x7fc707574500) = 0x0 No error (0 us)
[ 92222] set_signal_stack(0x7fc707574560, 0x7fc707574540) = 0x0 No error (0 us)
[ 92222] sigaction(0xb, 0x7fc707574520, 0x7fc707574500) = 0x0 No error (0 us)
[ 92222] sigaction(0x7, 0x7fc707574520, 0x7fc707574500) = 0x0 No error (0 us)
[ 92222] sigaction(0x19, 0x7fc707574520, 0x7fc707574500) = 0x0 No error (1 us)
[ 92222] sigaction(0x5, 0x7fc707574530, 0x7fc707574510) = 0x0 No error (1 us)
[ 92222] sigaction(0x5, 0x7fc707574530, 0x7fc707574510) = 0x0 No error (0 us)
[ 92222] set_signal_mask(0x3, 0x7fc707574578, (nil)) = 0x0 No error (0 us)
[ 92222] resize_area(0x3e5999, 0x2a00000) = 0x0 No error (2 us)
[ 92222] create_pipe([0x4]) = 0x0 No error (26 us)
[ 92222] fcntl(0x4, 0x2, 0x104a3b64e250) = 0x0 No error (0 us)
[ 92222] fcntl(0x4, 0x4, 0x1) = 0x0 No error (1 us)
[ 92222] fcntl(0x5, 0x2, 0x1) = 0x0 No error (0 us)
[ 92222] fcntl(0x5, 0x4, 0x1) = 0x0 No error (0 us)
[ 92222] fcntl(0x4, 0x8, 0x1) = 0x0 No error (0 us)
[ 92222] fcntl(0x4, 0x10, 0x80) = 0x0 No error (1 us)
[ 92222] fcntl(0x5, 0x8, 0x80) = 0x1 No Error (1) (0 us)
[ 92222] fcntl(0x5, 0x10, 0x81) = 0x0 No error (0 us)
[ 92222] create_pipe([0x6]) = 0x0 No error (19 us)
[ 92222] fcntl(0x6, 0x2, 0x81) = 0x0 No error (0 us)
[ 92222] fcntl(0x6, 0x4, 0x1) = 0x0 No error (0 us)
[ 92222] fcntl(0x7, 0x2, 0x1) = 0x0 No error (1 us)
[ 92222] fcntl(0x7, 0x4, 0x1) = 0x0 No error (0 us)
[ 92222] fcntl(0x6, 0x8, 0x1) = 0x0 No error (0 us)
[ 92222] fcntl(0x6, 0x10, 0x80) = 0x0 No error (1 us)
[ 92222] fcntl(0x7, 0x8, 0x80) = 0x1 No Error (1) (0 us)
[ 92222] fcntl(0x7, 0x10, 0x81) = 0x0 No error (1 us)
[ 92222] create_pipe([0x8]) = 0x0 No error (21 us)
[ 92222] fcntl(0x8, 0x2, 0x81) = 0x0 No error (0 us)
[ 92222] fcntl(0x8, 0x4, 0x1) = 0x0 No error (1 us)
[ 92222] fcntl(0x9, 0x2, 0x1) = 0x0 No error (0 us)
[ 92222] fcntl(0x9, 0x4, 0x1) = 0x0 No error (1 us)
[ 92222] fcntl(0x8, 0x8, 0x1) = 0x0 No error (0 us)
[ 92222] fcntl(0x8, 0x10, 0x80) = 0x0 No error (0 us)
[ 92222] fcntl(0x9, 0x8, 0x80) = 0x1 No Error (1) (1 us)
[ 92222] fcntl(0x9, 0x10, 0x81) = 0x0 No error (0 us)
[ 92222] spawn_thread(0x7fc7075744a0) = 0x16840 (31 us)
[ 92222] resume_thread(0x16840) = 0x0 No error (3 us)
[ 92222] getuid(true) = 0x0 (0 us)
[ 92222] getgid(true) = 0x0 (0 us)
[ 92222] map_file("libruby.so.2.7 mmap area", 0x7fc707574448, 0x6, 0x1440000, 0x3, 0x1, true, 0x0, 0xffffffff) = 0x3e59ae (5 us)
[ 92222] set_memory_protection(0x5a5a97b000, 0x1000, 0x0) = 0x0 No error (3 us)
[ 92222] set_memory_protection(0x5a5aa1d000, 0x1000, 0x0) = 0x0 No error (1 us)
[ 92222] set_memory_protection(0x5a5aabf000, 0x1000, 0x0) = 0x0 No error (1 us)
[ 92222] set_memory_protection(0x5a5ab61000, 0x1000, 0x0) = 0x0 No error (1 us)
[ 92222] set_memory_protection(0x5a5ac03000, 0x1000, 0x0) = 0x0 No error (1 us)
[ 92222] set_memory_protection(0x5a5aca5000, 0x1000, 0x0) = 0x0 No error (1 us)
[ 92222] set_memory_protection(0x5a5ad47000, 0x1000, 0x0) = 0x0 No error (1 us)
[ 92222] set_memory_protection(0x5a5ade9000, 0x1000, 0x0) = 0x0 No error (1 us)
[ 92222] set_memory_protection(0x5a5ae8b000, 0x1000, 0x0) = 0x0 No error (0 us)
[ 92222] set_memory_protection(0x5a5af2d000, 0x1000, 0x0) = 0x0 No error (1 us)
[ 92222] set_memory_protection(0x5a5afcf000, 0x1000, 0x0) = 0x0 No error (1 us)
[ 92222] set_memory_protection(0x5a5b071000, 0x1000, 0x0) = 0x0 No error (1 us)
[ 92222] set_memory_protection(0x5a5b113000, 0x1000, 0x0) = 0x0 No error (0 us)
[ 92222] set_memory_protection(0x5a5b1b5000, 0x1000, 0x0) = 0x0 No error (0 us)
[ 92222] set_memory_protection(0x5a5b257000, 0x1000, 0x0) = 0x0 No error (1 us)
[ 92222] set_memory_protection(0x5a5b2f9000, 0x1000, 0x0) = 0x0 No error (1 us)
[ 92222] set_memory_protection(0x5a5b39b000, 0x1000, 0x0) = 0x0 No error (1 us)
[ 92222] set_memory_protection(0x5a5b43d000, 0x1000, 0x0) = 0x0 No error (1 us)
[ 92222] set_memory_protection(0x5a5b4df000, 0x1000, 0x0) = 0x0 No error (1 us)
[ 92222] set_memory_protection(0x5a5b581000, 0x1000, 0x0) = 0x0 No error (1 us)
[ 92222] set_memory_protection(0x5a5b623000, 0x1000, 0x0) = 0x0 No error (1 us)
[ 92222] set_memory_protection(0x5a5b6c5000, 0x1000, 0x0) = 0x0 No error (1 us)
[ 92222] set_memory_protection(0x5a5b767000, 0x1000, 0x0) = 0x0 No error (1 us)
[ 92222] set_memory_protection(0x5a5b809000, 0x1000, 0x0) = 0x0 No error (1 us)
[ 92222] set_memory_protection(0x5a5b8ab000, 0x1000, 0x0) = 0x0 No error (0 us)
[ 92222] set_memory_protection(0x5a5b94d000, 0x1000, 0x0) = 0x0 No error (1 us)
[ 92222] set_memory_protection(0x5a5b9ef000, 0x1000, 0x0) = 0x0 No error (1 us)
[ 92222] set_memory_protection(0x5a5ba91000, 0x1000, 0x0) = 0x0 No error (1 us)
[ 92222] set_memory_protection(0x5a5bb33000, 0x1000, 0x0) = 0x0 No error (1 us)
[ 92222] set_memory_protection(0x5a5bbd5000, 0x1000, 0x0) = 0x0 No error (1 us)
[ 92222] set_memory_protection(0x5a5bc77000, 0x1000, 0x0) = 0x0 No error (1 us)
[ 92222] set_memory_protection(0x5a5bd19000, 0x1000, 0x0) = 0x0 No error (0 us)
[ 92222] getuid(false) = 0x0 (0 us)
[ 92222] getuid(true) = 0x0 (0 us)
[ 92222] getgid(false) = 0x0 (0 us)
[ 92222] getgid(true) = 0x0 (0 us)
[ 92222] normalize_path("/packages/ruby-2.7.2-1/.self/lib/ruby/site_ruby/2.7.0", true, 0x104a3b49d770) = 0x0 No error (40 us)
[ 92222] read_stat(0xffffffff, "/boot/system/lib/ruby/site_ruby/2.7.0", false, 0x7fc707573a20, 0x80) = 0x0 No error (5 us)
[ 92222] read_stat(0xffffffff, "/boot/system/lib/ruby/site_ruby/2.7.0", true, 0x7fc707573af0, 0x80) = 0x0 No error (4 us)
[ 92222] normalize_path("/packages/ruby-2.7.2-1/.self/lib/ruby/site_ruby/2.7.0/x86_64-haiku", true, 0x104a3b49d770) = 0x0 No error (14 us)
[ 92222] read_stat(0xffffffff, "/boot/system/lib/ruby/site_ruby/2.7.0/x86_64-haiku", false, 0x7fc707573a20, 0x80) = 0x0 No error (4 us)
[ 92222] read_stat(0xffffffff, "/boot/system/lib/ruby/site_ruby/2.7.0/x86_64-haiku", true, 0x7fc707573af0, 0x80) = 0x0 No error (3 us)
[ 92222] normalize_path("/packages/ruby-2.7.2-1/.self/lib/ruby/site_ruby", true, 0x104a3b49d770) = 0x0 No error (10 us)
[ 92222] read_stat(0xffffffff, "/boot/system/lib/ruby/site_ruby", false, 0x7fc707573a20, 0x80) = 0x0 No error (3 us)
[ 92222] read_stat(0xffffffff, "/boot/system/lib/ruby/site_ruby", true, 0x7fc707573af0, 0x80) = 0x0 No error (3 us)
[ 92222] normalize_path("/packages/ruby-2.7.2-1/.self/lib/ruby/vendor_ruby/2.7.0", true, 0x104a3b49d770) = 0x0 No error (11 us)
[ 92222] read_stat(0xffffffff, "/boot/system/lib/ruby/vendor_ruby/2.7.0", false, 0x7fc707573a20, 0x80) = 0x0 No error (3 us)
[ 92222] read_stat(0xffffffff, "/boot/system/lib/ruby/vendor_ruby/2.7.0", true, 0x7fc707573af0, 0x80) = 0x0 No error (2 us)
[ 92222] normalize_path("/packages/ruby-2.7.2-1/.self/lib/ruby/vendor_ruby/2.7.0/x86_64-haiku", true, 0x104a3b49d770) = 0x0 No error (11 us)
[ 92222] read_stat(0xffffffff, "/boot/system/lib/ruby/vendor_ruby/2.7.0/x86_64-haiku", false, 0x7fc707573a20, 0x80) = 0x0 No error (3 us)
[ 92222] read_stat(0xffffffff, "/boot/system/lib/ruby/vendor_ruby/2.7.0/x86_64-haiku", true, 0x7fc707573af0, 0x80) = 0x0 No error (3 us)
[ 92222] normalize_path("/packages/ruby-2.7.2-1/.self/lib/ruby/vendor_ruby", true, 0x104a3b49d770) = 0x0 No error (9 us)
[ 92222] read_stat(0xffffffff, "/boot/system/lib/ruby/vendor_ruby", false, 0x7fc707573a20, 0x80) = 0x0 No error (2 us)
[ 92222] read_stat(0xffffffff, "/boot/system/lib/ruby/vendor_ruby", true, 0x7fc707573af0, 0x80) = 0x0 No error (3 us)
[ 92222] normalize_path("/packages/ruby-2.7.2-1/.self/lib/ruby/2.7.0", true, 0x104a3b49d770) = 0x0 No error (9 us)
[ 92222] read_stat(0xffffffff, "/boot/system/lib/ruby/2.7.0", false, 0x7fc707573a20, 0x80) = 0x0 No error (2 us)
[ 92222] read_stat(0xffffffff, "/boot/system/lib/ruby/2.7.0", true, 0x7fc707573af0, 0x80) = 0x0 No error (2 us)
[ 92222] normalize_path("/packages/ruby-2.7.2-1/.self/lib/ruby/2.7.0/x86_64-haiku", true, 0x104a3b49d770) = 0x0 No error (9 us)
[ 92222] read_stat(0xffffffff, "/boot/system/lib/ruby/2.7.0/x86_64-haiku", false, 0x7fc707573a20, 0x80) = 0x0 No error (3 us)
[ 92222] read_stat(0xffffffff, "/boot/system/lib/ruby/2.7.0/x86_64-haiku", true, 0x7fc707573af0, 0x80) = 0x0 No error (2 us)
[ 92222] open(0xffffffff, "/boot/system/lib/ruby/site_ruby/2.7.0/enc/encdb.so", 0xc0, 0x0) = 0x80006003 (3 us)
[ 92222] open(0xffffffff, "/boot/system/lib/ruby/site_ruby/2.7.0/x86_64-haiku/enc/encdb.so", 0xc0, 0x0) = 0x80006003 (3 us)
[ 92222] open(0xffffffff, "/boot/system/lib/ruby/site_ruby/enc/encdb.so", 0xc0, 0x0) = 0x80006003 (3 us)
[ 92222] open(0xffffffff, "/boot/system/lib/ruby/vendor_ruby/2.7.0/enc/encdb.so", 0xc0, 0x0) = 0x80006003 (3 us)
[ 92222] open(0xffffffff, "/boot/system/lib/ruby/vendor_ruby/2.7.0/x86_64-haiku/enc/encdb.so", 0xc0, 0x0) = 0x80006003 (4 us)
[ 92222] open(0xffffffff, "/boot/system/lib/ruby/vendor_ruby/enc/encdb.so", 0xc0, 0x0) = 0x80006003 (2 us)
[ 92222] open(0xffffffff, "/boot/system/lib/ruby/2.7.0/enc/encdb.so", 0xc0, 0x0) = 0x80006003 (3 us)
[ 92222] open(0xffffffff, "/boot/system/lib/ruby/2.7.0/x86_64-haiku/enc/encdb.so", 0xc0, 0x0) = 0xa (6 us)
[ 92222] read_stat(0xa, (nil), false, 0x7fc707573c70, 0x80) = 0x0 No error (1 us)
[ 92222] close(0xa) = 0x0 No error (1 us)
[ 92222] open(0xffffffff, "/boot/system/lib/ruby/2.7.0/x86_64-haiku/enc/encdb.so", 0x0, 0x0) = 0xa (5 us)
[ 92222] normalize_path("/boot/system/lib/ruby/2.7.0/x86_64-haiku/enc/encdb.so", true, 0x7fc707572830) = 0x0 No error (9 us)
[ 92222] read(0xa, 0x0, 0x7fc7075727f0, 0x40) = 0x40 (3 us)
[ 92222] read(0xa, 0x40, 0x7fc707572c30, 0xa8) = 0xa8 (1 us)
[ 92222] reserve_address_range([0x4e3b153000], 0x7, 0x202000) = 0x0 No error (3 us)
[ 92222] map_file("encdb.so_seg0ro", 0x7fc707572708, 0x1, 0x2000, 0x1003, 0x1, true, 0x0, 0x2749745ed8) = 0x3e59af (6 us)
[ 92222] map_file("encdb.so_seg1rw", 0x7fc707572708, 0x1, 0x1000, 0x3, 0x1, true, 0x0, 0x2749745f20) = 0x3e59b0 (3 us)
[ 92222] read_stat(0xa, (nil), false, 0x7fc707572240, 0x80) = 0x0 No error (0 us)
[ 92222] register_image(0x7fc7075722c0, 0x470) = 0x12e3db (2 us)
[ 92222] close(0xa) = 0x0 No error (1 us)
[ 92222] image_relocated(0x12e3db) (0 us)
[ 92222] set_area_protection(0x3e59af, 0x5) = 0x0 No error (5 us)
[ 92222] resize_area(0x3e5999, 0x2a20000) = 0x0 No error (2 us)
[ 92222] open(0xffffffff, "/boot/system/lib/ruby/site_ruby/2.7.0/enc/trans/transdb.so", 0xc0, 0x0) = 0x80006003 (8 us)
[ 92222] open(0xffffffff, "/boot/system/lib/ruby/site_ruby/2.7.0/x86_64-haiku/enc/trans/transdb.so", 0xc0, 0x0) = 0x80006003 (3 us)
[ 92222] open(0xffffffff, "/boot/system/lib/ruby/site_ruby/enc/trans/transdb.so", 0xc0, 0x0) = 0x80006003 (2 us)
[ 92222] open(0xffffffff, "/boot/system/lib/ruby/vendor_ruby/2.7.0/enc/trans/transdb.so", 0xc0, 0x0) = 0x80006003 (3 us)
[ 92222] open(0xffffffff, "/boot/system/lib/ruby/vendor_ruby/2.7.0/x86_64-haiku/enc/trans/transdb.so", 0xc0, 0x0) = 0x80006003 (3 us)
[ 92222] open(0xffffffff, "/boot/system/lib/ruby/vendor_ruby/enc/trans/transdb.so", 0xc0, 0x0) = 0x80006003 (2 us)
[ 92222] open(0xffffffff, "/boot/system/lib/ruby/2.7.0/enc/trans/transdb.so", 0xc0, 0x0) = 0x80006003 (2 us)
[ 92222] open(0xffffffff, "/boot/system/lib/ruby/2.7.0/x86_64-haiku/enc/trans/transdb.so", 0xc0, 0x0) = 0xa (6 us)
[ 92222] read_stat(0xa, (nil), false, 0x7fc707573c70, 0x80) = 0x0 No error (1 us)
[ 92222] close(0xa) = 0x0 No error (1 us)
[ 92222] open(0xffffffff, "/boot/system/lib/ruby/2.7.0/x86_64-haiku/enc/trans/transdb.so", 0x0, 0x0) = 0xa (5 us)
[ 92222] normalize_path("/boot/system/lib/ruby/2.7.0/x86_64-haiku/enc/trans/transdb.so", true, 0x7fc707572830) = 0x0 No error (12 us)
[ 92222] read(0xa, 0x0, 0x7fc7075727f0, 0x40) = 0x40 (3 us)
[ 92222] read(0xa, 0x40, 0x7fc707572c30, 0xa8) = 0xa8 (1 us)
[ 92222] reserve_address_range([0x4841c04000], 0x7, 0x203000) = 0x0 No error (2 us)
[ 92222] map_file("transdb.so_seg0ro", 0x7fc707572708, 0x1, 0x2000, 0x1003, 0x1, true, 0x0, 0x27497465b8) = 0x3e59b1 (3 us)
[ 92222] map_file("transdb.so_seg1rw", 0x7fc707572708, 0x1, 0x1000, 0x3, 0x1, true, 0x0, 0x2749746600) = 0x3e59b2 (3 us)
[ 92222] read_stat(0xa, (nil), false, 0x7fc707572240, 0x80) = 0x0 No error (0 us)
[ 92222] register_image(0x7fc7075722c0, 0x470) = 0x12e3dc (2 us)
[ 92222] close(0xa) = 0x0 No error (1 us)
[ 92222] image_relocated(0x12e3dc) (1 us)
[ 92222] set_area_protection(0x3e59b1, 0x5) = 0x0 No error (5 us)
[ 92222] open(0xffffffff, "/boot/system/lib/ruby/site_ruby/2.7.0/rubygems.rb", 0xc0, 0x0) = 0x80006003 (6 us)
[ 92222] open(0xffffffff, "/boot/system/lib/ruby/site_ruby/2.7.0/x86_64-haiku/rubygems.rb", 0xc0, 0x0) = 0x80006003 (4 us)
[ 92222] open(0xffffffff, "/boot/system/lib/ruby/site_ruby/rubygems.rb", 0xc0, 0x0) = 0x80006003 (3 us)
[ 92222] open(0xffffffff, "/boot/system/lib/ruby/vendor_ruby/2.7.0/rubygems.rb", 0xc0, 0x0) = 0x80006003 (3 us)
[ 92222] open(0xffffffff, "/boot/system/lib/ruby/vendor_ruby/2.7.0/x86_64-haiku/rubygems.rb", 0xc0, 0x0) = 0x80006003 (4 us)
[ 92222] open(0xffffffff, "/boot/system/lib/ruby/vendor_ruby/rubygems.rb", 0xc0, 0x0) = 0x80006003 (3 us)
[ 92222] open(0xffffffff, "/boot/system/lib/ruby/2.7.0/rubygems.rb", 0xc0, 0x0) = 0xa (4 us)
[ 92222] read_stat(0xa, (nil), false, 0x7fc7075728c0, 0x80) = 0x0 No error (1 us)
[ 92222] close(0xa) = 0x0 No error (1 us)
[ 92222] getuid(false) = 0x0 (0 us)
[ 92222] getuid(true) = 0x0 (0 us)
[ 92222] getgid(false) = 0x0 (0 us)
[ 92222] getgid(true) = 0x0 (0 us)
[ 92222] open(0xffffffff, "/boot/system/lib/ruby/2.7.0/rubygems.rb", 0xc0, 0x0) = 0xa (3 us)
[ 92222] fcntl(0xa, 0x10, 0x0) = 0x8000600e Operation not supported (0 us)
[ 92222] close(0xa) = 0x0 No error (1 us)
[ 92222] ioctl(0x2, TCGETA, 0x7fc7075743f0, 0x20) = 0x0 No error (3 us)
[ 92222] write(0x2, 0xffffffffffffffff, 0x7fc707574460, 0x2a) = 0x2a (5 us)
[ 92222] write(0x2, 0xffffffffffffffff, 0x104a3de1b290, 0x3e) = 0x3e (4 us)
[ 92222] write(0x2, 0xffffffffffffffff, 0x104a3ddfa120, 0x25) = 0x25 (3 us)
[ 92222] write(0x2, 0xffffffffffffffff, 0x172ec5ad724, 0x2) = 0x2 (3 us)
[ 92222] write(0x2, 0xffffffffffffffff, 0x172ec5ad71a, 0x4) = 0x4 (3 us)
[ 92222] write(0x2, 0xffffffffffffffff, 0x104a3de089e0, 0x42) = 0x42 (3 us)
[ 92222] write(0x2, 0xffffffffffffffff, 0x172ec5ad73d, 0x2) = 0x2 (1 us)
[ 92222] write(0x2, 0xffffffffffffffff, 0x172ec5ad713, 0x6) = 0x6 (2 us)
[ 92222] write(0x2, 0xffffffffffffffff, 0x104a3b61d200, 0x9) = 0x9 (3 us)
[ 92222] write(0x2, 0xffffffffffffffff, 0x172ec5ad71f, 0x3) = 0x3 (2 us)
[ 92222] write(0x2, 0xffffffffffffffff, 0x172ec5ad71a, 0x4) = 0x4 (2 us)
[ 92222] write(0x2, 0xffffffffffffffff, 0x172ec5ad740, 0x1) = 0x1 (2 us)
[ 92222] write(0x2, 0xffffffffffffffff, 0x172ec5ad71f, 0x3) = 0x3 (3 us)
[ 92222] write(0x2, 0xffffffffffffffff, 0x172ec5ad73b, 0x1) = 0x1 (2 us)
[ 92222] sigaction(0x2, 0x7fc707574500, 0x7fc7075744e0) = 0x0 No error (1 us)
[ 92222] sigaction(0x2, 0x7fc707574500, 0x7fc7075744e0) = 0x0 No error (0 us)
[ 92222] write(0x9, 0xffffffffffffffff, 0x7fc7075744f3, 0x1) = 0x1 (3 us)
[ 92224] poll(0x7fc49dfb768c, 0x1, 0xfffffffffffffc18) = 0x1 (6633 us)
[ 92224] read(0x8, 0xffffffffffffffff, 0x172ec8cf580, 0x400) = 0x1 (2 us)
[ 92224] exit_thread(0x0) (1 us)
[ 92222] wait_for_thread(0x16840, [0x0]) = 0x0 No error (92 us)
[ 92222] exit_team(0x1) (2 us)

@nobu
Copy link
Member

nobu commented Nov 1, 2020

Thank you, I installed Haiku on Virtualbox, but can't find manpages.
It seems ENOTSUP according to the message, correct?
Does https://github.com/nobu/ruby/tree/retry-nonblocking-load help it?

@extrowerk
Copy link
Contributor Author

extrowerk commented Nov 1, 2020

Does nobu/ruby@retry-nonblocking-load help it?

Can you explain how can i test it?

@nobu
Copy link
Member

nobu commented Nov 2, 2020

Does nobu/ruby@retry-nonblocking-load help it?

Can you explain how can i test it?

Sorry, it wasn't a link.
You can apply the patch to also 2.7.

@nobu
Copy link
Member

nobu commented Nov 2, 2020

@jonatanmurga Thank you, are you an expert on Haiku-OS (and packaged FS)?

@extrowerk
Copy link
Contributor Author

@nobu, i am kind of. I am with the HaikuPorts team.

@extrowerk
Copy link
Contributor Author

@nobu: with the linked patch the result is the same:

Traceback (most recent call last):
        1: from <internal:gem_prelude>:1:in `<internal:gem_prelude>'
<internal:gem_prelude>:1:in `require': Operation not supported -- /boot/system/lib/ruby/2.7.0/rubygems.rb (LoadError)
/Ports/haikuports> 

strace:

[ 44252] image_relocated(0x4c59f) (62 us)
[ 44252] set_area_protection(0x1123c5, 0x5) = 0x0 No error (5 us)
[ 44252] set_area_protection(0x1123c7, 0x5) = 0x0 No error (3 us)
[ 44252] set_area_protection(0x1123c9, 0x5) = 0x0 No error (11 us)
[ 44252] set_area_protection(0x1123cc, 0x5) = 0x0 No error (3 us)
[ 44252] set_area_protection(0x1123ce, 0x5) = 0x0 No error (4 us)
[ 44252] set_area_protection(0x1123d0, 0x5) = 0x0 No error (10 us)
[ 44252] set_area_protection(0x1123d3, 0x5) = 0x0 No error (4 us)
[ 44252] get_system_info(0x7f9081f1bac0) = 0x0 No error (2 us)
[ 44252] get_system_info(0x7f9081f1b8d0) = 0x0 No error (1 us)
[ 44252] reserve_address_range([0x11d71f15e000], 0x7, 0x1000000000) = 0x0 No error (2 us)
[ 44252] create_area("heap", 0x1ecc440cc40, 0x1, 0x40000, 0x0, 0x103) = 0x1123d6 (5 us)
[ 44252] resize_area(0x1123d6, 0x50000) = 0x0 No error (1 us)
[ 44252] open(0xffffffff, "/dev/urandom", 0x0, 0x0) = 0x4 (8 us)
[ 44252] read(0x4, 0xffffffffffffffff, 0x10263cffe30, 0x8) = 0x8 (2 us)
[ 44252] close(0x4) = 0x0 No error (1 us)
[ 44252] read_stat(0xffffffff, "/boot/system/bin/lib/libroot-addon-icu.so", false, 0x7f9081f19c60, 0x80) = 0x80006003 No such file or directory (4 us)
[ 44252] read_stat(0xffffffff, "/boot/home/config/non-packaged/lib/libroot-addon-icu.so", false, 0x7f9081f19c60, 0x80) = 0x80006003 No such file or directory (4 us)
[ 44252] read_stat(0xffffffff, "/boot/home/config/lib/libroot-addon-icu.so", false, 0x7f9081f19c60, 0x80) = 0x80006003 No such file or directory (1 us)
[ 44252] read_stat(0xffffffff, "/boot/system/non-packaged/lib/libroot-addon-icu.so", false, 0x7f9081f19c60, 0x80) = 0x80006003 No such file or directory (2 us)
[ 44252] read_stat(0xffffffff, "/boot/system/lib/libroot-addon-icu.so", false, 0x7f9081f19c60, 0x80) = 0x0 No error (3 us)
[ 44252] open(0xffffffff, "/boot/system/lib/libroot-addon-icu.so", 0x0, 0x0) = 0x4 (2 us)
[ 44252] read_stat(0x4, (nil), true, 0x7f9081f1a160, 0x80) = 0x0 No error (1 us)
[ 44252] normalize_path("/boot/system/lib/libroot-addon-icu.so", true, 0x7f9081f1a750) = 0x0 No error (6 us)
[ 44252] read(0x4, 0x0, 0x7f9081f1a710, 0x40) = 0x40 (3 us)
[ 44252] read(0x4, 0x40, 0x7f9081f1ab50, 0xa8) = 0xa8 (1 us)
[ 44252] reserve_address_range([0xf111aad000], 0x7, 0x212000) = 0x0 No error (2 us)
[ 44252] map_file("libroot-addon-icu.so_seg0ro", 0x7f9081f1a628, 0x1, 0x11000, 0x1003, 0x1, true, 0x0, 0x1148f95f0) = 0x1123d7 (4 us)
[ 44252] map_file("libroot-addon-icu.so_seg1rw", 0x7f9081f1a628, 0x1, 0x1000, 0x3, 0x1, true, 0x0, 0x1148f9638) = 0x1123d8 (2 us)
[ 44252] read_stat(0x4, (nil), false, 0x7f9081f1a160, 0x80) = 0x0 No error (1 us)
[ 44252] register_image(0x7f9081f1a1e0, 0x470) = 0x4c5a6 (2 us)
[ 44252] close(0x4) = 0x0 No error (1 us)
[ 44252] read_stat(0xffffffff, "/boot/system/bin/lib/libstdc++.so.6", false, 0x7f9081f19bf0, 0x80) = 0x80006003 No such file or directory (2 us)
[ 44252] read_stat(0xffffffff, "/boot/home/config/non-packaged/lib/libstdc++.so.6", false, 0x7f9081f19bf0, 0x80) = 0x80006003 No such file or directory (3 us)
[ 44252] read_stat(0xffffffff, "/boot/home/config/lib/libstdc++.so.6", false, 0x7f9081f19bf0, 0x80) = 0x80006003 No such file or directory (2 us)
[ 44252] read_stat(0xffffffff, "/boot/system/non-packaged/lib/libstdc++.so.6", false, 0x7f9081f19bf0, 0x80) = 0x80006003 No such file or directory (2 us)
[ 44252] read_stat(0xffffffff, "/boot/system/lib/libstdc++.so.6", false, 0x7f9081f19bf0, 0x80) = 0x0 No error (2 us)
[ 44252] read_link(0xffffffff, "/boot/system/lib/libstdc++.so.6", 0x7f9081f19c70, [0x13]) = 0x0 No error (3 us)
[ 44252] open(0xffffffff, "/boot/system/lib/libstdc++.so.6.0.25", 0x0, 0x0) = 0x4 (3 us)
[ 44252] read_stat(0x4, (nil), true, 0x7f9081f1a0f0, 0x80) = 0x0 No error (0 us)
[ 44252] normalize_path("/boot/system/lib/libstdc++.so.6.0.25", true, 0x7f9081f1a6e0) = 0x0 No error (5 us)
[ 44252] read(0x4, 0x0, 0x7f9081f1a6a0, 0x40) = 0x40 (1 us)
[ 44252] read(0x4, 0x40, 0x7f9081f1aae0, 0x118) = 0x118 (1 us)
[ 44252] reserve_address_range([0x1c570e3c000], 0x7, 0x376000) = 0x0 No error (1 us)
[ 44252] map_file("libstdc++.so.6.0.25_seg0ro", 0x7f9081f1a5b8, 0x1, 0x162000, 0x1003, 0x1, true, 0x0, 0x1148f9d90) = 0x1123d9 (7 us)
[ 44252] map_file("libstdc++.so.6.0.25_seg1rw", 0x7f9081f1a5b8, 0x1, 0xc000, 0x3, 0x1, true, 0x0, 0x1148f9dd8) = 0x1123da (4 us)
[ 44252] create_area("libstdc++.so.6.0.25_seg2rw", 0x7f9081f1a5b8, 0x1, 0x8000, 0x0, 0x3) = 0x1123db (2 us)
[ 44252] read(0x4, 0x1e44f0, 0x7f9081f1aae0, 0x800) = 0x800 (2 us)
[ 44252] read(0x4, 0x1e43de, 0x7f9081f1b9cf, 0x111) = 0x111 (1 us)
[ 44252] read(0x4, 0x16db00, 0x7f9081f1aae0, 0x29) = 0x29 (1 us)
[ 44252] read_stat(0x4, (nil), false, 0x7f9081f1a0f0, 0x80) = 0x0 No error (0 us)
[ 44252] register_image(0x7f9081f1a170, 0x470) = 0x4c5a7 (2 us)
[ 44252] close(0x4) = 0x0 No error (0 us)
[ 44252] read_stat(0xffffffff, "/boot/system/bin/lib/libicudata.so.57", false, 0x7f9081f19bf0, 0x80) = 0x80006003 No such file or directory (3 us)
[ 44252] read_stat(0xffffffff, "/boot/home/config/non-packaged/lib/libicudata.so.57", false, 0x7f9081f19bf0, 0x80) = 0x80006003 No such file or directory (2 us)
[ 44252] read_stat(0xffffffff, "/boot/home/config/lib/libicudata.so.57", false, 0x7f9081f19bf0, 0x80) = 0x80006003 No such file or directory (2 us)
[ 44252] read_stat(0xffffffff, "/boot/system/non-packaged/lib/libicudata.so.57", false, 0x7f9081f19bf0, 0x80) = 0x80006003 No such file or directory (2 us)
[ 44252] read_stat(0xffffffff, "/boot/system/lib/libicudata.so.57", false, 0x7f9081f19bf0, 0x80) = 0x0 No error (4 us)
[ 44252] read_link(0xffffffff, "/boot/system/lib/libicudata.so.57", 0x7f9081f19c70, [0x12]) = 0x0 No error (2 us)
[ 44252] open(0xffffffff, "/boot/system/lib/libicudata.so.57.2", 0x0, 0x0) = 0x4 (3 us)
[ 44252] read_stat(0x4, (nil), true, 0x7f9081f1a0f0, 0x80) = 0x0 No error (0 us)
[ 44252] normalize_path("/boot/system/lib/libicudata.so.57.2", true, 0x7f9081f1a6e0) = 0x0 No error (5 us)
[ 44252] read(0x4, 0x0, 0x7f9081f1a6a0, 0x40) = 0x40 (1 us)
[ 44252] read(0x4, 0x40, 0x7f9081f1aae0, 0xe0) = 0xe0 (0 us)
[ 44252] reserve_address_range([0xef76e51000], 0x7, 0x1a80000) = 0x0 No error (1 us)
[ 44252] map_file("libicudata.so.57.2_seg0ro", 0x7f9081f1a5b8, 0x1, 0x1880000, 0x1003, 0x1, true, 0x0, 0x1148fa908) = 0x1123dc (79 us)
[ 44252] map_file("libicudata.so.57.2_seg1rw", 0x7f9081f1a5b8, 0x1, 0x1000, 0x3, 0x1, true, 0x0, 0x1148fa950) = 0x1123dd (4 us)
[ 44252] read_stat(0x4, (nil), false, 0x7f9081f1a0f0, 0x80) = 0x0 No error (0 us)
[ 44252] register_image(0x7f9081f1a170, 0x470) = 0x4c5a8 (1 us)
[ 44252] close(0x4) = 0x0 No error (1 us)
[ 44252] read_stat(0xffffffff, "/boot/system/bin/lib/libicui18n.so.57", false, 0x7f9081f19bf0, 0x80) = 0x80006003 No such file or directory (2 us)
[ 44252] read_stat(0xffffffff, "/boot/home/config/non-packaged/lib/libicui18n.so.57", false, 0x7f9081f19bf0, 0x80) = 0x80006003 No such file or directory (3 us)
[ 44252] read_stat(0xffffffff, "/boot/home/config/lib/libicui18n.so.57", false, 0x7f9081f19bf0, 0x80) = 0x80006003 No such file or directory (2 us)
[ 44252] read_stat(0xffffffff, "/boot/system/non-packaged/lib/libicui18n.so.57", false, 0x7f9081f19bf0, 0x80) = 0x80006003 No such file or directory (2 us)
[ 44252] read_stat(0xffffffff, "/boot/system/lib/libicui18n.so.57", false, 0x7f9081f19bf0, 0x80) = 0x0 No error (2 us)
[ 44252] read_link(0xffffffff, "/boot/system/lib/libicui18n.so.57", 0x7f9081f19c70, [0x12]) = 0x0 No error (3 us)
[ 44252] open(0xffffffff, "/boot/system/lib/libicui18n.so.57.2", 0x0, 0x0) = 0x4 (2 us)
[ 44252] read_stat(0x4, (nil), true, 0x7f9081f1a0f0, 0x80) = 0x0 No error (0 us)
[ 44252] normalize_path("/boot/system/lib/libicui18n.so.57.2", true, 0x7f9081f1a6e0) = 0x0 No error (6 us)
[ 44252] read(0x4, 0x0, 0x7f9081f1a6a0, 0x40) = 0x40 (1 us)
[ 44252] read(0x4, 0x40, 0x7f9081f1aae0, 0xa8) = 0xa8 (1 us)
[ 44252] reserve_address_range([0x13b6d2b6000], 0x7, 0x491000) = 0x0 No error (2 us)
[ 44252] map_file("libicui18n.so.57.2_seg0ro", 0x7f9081f1a5b8, 0x1, 0x27c000, 0x1003, 0x1, true, 0x0, 0x1148fafc8) = 0x1123de (13 us)
[ 44252] map_file("libicui18n.so.57.2_seg1rw", 0x7f9081f1a5b8, 0x1, 0x15000, 0x3, 0x1, true, 0x0, 0x1148fb010) = 0x1123df (4 us)
[ 44252] read_stat(0x4, (nil), false, 0x7f9081f1a0f0, 0x80) = 0x0 No error (0 us)
[ 44252] register_image(0x7f9081f1a170, 0x470) = 0x4c5a9 (1 us)
[ 44252] close(0x4) = 0x0 No error (1 us)
[ 44252] read_stat(0xffffffff, "/boot/system/bin/lib/libicuio.so.57", false, 0x7f9081f19bf0, 0x80) = 0x80006003 No such file or directory (3 us)
[ 44252] read_stat(0xffffffff, "/boot/home/config/non-packaged/lib/libicuio.so.57", false, 0x7f9081f19bf0, 0x80) = 0x80006003 No such file or directory (4 us)
[ 44252] read_stat(0xffffffff, "/boot/home/config/lib/libicuio.so.57", false, 0x7f9081f19bf0, 0x80) = 0x80006003 No such file or directory (1 us)
[ 44252] read_stat(0xffffffff, "/boot/system/non-packaged/lib/libicuio.so.57", false, 0x7f9081f19bf0, 0x80) = 0x80006003 No such file or directory (2 us)
[ 44252] read_stat(0xffffffff, "/boot/system/lib/libicuio.so.57", false, 0x7f9081f19bf0, 0x80) = 0x0 No error (3 us)
[ 44252] read_link(0xffffffff, "/boot/system/lib/libicuio.so.57", 0x7f9081f19c70, [0x10]) = 0x0 No error (3 us)
[ 44252] open(0xffffffff, "/boot/system/lib/libicuio.so.57.2", 0x0, 0x0) = 0x4 (3 us)
[ 44252] read_stat(0x4, (nil), true, 0x7f9081f1a0f0, 0x80) = 0x0 No error (1 us)
[ 44252] normalize_path("/boot/system/lib/libicuio.so.57.2", true, 0x7f9081f1a6e0) = 0x0 No error (6 us)
[ 44252] read(0x4, 0x0, 0x7f9081f1a6a0, 0x40) = 0x40 (2 us)
[ 44252] read(0x4, 0x40, 0x7f9081f1aae0, 0xa8) = 0xa8 (1 us)
[ 44252] reserve_address_range([0x1836e900000], 0x7, 0x20d000) = 0x0 No error (2 us)
[ 44252] map_file("libicuio.so.57.2_seg0ro", 0x7f9081f1a5b8, 0x1, 0xb000, 0x1003, 0x1, true, 0x0, 0x1148fb720) = 0x1123e0 (4 us)
[ 44252] map_file("libicuio.so.57.2_seg1rw", 0x7f9081f1a5b8, 0x1, 0x2000, 0x3, 0x1, true, 0x0, 0x1148fb768) = 0x1123e1 (3 us)
[ 44252] read_stat(0x4, (nil), false, 0x7f9081f1a0f0, 0x80) = 0x0 No error (1 us)
[ 44252] register_image(0x7f9081f1a170, 0x470) = 0x4c5aa (2 us)
[ 44252] close(0x4) = 0x0 No error (1 us)
[ 44252] read_stat(0xffffffff, "/boot/system/bin/lib/libicutu.so.57", false, 0x7f9081f19bf0, 0x80) = 0x80006003 No such file or directory (2 us)
[ 44252] read_stat(0xffffffff, "/boot/home/config/non-packaged/lib/libicutu.so.57", false, 0x7f9081f19bf0, 0x80) = 0x80006003 No such file or directory (3 us)
[ 44252] read_stat(0xffffffff, "/boot/home/config/lib/libicutu.so.57", false, 0x7f9081f19bf0, 0x80) = 0x80006003 No such file or directory (2 us)
[ 44252] read_stat(0xffffffff, "/boot/system/non-packaged/lib/libicutu.so.57", false, 0x7f9081f19bf0, 0x80) = 0x80006003 No such file or directory (2 us)
[ 44252] read_stat(0xffffffff, "/boot/system/lib/libicutu.so.57", false, 0x7f9081f19bf0, 0x80) = 0x0 No error (3 us)
[ 44252] read_link(0xffffffff, "/boot/system/lib/libicutu.so.57", 0x7f9081f19c70, [0x10]) = 0x0 No error (2 us)
[ 44252] open(0xffffffff, "/boot/system/lib/libicutu.so.57.2", 0x0, 0x0) = 0x4 (2 us)
[ 44252] read_stat(0x4, (nil), true, 0x7f9081f1a0f0, 0x80) = 0x0 No error (0 us)
[ 44252] normalize_path("/boot/system/lib/libicutu.so.57.2", true, 0x7f9081f1a6e0) = 0x0 No error (5 us)
[ 44252] read(0x4, 0x0, 0x7f9081f1a6a0, 0x40) = 0x40 (2 us)
[ 44252] read(0x4, 0x40, 0x7f9081f1aae0, 0xa8) = 0xa8 (0 us)
[ 44252] reserve_address_range([0x18723ac7000], 0x7, 0x262000) = 0x0 No error (2 us)
[ 44252] map_file("libicutu.so.57.2_seg0ro", 0x7f9081f1a5b8, 0x1, 0x2e000, 0x1003, 0x1, true, 0x0, 0x1148fbe78) = 0x1123e2 (4 us)
[ 44252] map_file("libicutu.so.57.2_seg1rw", 0x7f9081f1a5b8, 0x1, 0x2000, 0x3, 0x1, true, 0x0, 0x1148fbec0) = 0x1123e3 (3 us)
[ 44252] create_area("libicutu.so.57.2_seg2rw", 0x7f9081f1a5b8, 0x1, 0x32000, 0x0, 0x3) = 0x1123e4 (2 us)
[ 44252] read_stat(0x4, (nil), false, 0x7f9081f1a0f0, 0x80) = 0x0 No error (1 us)
[ 44252] register_image(0x7f9081f1a170, 0x470) = 0x4c5ab (1 us)
[ 44252] close(0x4) = 0x0 No error (0 us)
[ 44252] read_stat(0xffffffff, "/boot/system/bin/lib/libicuuc.so.57", false, 0x7f9081f19bf0, 0x80) = 0x80006003 No such file or directory (3 us)
[ 44252] read_stat(0xffffffff, "/boot/home/config/non-packaged/lib/libicuuc.so.57", false, 0x7f9081f19bf0, 0x80) = 0x80006003 No such file or directory (3 us)
[ 44252] read_stat(0xffffffff, "/boot/home/config/lib/libicuuc.so.57", false, 0x7f9081f19bf0, 0x80) = 0x80006003 No such file or directory (1 us)
[ 44252] read_stat(0xffffffff, "/boot/system/non-packaged/lib/libicuuc.so.57", false, 0x7f9081f19bf0, 0x80) = 0x80006003 No such file or directory (2 us)
[ 44252] read_stat(0xffffffff, "/boot/system/lib/libicuuc.so.57", false, 0x7f9081f19bf0, 0x80) = 0x0 No error (3 us)
[ 44252] read_link(0xffffffff, "/boot/system/lib/libicuuc.so.57", 0x7f9081f19c70, [0x10]) = 0x0 No error (3 us)
[ 44252] open(0xffffffff, "/boot/system/lib/libicuuc.so.57.2", 0x0, 0x0) = 0x4 (3 us)
[ 44252] read_stat(0x4, (nil), true, 0x7f9081f1a0f0, 0x80) = 0x0 No error (1 us)
[ 44252] normalize_path("/boot/system/lib/libicuuc.so.57.2", true, 0x7f9081f1a6e0) = 0x0 No error (5 us)
[ 44252] read(0x4, 0x0, 0x7f9081f1a6a0, 0x40) = 0x40 (2 us)
[ 44252] read(0x4, 0x40, 0x7f9081f1aae0, 0xa8) = 0xa8 (1 us)
[ 44252] reserve_address_range([0x100f38ca000], 0x7, 0x3a9000) = 0x0 No error (2 us)
[ 44252] map_file("libicuuc.so.57.2_seg0ro", 0x7f9081f1a5b8, 0x1, 0x194000, 0x1003, 0x1, true, 0x0, 0x1148fc660) = 0x1123e5 (9 us)
[ 44252] map_file("libicuuc.so.57.2_seg1rw", 0x7f9081f1a5b8, 0x1, 0x15000, 0x3, 0x1, true, 0x0, 0x1148fc6a8) = 0x1123e6 (3 us)
[ 44252] read_stat(0x4, (nil), false, 0x7f9081f1a0f0, 0x80) = 0x0 No error (0 us)
[ 44252] register_image(0x7f9081f1a170, 0x470) = 0x4c5ac (1 us)
[ 44252] close(0x4) = 0x0 No error (1 us)
[ 44252] create_area("rld heap", 0x7f9081f1ba28, 0x6, 0x10000, 0x0, 0x3) = 0x1123e7 (3 us)
[ 44252] create_area("rld heap", 0x7f9081f1ba28, 0x6, 0x10000, 0x0, 0x3) = 0x1123e8 (2 us)
[ 44252] image_relocated(0x4c5a7) (1 us)
[ 44252] image_relocated(0x4c5a8) (1 us)
[ 44252] image_relocated(0x4c5ac) (0 us)
[ 44252] image_relocated(0x4c5a9) (1 us)
[ 44252] image_relocated(0x4c5aa) (1 us)
[ 44252] image_relocated(0x4c5ab) (1 us)
[ 44252] image_relocated(0x4c5a6) (1 us)
[ 44252] set_area_protection(0x1123d7, 0x5) = 0x0 No error (6 us)
[ 44252] set_area_protection(0x1123d9, 0x5) = 0x0 No error (5 us)
[ 44252] set_area_protection(0x1123dc, 0x5) = 0x0 No error (4 us)
[ 44252] set_area_protection(0x1123de, 0x5) = 0x0 No error (5 us)
[ 44252] set_area_protection(0x1123e0, 0x5) = 0x0 No error (3 us)
[ 44252] set_area_protection(0x1123e2, 0x5) = 0x0 No error (5 us)
[ 44252] set_area_protection(0x1123e5, 0x5) = 0x0 No error (4 us)
[ 44252] resize_area(0x1123d6, 0x60000) = 0x0 No error (2 us)
[ 44252] resize_area(0x1123d6, 0x70000) = 0x0 No error (1 us)
[ 44252] resize_area(0x1123d6, 0x90000) = 0x0 No error (2 us)
[ 44252] resize_area(0x1123d6, 0xb0000) = 0x0 No error (2 us)
[ 44252] read_stat(0x0, (nil), false, 0x7f9081f1bcd0, 0x80) = 0x0 No error (2 us)
[ 44252] read_stat(0x1, (nil), false, 0x7f9081f1bcd0, 0x80) = 0x0 No error (0 us)
[ 44252] read_stat(0x2, (nil), false, 0x7f9081f1bcd0, 0x80) = 0x0 No error (0 us)
[ 44252] get_thread_info(0xacdc, 0x7f9081f1bc70) = 0x0 No error (1 us)
[ 44252] sigaction(0x1b, 0x7f9081f1bc40, 0x7f9081f1bc20) = 0x0 No error (1 us)
[ 44252] resize_area(0x1123d6, 0x1e0000) = 0x0 No error (2 us)
[ 44252] resize_area(0x1123d6, 0x1f0000) = 0x0 No error (1 us)
[ 44252] resize_area(0x1123d6, 0x200000) = 0x0 No error (1 us)
[ 44252] resize_area(0x1123d6, 0x210000) = 0x0 No error (1 us)
[ 44252] resize_area(0x1123d6, 0x220000) = 0x0 No error (1 us)
[ 44252] resize_area(0x1123d6, 0x230000) = 0x0 No error (1 us)
[ 44252] resize_area(0x1123d6, 0x240000) = 0x0 No error (1 us)
[ 44252] resize_area(0x1123d6, 0x250000) = 0x0 No error (1 us)
[ 44252] resize_area(0x1123d6, 0x260000) = 0x0 No error (1 us)
[ 44252] resize_area(0x1123d6, 0x270000) = 0x0 No error (1 us)
[ 44252] resize_area(0x1123d6, 0x280000) = 0x0 No error (1 us)
[ 44252] resize_area(0x1123d6, 0x290000) = 0x0 No error (1 us)
[ 44252] resize_area(0x1123d6, 0x2a0000) = 0x0 No error (1 us)
[ 44252] resize_area(0x1123d6, 0x2b0000) = 0x0 No error (1 us)
[ 44252] resize_area(0x1123d6, 0x2c0000) = 0x0 No error (1 us)
[ 44252] get_clock(0xfffffffe, [0x4415]) = 0x0 No error (0 us)
[ 44252] resize_area(0x1123d6, 0x2d0000) = 0x0 No error (1 us)
[ 44252] resize_area(0x1123d6, 0x340000) = 0x0 No error (1 us)
[ 44252] resize_area(0x1123d6, 0x2950000) = 0x0 No error (1 us)
[ 44252] resize_area(0x1123d6, 0x2960000) = 0x0 No error (2 us)
[ 44252] resize_area(0x1123d6, 0x2970000) = 0x0 No error (1 us)
[ 44252] open(0xffffffff, "/dev/urandom", 0x10c0, 0x0) = 0x4 (15 us)
[ 44252] fcntl(0x4, 0x2, 0x1ecc43fd0c0) = 0x1 No Error (1) (1 us)
[ 44252] read_stat(0x4, (nil), false, 0x7f9081f1b1b0, 0x80) = 0x0 No error (1 us)
[ 44252] read(0x4, 0xffffffffffffffff, 0x7f9081f1b2e0, 0x10) = 0x10 (3 us)
[ 44252] close(0x4) = 0x0 No error (2 us)
[ 44252] resize_area(0x1123d6, 0x2980000) = 0x0 No error (1 us)
[ 44252] resize_area(0x1123d6, 0x29a0000) = 0x0 No error (2 us)
[ 44252] resize_area(0x1123d6, 0x29c0000) = 0x0 No error (1 us)
[ 44252] resize_area(0x1123d6, 0x29d0000) = 0x0 No error (2 us)
[ 44252] ioctl(0x0, TCGETA, 0x7f9081f1bbb0, 0x20) = 0x0 No error (2 us)
[ 44252] ioctl(0x1, TCGETA, 0x7f9081f1bbb0, 0x20) = 0x0 No error (1 us)
[ 44252] ioctl(0x2, TCGETA, 0x7f9081f1bbb0, 0x20) = 0x0 No error (1 us)
[ 44252] resize_area(0x1123d6, 0x29e0000) = 0x0 No error (1 us)
[ 44252] open(0xffffffff, "/dev/urandom", 0x10c0, 0x0) = 0x4 (5 us)
[ 44252] read_stat(0x4, (nil), false, 0x7f9081f1baf0, 0x80) = 0x0 No error (1 us)
[ 44252] read(0x4, 0xffffffffffffffff, 0x7f9081f1bc30, 0x10) = 0x10 (124 us)
[ 44252] close(0x4) = 0x0 No error (2 us)
[ 44252] set_signal_mask(0x3, 0x7f9081f1bc88, (nil)) = 0x0 No error (1 us)
[ 44252] sigaction(0x2, 0x7f9081f1bc30, 0x7f9081f1bc10) = 0x0 No error (0 us)
[ 44252] sigaction(0x1, 0x7f9081f1bc30, 0x7f9081f1bc10) = 0x0 No error (1 us)
[ 44252] sigaction(0x3, 0x7f9081f1bc30, 0x7f9081f1bc10) = 0x0 No error (0 us)
[ 44252] sigaction(0xf, 0x7f9081f1bc30, 0x7f9081f1bc10) = 0x0 No error (0 us)
[ 44252] sigaction(0xe, 0x7f9081f1bc30, 0x7f9081f1bc10) = 0x0 No error (0 us)
[ 44252] sigaction(0x12, 0x7f9081f1bc30, 0x7f9081f1bc10) = 0x0 No error (0 us)
[ 44252] sigaction(0x13, 0x7f9081f1bc30, 0x7f9081f1bc10) = 0x0 No error (0 us)
[ 44252] sigaction(0x1e, 0x7f9081f1bc30, 0x7f9081f1bc10) = 0x0 No error (0 us)
[ 44252] sigaction(0x4, 0x7f9081f1bc30, 0x7f9081f1bc10) = 0x0 No error (0 us)
[ 44252] set_signal_stack(0x7f9081f1bc70, 0x7f9081f1bc50) = 0x0 No error (0 us)
[ 44252] sigaction(0xb, 0x7f9081f1bc30, 0x7f9081f1bc10) = 0x0 No error (0 us)
[ 44252] sigaction(0x7, 0x7f9081f1bc30, 0x7f9081f1bc10) = 0x0 No error (0 us)
[ 44252] sigaction(0x19, 0x7f9081f1bc30, 0x7f9081f1bc10) = 0x0 No error (0 us)
[ 44252] sigaction(0x5, 0x7f9081f1bc40, 0x7f9081f1bc20) = 0x0 No error (1 us)
[ 44252] sigaction(0x5, 0x7f9081f1bc40, 0x7f9081f1bc20) = 0x0 No error (0 us)
[ 44252] set_signal_mask(0x3, 0x7f9081f1bc88, (nil)) = 0x0 No error (0 us)
[ 44252] resize_area(0x1123d6, 0x2a00000) = 0x0 No error (2 us)
[ 44252] create_pipe([0x4]) = 0x0 No error (25 us)
[ 44252] fcntl(0x4, 0x2, 0x11d71f396130) = 0x0 No error (0 us)
[ 44252] fcntl(0x4, 0x4, 0x1) = 0x0 No error (0 us)
[ 44252] fcntl(0x5, 0x2, 0x1) = 0x0 No error (1 us)
[ 44252] fcntl(0x5, 0x4, 0x1) = 0x0 No error (0 us)
[ 44252] fcntl(0x4, 0x8, 0x1) = 0x0 No error (0 us)
[ 44252] fcntl(0x4, 0x10, 0x80) = 0x0 No error (1 us)
[ 44252] fcntl(0x5, 0x8, 0x80) = 0x1 No Error (1) (0 us)
[ 44252] fcntl(0x5, 0x10, 0x81) = 0x0 No error (0 us)
[ 44252] create_pipe([0x6]) = 0x0 No error (18 us)
[ 44252] fcntl(0x6, 0x2, 0x81) = 0x0 No error (1 us)
[ 44252] fcntl(0x6, 0x4, 0x1) = 0x0 No error (0 us)
[ 44252] fcntl(0x7, 0x2, 0x1) = 0x0 No error (1 us)
[ 44252] fcntl(0x7, 0x4, 0x1) = 0x0 No error (1 us)
[ 44252] fcntl(0x6, 0x8, 0x1) = 0x0 No error (1 us)
[ 44252] fcntl(0x6, 0x10, 0x80) = 0x0 No error (0 us)
[ 44252] fcntl(0x7, 0x8, 0x80) = 0x1 No Error (1) (0 us)
[ 44252] fcntl(0x7, 0x10, 0x81) = 0x0 No error (0 us)
[ 44252] create_pipe([0x8]) = 0x0 No error (19 us)
[ 44252] fcntl(0x8, 0x2, 0x81) = 0x0 No error (0 us)
[ 44252] fcntl(0x8, 0x4, 0x1) = 0x0 No error (0 us)
[ 44252] fcntl(0x9, 0x2, 0x1) = 0x0 No error (0 us)
[ 44252] fcntl(0x9, 0x4, 0x1) = 0x0 No error (1 us)
[ 44252] fcntl(0x8, 0x8, 0x1) = 0x0 No error (1 us)
[ 44252] fcntl(0x8, 0x10, 0x80) = 0x0 No error (0 us)
[ 44252] fcntl(0x9, 0x8, 0x80) = 0x1 No Error (1) (0 us)
[ 44252] fcntl(0x9, 0x10, 0x81) = 0x0 No error (1 us)
[ 44252] spawn_thread(0x7f9081f1bbb0) = 0xacde (30 us)
[ 44252] resume_thread(0xacde) = 0x0 No error (3 us)
[ 44252] getuid(true) = 0x0 (0 us)
[ 44252] getgid(true) = 0x0 (0 us)
[ 44252] map_file("libruby.so.2.7 mmap area", 0x7f9081f1bb58, 0x6, 0x1440000, 0x3, 0x1, true, 0x0, 0xffffffff) = 0x1123eb (4 us)
[ 44252] set_memory_protection(0xd5c2ddf000, 0x1000, 0x0) = 0x0 No error (3 us)
[ 44252] set_memory_protection(0xd5c2e81000, 0x1000, 0x0) = 0x0 No error (0 us)
[ 44252] set_memory_protection(0xd5c2f23000, 0x1000, 0x0) = 0x0 No error (1 us)
[ 44252] set_memory_protection(0xd5c2fc5000, 0x1000, 0x0) = 0x0 No error (0 us)
[ 44252] set_memory_protection(0xd5c3067000, 0x1000, 0x0) = 0x0 No error (1 us)
[ 44252] set_memory_protection(0xd5c3109000, 0x1000, 0x0) = 0x0 No error (1 us)
[ 44252] set_memory_protection(0xd5c31ab000, 0x1000, 0x0) = 0x0 No error (1 us)
[ 44252] set_memory_protection(0xd5c324d000, 0x1000, 0x0) = 0x0 No error (1 us)
[ 44252] set_memory_protection(0xd5c32ef000, 0x1000, 0x0) = 0x0 No error (1 us)
[ 44252] set_memory_protection(0xd5c3391000, 0x1000, 0x0) = 0x0 No error (1 us)
[ 44252] set_memory_protection(0xd5c3433000, 0x1000, 0x0) = 0x0 No error (1 us)
[ 44252] set_memory_protection(0xd5c34d5000, 0x1000, 0x0) = 0x0 No error (1 us)
[ 44252] set_memory_protection(0xd5c3577000, 0x1000, 0x0) = 0x0 No error (0 us)
[ 44252] set_memory_protection(0xd5c3619000, 0x1000, 0x0) = 0x0 No error (1 us)
[ 44252] set_memory_protection(0xd5c36bb000, 0x1000, 0x0) = 0x0 No error (1 us)
[ 44252] set_memory_protection(0xd5c375d000, 0x1000, 0x0) = 0x0 No error (0 us)
[ 44252] set_memory_protection(0xd5c37ff000, 0x1000, 0x0) = 0x0 No error (1 us)
[ 44252] set_memory_protection(0xd5c38a1000, 0x1000, 0x0) = 0x0 No error (1 us)
[ 44252] set_memory_protection(0xd5c3943000, 0x1000, 0x0) = 0x0 No error (1 us)
[ 44252] set_memory_protection(0xd5c39e5000, 0x1000, 0x0) = 0x0 No error (0 us)
[ 44252] set_memory_protection(0xd5c3a87000, 0x1000, 0x0) = 0x0 No error (1 us)
[ 44252] set_memory_protection(0xd5c3b29000, 0x1000, 0x0) = 0x0 No error (1 us)
[ 44252] set_memory_protection(0xd5c3bcb000, 0x1000, 0x0) = 0x0 No error (1 us)
[ 44252] set_memory_protection(0xd5c3c6d000, 0x1000, 0x0) = 0x0 No error (1 us)
[ 44252] set_memory_protection(0xd5c3d0f000, 0x1000, 0x0) = 0x0 No error (1 us)
[ 44252] set_memory_protection(0xd5c3db1000, 0x1000, 0x0) = 0x0 No error (1 us)
[ 44252] set_memory_protection(0xd5c3e53000, 0x1000, 0x0) = 0x0 No error (1 us)
[ 44252] set_memory_protection(0xd5c3ef5000, 0x1000, 0x0) = 0x0 No error (1 us)
[ 44252] set_memory_protection(0xd5c3f97000, 0x1000, 0x0) = 0x0 No error (1 us)
[ 44252] set_memory_protection(0xd5c4039000, 0x1000, 0x0) = 0x0 No error (1 us)
[ 44252] set_memory_protection(0xd5c40db000, 0x1000, 0x0) = 0x0 No error (0 us)
[ 44252] set_memory_protection(0xd5c417d000, 0x1000, 0x0) = 0x0 No error (1 us)
[ 44252] getuid(false) = 0x0 (1 us)
[ 44252] getuid(true) = 0x0 (0 us)
[ 44252] getgid(false) = 0x0 (0 us)
[ 44252] getgid(true) = 0x0 (0 us)
[ 44252] normalize_path("/packages/ruby-2.7.2-1/.self/lib/ruby/site_ruby/2.7.0", true, 0x11d71f1e2770) = 0x0 No error (29 us)
[ 44252] read_stat(0xffffffff, "/boot/system/lib/ruby/site_ruby/2.7.0", false, 0x7f9081f1b130, 0x80) = 0x0 No error (3 us)
[ 44252] read_stat(0xffffffff, "/boot/system/lib/ruby/site_ruby/2.7.0", true, 0x7f9081f1b200, 0x80) = 0x0 No error (3 us)
[ 44252] normalize_path("/packages/ruby-2.7.2-1/.self/lib/ruby/site_ruby/2.7.0/x86_64-haiku", true, 0x11d71f1e2770) = 0x0 No error (11 us)
[ 44252] read_stat(0xffffffff, "/boot/system/lib/ruby/site_ruby/2.7.0/x86_64-haiku", false, 0x7f9081f1b130, 0x80) = 0x0 No error (3 us)
[ 44252] read_stat(0xffffffff, "/boot/system/lib/ruby/site_ruby/2.7.0/x86_64-haiku", true, 0x7f9081f1b200, 0x80) = 0x0 No error (4 us)
[ 44252] normalize_path("/packages/ruby-2.7.2-1/.self/lib/ruby/site_ruby", true, 0x11d71f1e2770) = 0x0 No error (8 us)
[ 44252] read_stat(0xffffffff, "/boot/system/lib/ruby/site_ruby", false, 0x7f9081f1b130, 0x80) = 0x0 No error (2 us)
[ 44252] read_stat(0xffffffff, "/boot/system/lib/ruby/site_ruby", true, 0x7f9081f1b200, 0x80) = 0x0 No error (2 us)
[ 44252] normalize_path("/packages/ruby-2.7.2-1/.self/lib/ruby/vendor_ruby/2.7.0", true, 0x11d71f1e2770) = 0x0 No error (10 us)
[ 44252] read_stat(0xffffffff, "/boot/system/lib/ruby/vendor_ruby/2.7.0", false, 0x7f9081f1b130, 0x80) = 0x0 No error (3 us)
[ 44252] read_stat(0xffffffff, "/boot/system/lib/ruby/vendor_ruby/2.7.0", true, 0x7f9081f1b200, 0x80) = 0x0 No error (3 us)
[ 44252] normalize_path("/packages/ruby-2.7.2-1/.self/lib/ruby/vendor_ruby/2.7.0/x86_64-haiku", true, 0x11d71f1e2770) = 0x0 No error (10 us)
[ 44252] read_stat(0xffffffff, "/boot/system/lib/ruby/vendor_ruby/2.7.0/x86_64-haiku", false, 0x7f9081f1b130, 0x80) = 0x0 No error (3 us)
[ 44252] read_stat(0xffffffff, "/boot/system/lib/ruby/vendor_ruby/2.7.0/x86_64-haiku", true, 0x7f9081f1b200, 0x80) = 0x0 No error (2 us)
[ 44252] normalize_path("/packages/ruby-2.7.2-1/.self/lib/ruby/vendor_ruby", true, 0x11d71f1e2770) = 0x0 No error (8 us)
[ 44252] read_stat(0xffffffff, "/boot/system/lib/ruby/vendor_ruby", false, 0x7f9081f1b130, 0x80) = 0x0 No error (2 us)
[ 44252] read_stat(0xffffffff, "/boot/system/lib/ruby/vendor_ruby", true, 0x7f9081f1b200, 0x80) = 0x0 No error (2 us)
[ 44252] normalize_path("/packages/ruby-2.7.2-1/.self/lib/ruby/2.7.0", true, 0x11d71f1e2770) = 0x0 No error (8 us)
[ 44252] read_stat(0xffffffff, "/boot/system/lib/ruby/2.7.0", false, 0x7f9081f1b130, 0x80) = 0x0 No error (2 us)
[ 44252] read_stat(0xffffffff, "/boot/system/lib/ruby/2.7.0", true, 0x7f9081f1b200, 0x80) = 0x0 No error (2 us)
[ 44252] normalize_path("/packages/ruby-2.7.2-1/.self/lib/ruby/2.7.0/x86_64-haiku", true, 0x11d71f1e2770) = 0x0 No error (9 us)
[ 44252] read_stat(0xffffffff, "/boot/system/lib/ruby/2.7.0/x86_64-haiku", false, 0x7f9081f1b130, 0x80) = 0x0 No error (2 us)
[ 44252] read_stat(0xffffffff, "/boot/system/lib/ruby/2.7.0/x86_64-haiku", true, 0x7f9081f1b200, 0x80) = 0x0 No error (3 us)
[ 44252] open(0xffffffff, "/boot/system/lib/ruby/site_ruby/2.7.0/enc/encdb.so", 0xc0, 0x0) = 0x80006003 (3 us)
[ 44252] open(0xffffffff, "/boot/system/lib/ruby/site_ruby/2.7.0/x86_64-haiku/enc/encdb.so", 0xc0, 0x0) = 0x80006003 (3 us)
[ 44252] open(0xffffffff, "/boot/system/lib/ruby/site_ruby/enc/encdb.so", 0xc0, 0x0) = 0x80006003 (2 us)
[ 44252] open(0xffffffff, "/boot/system/lib/ruby/vendor_ruby/2.7.0/enc/encdb.so", 0xc0, 0x0) = 0x80006003 (2 us)
[ 44252] open(0xffffffff, "/boot/system/lib/ruby/vendor_ruby/2.7.0/x86_64-haiku/enc/encdb.so", 0xc0, 0x0) = 0x80006003 (3 us)
[ 44252] open(0xffffffff, "/boot/system/lib/ruby/vendor_ruby/enc/encdb.so", 0xc0, 0x0) = 0x80006003 (2 us)
[ 44252] open(0xffffffff, "/boot/system/lib/ruby/2.7.0/enc/encdb.so", 0xc0, 0x0) = 0x80006003 (2 us)
[ 44252] open(0xffffffff, "/boot/system/lib/ruby/2.7.0/x86_64-haiku/enc/encdb.so", 0xc0, 0x0) = 0xa (6 us)
[ 44252] read_stat(0xa, (nil), false, 0x7f9081f1b380, 0x80) = 0x0 No error (0 us)
[ 44252] close(0xa) = 0x0 No error (1 us)
[ 44252] open(0xffffffff, "/boot/system/lib/ruby/2.7.0/x86_64-haiku/enc/encdb.so", 0x0, 0x0) = 0xa (5 us)
[ 44252] normalize_path("/boot/system/lib/ruby/2.7.0/x86_64-haiku/enc/encdb.so", true, 0x7f9081f19f40) = 0x0 No error (8 us)
[ 44252] read(0xa, 0x0, 0x7f9081f19f00, 0x40) = 0x40 (3 us)
[ 44252] read(0xa, 0x40, 0x7f9081f1a340, 0xa8) = 0xa8 (0 us)
[ 44252] reserve_address_range([0x160cd67f000], 0x7, 0x202000) = 0x0 No error (2 us)
[ 44252] map_file("encdb.so_seg0ro", 0x7f9081f19e18, 0x1, 0x2000, 0x1003, 0x1, true, 0x0, 0x1148fced8) = 0x1123ec (5 us)
[ 44252] map_file("encdb.so_seg1rw", 0x7f9081f19e18, 0x1, 0x1000, 0x3, 0x1, true, 0x0, 0x1148fcf20) = 0x1123ed (2 us)
[ 44252] read_stat(0xa, (nil), false, 0x7f9081f19950, 0x80) = 0x0 No error (0 us)
[ 44252] register_image(0x7f9081f199d0, 0x470) = 0x4c5ad (2 us)
[ 44252] close(0xa) = 0x0 No error (1 us)
[ 44252] image_relocated(0x4c5ad) (1 us)
[ 44252] set_area_protection(0x1123ec, 0x5) = 0x0 No error (5 us)
[ 44252] resize_area(0x1123d6, 0x2a20000) = 0x0 No error (2 us)
[ 44252] open(0xffffffff, "/boot/system/lib/ruby/site_ruby/2.7.0/enc/trans/transdb.so", 0xc0, 0x0) = 0x80006003 (6 us)
[ 44252] open(0xffffffff, "/boot/system/lib/ruby/site_ruby/2.7.0/x86_64-haiku/enc/trans/transdb.so", 0xc0, 0x0) = 0x80006003 (4 us)
[ 44252] open(0xffffffff, "/boot/system/lib/ruby/site_ruby/enc/trans/transdb.so", 0xc0, 0x0) = 0x80006003 (2 us)
[ 44252] open(0xffffffff, "/boot/system/lib/ruby/vendor_ruby/2.7.0/enc/trans/transdb.so", 0xc0, 0x0) = 0x80006003 (2 us)
[ 44252] open(0xffffffff, "/boot/system/lib/ruby/vendor_ruby/2.7.0/x86_64-haiku/enc/trans/transdb.so", 0xc0, 0x0) = 0x80006003 (3 us)
[ 44252] open(0xffffffff, "/boot/system/lib/ruby/vendor_ruby/enc/trans/transdb.so", 0xc0, 0x0) = 0x80006003 (3 us)
[ 44252] open(0xffffffff, "/boot/system/lib/ruby/2.7.0/enc/trans/transdb.so", 0xc0, 0x0) = 0x80006003 (3 us)
[ 44252] open(0xffffffff, "/boot/system/lib/ruby/2.7.0/x86_64-haiku/enc/trans/transdb.so", 0xc0, 0x0) = 0xa (7 us)
[ 44252] read_stat(0xa, (nil), false, 0x7f9081f1b380, 0x80) = 0x0 No error (1 us)
[ 44252] close(0xa) = 0x0 No error (1 us)
[ 44252] open(0xffffffff, "/boot/system/lib/ruby/2.7.0/x86_64-haiku/enc/trans/transdb.so", 0x0, 0x0) = 0xa (6 us)
[ 44252] normalize_path("/boot/system/lib/ruby/2.7.0/x86_64-haiku/enc/trans/transdb.so", true, 0x7f9081f19f40) = 0x0 No error (10 us)
[ 44252] read(0xa, 0x0, 0x7f9081f19f00, 0x40) = 0x40 (2 us)
[ 44252] read(0xa, 0x40, 0x7f9081f1a340, 0xa8) = 0xa8 (1 us)
[ 44252] reserve_address_range([0x1c05ca49000], 0x7, 0x203000) = 0x0 No error (2 us)
[ 44252] map_file("transdb.so_seg0ro", 0x7f9081f19e18, 0x1, 0x2000, 0x1003, 0x1, true, 0x0, 0x1148fd5b8) = 0x1123ee (4 us)
[ 44252] map_file("transdb.so_seg1rw", 0x7f9081f19e18, 0x1, 0x1000, 0x3, 0x1, true, 0x0, 0x1148fd600) = 0x1123ef (3 us)
[ 44252] read_stat(0xa, (nil), false, 0x7f9081f19950, 0x80) = 0x0 No error (1 us)
[ 44252] register_image(0x7f9081f199d0, 0x470) = 0x4c5ae (2 us)
[ 44252] close(0xa) = 0x0 No error (1 us)
[ 44252] image_relocated(0x4c5ae) (0 us)
[ 44252] set_area_protection(0x1123ee, 0x5) = 0x0 No error (5 us)
[ 44252] open(0xffffffff, "/boot/system/lib/ruby/site_ruby/2.7.0/rubygems.rb", 0xc0, 0x0) = 0x80006003 (5 us)
[ 44252] open(0xffffffff, "/boot/system/lib/ruby/site_ruby/2.7.0/x86_64-haiku/rubygems.rb", 0xc0, 0x0) = 0x80006003 (3 us)
[ 44252] open(0xffffffff, "/boot/system/lib/ruby/site_ruby/rubygems.rb", 0xc0, 0x0) = 0x80006003 (2 us)
[ 44252] open(0xffffffff, "/boot/system/lib/ruby/vendor_ruby/2.7.0/rubygems.rb", 0xc0, 0x0) = 0x80006003 (3 us)
[ 44252] open(0xffffffff, "/boot/system/lib/ruby/vendor_ruby/2.7.0/x86_64-haiku/rubygems.rb", 0xc0, 0x0) = 0x80006003 (3 us)
[ 44252] open(0xffffffff, "/boot/system/lib/ruby/vendor_ruby/rubygems.rb", 0xc0, 0x0) = 0x80006003 (2 us)
[ 44252] open(0xffffffff, "/boot/system/lib/ruby/2.7.0/rubygems.rb", 0xc0, 0x0) = 0xa (4 us)
[ 44252] read_stat(0xa, (nil), false, 0x7f9081f19fd0, 0x80) = 0x0 No error (0 us)
[ 44252] close(0xa) = 0x0 No error (1 us)
[ 44252] getuid(false) = 0x0 (0 us)
[ 44252] getuid(true) = 0x0 (0 us)
[ 44252] getgid(false) = 0x0 (0 us)
[ 44252] getgid(true) = 0x0 (0 us)
[ 44252] open(0xffffffff, "/boot/system/lib/ruby/2.7.0/rubygems.rb", 0xc0, 0x0) = 0xa (3 us)
[ 44252] fcntl(0xa, 0x10, 0x0) = 0x8000600e Operation not supported (0 us)
[ 44252] close(0xa) = 0x0 No error (1 us)
[ 44252] ioctl(0x2, TCGETA, 0x7f9081f1bb00, 0x20) = 0x0 No error (2 us)
[ 44252] write(0x2, 0xffffffffffffffff, 0x7f9081f1bb70, 0x2a) = 0x2a (6 us)
[ 44252] write(0x2, 0xffffffffffffffff, 0x11d721b60290, 0x3e) = 0x3e (3 us)
[ 44252] write(0x2, 0xffffffffffffffff, 0x11d721b3f120, 0x25) = 0x25 (3 us)
[ 44252] write(0x2, 0xffffffffffffffff, 0x18768f35724, 0x2) = 0x2 (2 us)
[ 44252] write(0x2, 0xffffffffffffffff, 0x18768f3571a, 0x4) = 0x4 (2 us)
[ 44252] write(0x2, 0xffffffffffffffff, 0x11d721b4d9e0, 0x42) = 0x42 (3 us)
[ 44252] write(0x2, 0xffffffffffffffff, 0x18768f3573d, 0x2) = 0x2 (3 us)
[ 44252] write(0x2, 0xffffffffffffffff, 0x18768f35713, 0x6) = 0x6 (1 us)
[ 44252] write(0x2, 0xffffffffffffffff, 0x11d71f3651a8, 0x9) = 0x9 (3 us)
[ 44252] write(0x2, 0xffffffffffffffff, 0x18768f3571f, 0x3) = 0x3 (3 us)
[ 44252] write(0x2, 0xffffffffffffffff, 0x18768f3571a, 0x4) = 0x4 (3 us)
[ 44252] write(0x2, 0xffffffffffffffff, 0x18768f35740, 0x1) = 0x1 (2 us)
[ 44252] write(0x2, 0xffffffffffffffff, 0x18768f3571f, 0x3) = 0x3 (2 us)
[ 44252] write(0x2, 0xffffffffffffffff, 0x18768f3573b, 0x1) = 0x1 (3 us)
[ 44252] sigaction(0x2, 0x7f9081f1bc10, 0x7f9081f1bbf0) = 0x0 No error (1 us)
[ 44252] sigaction(0x2, 0x7f9081f1bc10, 0x7f9081f1bbf0) = 0x0 No error (0 us)
[ 44252] write(0x9, 0xffffffffffffffff, 0x7f9081f1bc03, 0x1) = 0x1 (3 us)
[ 44252] wait_for_thread(0xacde, [0x0]) = 0x0 No error (46 us)
[ 44252] exit_team(0x1) (2 us)

@nobu
Copy link
Member

nobu commented Nov 7, 2020

Thank you, I reread the log and found I misread it.
The error seems to occur when dropping the non-blocking bit, but not open.

Since I'm in hospital now, please wait for a while.

@extrowerk
Copy link
Contributor Author

@nobu: Thanks, i wish you quick recovery.

@nobu
Copy link
Member

nobu commented Dec 15, 2020

Sorry to be late.

Does this patch work?

commit 5c3e04837a1db517a4e6d0cc71189db224532626
Author:     Nobuyoshi Nakada <nobu@ruby-lang.org>
AuthorDate: 2020-12-15 23:17:23 +0900
Commit:     Nobuyoshi Nakada <nobu@ruby-lang.org>
CommitDate: 2020-12-15 23:17:23 +0900

    Ignore failure on unsupported fcntl to drop non-blocking mode

diff --git a/ruby.c b/ruby.c
index fc9adf775dd..aa6d4a2b9d0 100644
--- a/ruby.c
+++ b/ruby.c
@@ -2244,9 +2244,13 @@ open_load_file(VALUE fname_v, int *xflag)
 	rb_update_max_fd(fd);
 
 #if defined HAVE_FCNTL && MODE_TO_LOAD != O_RDONLY
+# ifdef ENOTSUP
+#   define IS_SUPPORTED_OP(e) ((e) != ENOTSUP)
+# else
+#   define IS_SUPPORTED_OP(e) ((void)(e), 1)
+# endif
 	/* disabling O_NONBLOCK */
-	if (fcntl(fd, F_SETFL, 0) < 0) {
-	    e = errno;
+	if (fcntl(fd, F_SETFL, 0) < 0 && IS_SUPPORTED_OP(e = errno)) {
 	    (void)close(fd);
 	    rb_load_fail(fname_v, strerror(e));
 	}

@extrowerk
Copy link
Contributor Author

Sadly nope:


Welcome to the Haiku shell.

/Ports/haikuports> uname -a
Haiku shredder 1 hrev54811 Dec 24 2020 07:27:28 x86_64 x86_64 Haiku
/Ports/haikuports> ruby -v
ruby 2.7.2p137 (2020-10-01 revision 5445e04352) [x86_64-haiku]
/Ports/haikuports> ruby
Traceback (most recent call last):
        1: from <internal:gem_prelude>:1:in `<internal:gem_prelude>'
<internal:gem_prelude>:1:in `require': Operation not supported -- /boot/system/lib/ruby/2.7.0/rubygems.rb (LoadError)
/Ports/haikuports> strace ruby
[ 85713] image_relocated(0x19d3bc) (86 us)
[ 85713] set_area_protection(0x5f039e, 0x5) = 0x0 No error (6 us)
[ 85713] set_area_protection(0x5f03a0, 0x5) = 0x0 No error (4 us)
[ 85713] set_area_protection(0x5f03a2, 0x5) = 0x0 No error (12 us)
[ 85713] set_area_protection(0x5f03a5, 0x5) = 0x0 No error (5 us)
[ 85713] set_area_protection(0x5f03a7, 0x5) = 0x0 No error (6 us)
[ 85713] set_area_protection(0x5f03a9, 0x5) = 0x0 No error (12 us)
[ 85713] set_area_protection(0x5f03ac, 0x5) = 0x0 No error (4 us)
[ 85713] get_system_info(0x7f34041271e0) = 0x0 No error (2 us)
[ 85713] get_system_info(0x7f3404126ff0) = 0x0 No error (1 us)
[ 85713] reserve_address_range([0x11d560cca000], 0x7, 0x1000000000) = 0x0 No error (3 us)
[ 85713] create_area("heap", 0xc4ad0bfc60, 0x1, 0x40000, 0x0, 0x103) = 0x5f03af (7 us)
[ 85713] resize_area(0x5f03af, 0x50000) = 0x0 No error (3 us)
[ 85713] open(0xffffffff, "/dev/urandom", 0x0, 0x0) = 0x3 (12 us)
[ 85713] read(0x3, 0xffffffffffffffff, 0x69edaabe30, 0x8) = 0x8 (2 us)
[ 85713] close(0x3) = 0x0 No error (2 us)
[ 85713] read_stat(0xffffffff, "/boot/system/bin/lib/libroot-addon-icu.so", false, 0x7f3404125380, 0x80) = 0x80006003 No such file or directory (9 us)
[ 85713] read_stat(0xffffffff, "/boot/home/config/non-packaged/lib/libroot-addon-icu.so", false, 0x7f3404125380, 0x80) = 0x80006003 No such file or directory (8 us)
[ 85713] read_stat(0xffffffff, "/boot/home/config/lib/libroot-addon-icu.so", false, 0x7f3404125380, 0x80) = 0x80006003 No such file or directory (3 us)
[ 85713] read_stat(0xffffffff, "/boot/system/non-packaged/lib/libroot-addon-icu.so", false, 0x7f3404125380, 0x80) = 0x80006003 No such file or directory (7 us)
[ 85713] read_stat(0xffffffff, "/boot/system/lib/libroot-addon-icu.so", false, 0x7f3404125380, 0x80) = 0x0 No error (6 us)
[ 85713] open(0xffffffff, "/boot/system/lib/libroot-addon-icu.so", 0x0, 0x0) = 0x3 (7 us)
[ 85713] read_stat(0x3, (nil), true, 0x7f3404125880, 0x80) = 0x0 No error (1 us)
[ 85713] normalize_path("/boot/system/lib/libroot-addon-icu.so", true, 0x7f3404125e70) = 0x0 No error (14 us)
[ 85713] read(0x3, 0x0, 0x7f3404125e30, 0x40) = 0x40 (4 us)
[ 85713] read(0x3, 0x40, 0x7f3404126270, 0xa8) = 0xa8 (1 us)
[ 85713] reserve_address_range([0x340da08000], 0x7, 0x212000) = 0x0 No error (3 us)
[ 85713] map_file("libroot-addon-icu.so_seg0ro", 0x7f3404125d48, 0x1, 0x11000, 0x1003, 0x1, true, 0x0, 0x3ca5e95f0) = 0x5f03b0 (9 us)
[ 85713] map_file("libroot-addon-icu.so_seg1rw", 0x7f3404125d48, 0x1, 0x1000, 0x3, 0x1, true, 0x0, 0x3ca5e9638) = 0x5f03b1 (6 us)
[ 85713] read_stat(0x3, (nil), false, 0x7f3404125880, 0x80) = 0x0 No error (1 us)
[ 85713] register_image(0x7f3404125900, 0x470) = 0x19d3c3 (4 us)
[ 85713] close(0x3) = 0x0 No error (2 us)
[ 85713] read_stat(0xffffffff, "/boot/system/bin/lib/libstdc++.so.6", false, 0x7f3404125310, 0x80) = 0x80006003 No such file or directory (5 us)
[ 85713] read_stat(0xffffffff, "/boot/home/config/non-packaged/lib/libstdc++.so.6", false, 0x7f3404125310, 0x80) = 0x80006003 No such file or directory (6 us)
[ 85713] read_stat(0xffffffff, "/boot/home/config/lib/libstdc++.so.6", false, 0x7f3404125310, 0x80) = 0x80006003 No such file or directory (4 us)
[ 85713] read_stat(0xffffffff, "/boot/system/non-packaged/lib/libstdc++.so.6", false, 0x7f3404125310, 0x80) = 0x80006003 No such file or directory (5 us)
[ 85713] read_stat(0xffffffff, "/boot/system/lib/libstdc++.so.6", false, 0x7f3404125310, 0x80) = 0x0 No error (5 us)
[ 85713] read_link(0xffffffff, "/boot/system/lib/libstdc++.so.6", 0x7f3404125390, [0x13]) = 0x0 No error (6 us)
[ 85713] open(0xffffffff, "/boot/system/lib/libstdc++.so.6.0.25", 0x0, 0x0) = 0x3 (4 us)
[ 85713] read_stat(0x3, (nil), true, 0x7f3404125810, 0x80) = 0x0 No error (1 us)
[ 85713] normalize_path("/boot/system/lib/libstdc++.so.6.0.25", true, 0x7f3404125e00) = 0x0 No error (9 us)
[ 85713] read(0x3, 0x0, 0x7f3404125dc0, 0x40) = 0x40 (9 us)
[ 85713] read(0x3, 0x40, 0x7f3404126200, 0x118) = 0x118 (2 us)
[ 85713] reserve_address_range([0x1944746e000], 0x7, 0x376000) = 0x0 No error (2 us)
[ 85713] map_file("libstdc++.so.6.0.25_seg0ro", 0x7f3404125cd8, 0x1, 0x162000, 0x1003, 0x1, true, 0x0, 0x3ca5e9d90) = 0x5f03b2 (48 us)
[ 85713] map_file("libstdc++.so.6.0.25_seg1rw", 0x7f3404125cd8, 0x1, 0xc000, 0x3, 0x1, true, 0x0, 0x3ca5e9dd8) = 0x5f03b3 (7 us)
[ 85713] create_area("libstdc++.so.6.0.25_seg2rw", 0x7f3404125cd8, 0x1, 0x8000, 0x0, 0x3) = 0x5f03b4 (4 us)
[ 85713] read(0x3, 0x1e44f0, 0x7f3404126200, 0x800) = 0x800 (2 us)
[ 85713] read(0x3, 0x1e43de, 0x7f34041270ef, 0x111) = 0x111 (1 us)
[ 85713] read(0x3, 0x16db00, 0x7f3404126200, 0x29) = 0x29 (1 us)
[ 85713] read_stat(0x3, (nil), false, 0x7f3404125810, 0x80) = 0x0 No error (1 us)
[ 85713] register_image(0x7f3404125890, 0x470) = 0x19d3c4 (3 us)
[ 85713] close(0x3) = 0x0 No error (2 us)
[ 85713] read_stat(0xffffffff, "/boot/system/bin/lib/libicudata.so.57", false, 0x7f3404125310, 0x80) = 0x80006003 No such file or directory (6 us)
[ 85713] read_stat(0xffffffff, "/boot/home/config/non-packaged/lib/libicudata.so.57", false, 0x7f3404125310, 0x80) = 0x80006003 No such file or directory (6 us)
[ 85713] read_stat(0xffffffff, "/boot/home/config/lib/libicudata.so.57", false, 0x7f3404125310, 0x80) = 0x80006003 No such file or directory (3 us)
[ 85713] read_stat(0xffffffff, "/boot/system/non-packaged/lib/libicudata.so.57", false, 0x7f3404125310, 0x80) = 0x80006003 No such file or directory (4 us)
[ 85713] read_stat(0xffffffff, "/boot/system/lib/libicudata.so.57", false, 0x7f3404125310, 0x80) = 0x0 No error (6 us)
[ 85713] read_link(0xffffffff, "/boot/system/lib/libicudata.so.57", 0x7f3404125390, [0x12]) = 0x0 No error (4 us)
[ 85713] open(0xffffffff, "/boot/system/lib/libicudata.so.57.2", 0x0, 0x0) = 0x3 (7 us)
[ 85713] read_stat(0x3, (nil), true, 0x7f3404125810, 0x80) = 0x0 No error (1 us)
[ 85713] normalize_path("/boot/system/lib/libicudata.so.57.2", true, 0x7f3404125e00) = 0x0 No error (10 us)
[ 85713] read(0x3, 0x0, 0x7f3404125dc0, 0x40) = 0x40 (3 us)
[ 85713] read(0x3, 0x40, 0x7f3404126200, 0xe0) = 0xe0 (1 us)
[ 85713] reserve_address_range([0x2700b4da000], 0x7, 0x1a80000) = 0x0 No error (3 us)
[ 85713] map_file("libicudata.so.57.2_seg0ro", 0x7f3404125cd8, 0x1, 0x1880000, 0x1003, 0x1, true, 0x0, 0x3ca5ea908) = 0x5f03b5 (702 us)
[ 85713] map_file("libicudata.so.57.2_seg1rw", 0x7f3404125cd8, 0x1, 0x1000, 0x3, 0x1, true, 0x0, 0x3ca5ea950) = 0x5f03b6 (7 us)
[ 85713] read_stat(0x3, (nil), false, 0x7f3404125810, 0x80) = 0x0 No error (1 us)
[ 85713] register_image(0x7f3404125890, 0x470) = 0x19d3c5 (3 us)
[ 85713] close(0x3) = 0x0 No error (1 us)
[ 85713] read_stat(0xffffffff, "/boot/system/bin/lib/libicui18n.so.57", false, 0x7f3404125310, 0x80) = 0x80006003 No such file or directory (4 us)
[ 85713] read_stat(0xffffffff, "/boot/home/config/non-packaged/lib/libicui18n.so.57", false, 0x7f3404125310, 0x80) = 0x80006003 No such file or directory (6 us)
[ 85713] read_stat(0xffffffff, "/boot/home/config/lib/libicui18n.so.57", false, 0x7f3404125310, 0x80) = 0x80006003 No such file or directory (3 us)
[ 85713] read_stat(0xffffffff, "/boot/system/non-packaged/lib/libicui18n.so.57", false, 0x7f3404125310, 0x80) = 0x80006003 No such file or directory (4 us)
[ 85713] read_stat(0xffffffff, "/boot/system/lib/libicui18n.so.57", false, 0x7f3404125310, 0x80) = 0x0 No error (6 us)
[ 85713] read_link(0xffffffff, "/boot/system/lib/libicui18n.so.57", 0x7f3404125390, [0x12]) = 0x0 No error (5 us)
[ 85713] open(0xffffffff, "/boot/system/lib/libicui18n.so.57.2", 0x0, 0x0) = 0x3 (7 us)
[ 85713] read_stat(0x3, (nil), true, 0x7f3404125810, 0x80) = 0x0 No error (1 us)
[ 85713] normalize_path("/boot/system/lib/libicui18n.so.57.2", true, 0x7f3404125e00) = 0x0 No error (10 us)
[ 85713] read(0x3, 0x0, 0x7f3404125dc0, 0x40) = 0x40 (3 us)
[ 85713] read(0x3, 0x40, 0x7f3404126200, 0xa8) = 0xa8 (1 us)
[ 85713] reserve_address_range([0x1fde65ea000], 0x7, 0x491000) = 0x0 No error (2 us)
[ 85713] map_file("libicui18n.so.57.2_seg0ro", 0x7f3404125cd8, 0x1, 0x27c000, 0x1003, 0x1, true, 0x0, 0x3ca5eafc8) = 0x5f03b7 (81 us)
[ 85713] map_file("libicui18n.so.57.2_seg1rw", 0x7f3404125cd8, 0x1, 0x15000, 0x3, 0x1, true, 0x0, 0x3ca5eb010) = 0x5f03b8 (8 us)
[ 85713] read_stat(0x3, (nil), false, 0x7f3404125810, 0x80) = 0x0 No error (1 us)
[ 85713] register_image(0x7f3404125890, 0x470) = 0x19d3c6 (3 us)
[ 85713] close(0x3) = 0x0 No error (1 us)
[ 85713] read_stat(0xffffffff, "/boot/system/bin/lib/libicuio.so.57", false, 0x7f3404125310, 0x80) = 0x80006003 No such file or directory (5 us)
[ 85713] read_stat(0xffffffff, "/boot/home/config/non-packaged/lib/libicuio.so.57", false, 0x7f3404125310, 0x80) = 0x80006003 No such file or directory (5 us)
[ 85713] read_stat(0xffffffff, "/boot/home/config/lib/libicuio.so.57", false, 0x7f3404125310, 0x80) = 0x80006003 No such file or directory (3 us)
[ 85713] read_stat(0xffffffff, "/boot/system/non-packaged/lib/libicuio.so.57", false, 0x7f3404125310, 0x80) = 0x80006003 No such file or directory (11 us)
[ 85713] read_stat(0xffffffff, "/boot/system/lib/libicuio.so.57", false, 0x7f3404125310, 0x80) = 0x0 No error (7 us)
[ 85713] read_link(0xffffffff, "/boot/system/lib/libicuio.so.57", 0x7f3404125390, [0x10]) = 0x0 No error (5 us)
[ 85713] open(0xffffffff, "/boot/system/lib/libicuio.so.57.2", 0x0, 0x0) = 0x3 (6 us)
[ 85713] read_stat(0x3, (nil), true, 0x7f3404125810, 0x80) = 0x0 No error (1 us)
[ 85713] normalize_path("/boot/system/lib/libicuio.so.57.2", true, 0x7f3404125e00) = 0x0 No error (11 us)
[ 85713] read(0x3, 0x0, 0x7f3404125dc0, 0x40) = 0x40 (3 us)
[ 85713] read(0x3, 0x40, 0x7f3404126200, 0xa8) = 0xa8 (1 us)
[ 85713] reserve_address_range([0x1fd7bfff000], 0x7, 0x20d000) = 0x0 No error (2 us)
[ 85713] map_file("libicuio.so.57.2_seg0ro", 0x7f3404125cd8, 0x1, 0xb000, 0x1003, 0x1, true, 0x0, 0x3ca5eb720) = 0x5f03b9 (5 us)
[ 85713] map_file("libicuio.so.57.2_seg1rw", 0x7f3404125cd8, 0x1, 0x2000, 0x3, 0x1, true, 0x0, 0x3ca5eb768) = 0x5f03ba (4 us)
[ 85713] read_stat(0x3, (nil), false, 0x7f3404125810, 0x80) = 0x0 No error (1 us)
[ 85713] register_image(0x7f3404125890, 0x470) = 0x19d3c7 (3 us)
[ 85713] close(0x3) = 0x0 No error (2 us)
[ 85713] read_stat(0xffffffff, "/boot/system/bin/lib/libicutu.so.57", false, 0x7f3404125310, 0x80) = 0x80006003 No such file or directory (5 us)
[ 85713] read_stat(0xffffffff, "/boot/home/config/non-packaged/lib/libicutu.so.57", false, 0x7f3404125310, 0x80) = 0x80006003 No such file or directory (6 us)
[ 85713] read_stat(0xffffffff, "/boot/home/config/lib/libicutu.so.57", false, 0x7f3404125310, 0x80) = 0x80006003 No such file or directory (3 us)
[ 85713] read_stat(0xffffffff, "/boot/system/non-packaged/lib/libicutu.so.57", false, 0x7f3404125310, 0x80) = 0x80006003 No such file or directory (4 us)
[ 85713] read_stat(0xffffffff, "/boot/system/lib/libicutu.so.57", false, 0x7f3404125310, 0x80) = 0x0 No error (5 us)
[ 85713] read_link(0xffffffff, "/boot/system/lib/libicutu.so.57", 0x7f3404125390, [0x10]) = 0x0 No error (5 us)
[ 85713] open(0xffffffff, "/boot/system/lib/libicutu.so.57.2", 0x0, 0x0) = 0x3 (5 us)
[ 85713] read_stat(0x3, (nil), true, 0x7f3404125810, 0x80) = 0x0 No error (1 us)
[ 85713] normalize_path("/boot/system/lib/libicutu.so.57.2", true, 0x7f3404125e00) = 0x0 No error (11 us)
[ 85713] read(0x3, 0x0, 0x7f3404125dc0, 0x40) = 0x40 (3 us)
[ 85713] read(0x3, 0x40, 0x7f3404126200, 0xa8) = 0xa8 (1 us)
[ 85713] reserve_address_range([0x173f128000], 0x7, 0x262000) = 0x0 No error (3 us)
[ 85713] map_file("libicutu.so.57.2_seg0ro", 0x7f3404125cd8, 0x1, 0x2e000, 0x1003, 0x1, true, 0x0, 0x3ca5ebe78) = 0x5f03bb (11 us)
[ 85713] map_file("libicutu.so.57.2_seg1rw", 0x7f3404125cd8, 0x1, 0x2000, 0x3, 0x1, true, 0x0, 0x3ca5ebec0) = 0x5f03bc (5 us)
[ 85713] create_area("libicutu.so.57.2_seg2rw", 0x7f3404125cd8, 0x1, 0x32000, 0x0, 0x3) = 0x5f03bd (5 us)
[ 85713] read_stat(0x3, (nil), false, 0x7f3404125810, 0x80) = 0x0 No error (0 us)
[ 85713] register_image(0x7f3404125890, 0x470) = 0x19d3c8 (3 us)
[ 85713] close(0x3) = 0x0 No error (1 us)
[ 85713] read_stat(0xffffffff, "/boot/system/bin/lib/libicuuc.so.57", false, 0x7f3404125310, 0x80) = 0x80006003 No such file or directory (5 us)
[ 85713] read_stat(0xffffffff, "/boot/home/config/non-packaged/lib/libicuuc.so.57", false, 0x7f3404125310, 0x80) = 0x80006003 No such file or directory (5 us)
[ 85713] read_stat(0xffffffff, "/boot/home/config/lib/libicuuc.so.57", false, 0x7f3404125310, 0x80) = 0x80006003 No such file or directory (3 us)
[ 85713] read_stat(0xffffffff, "/boot/system/non-packaged/lib/libicuuc.so.57", false, 0x7f3404125310, 0x80) = 0x80006003 No such file or directory (4 us)
[ 85713] read_stat(0xffffffff, "/boot/system/lib/libicuuc.so.57", false, 0x7f3404125310, 0x80) = 0x0 No error (5 us)
[ 85713] read_link(0xffffffff, "/boot/system/lib/libicuuc.so.57", 0x7f3404125390, [0x10]) = 0x0 No error (6 us)
[ 85713] open(0xffffffff, "/boot/system/lib/libicuuc.so.57.2", 0x0, 0x0) = 0x3 (5 us)
[ 85713] read_stat(0x3, (nil), true, 0x7f3404125810, 0x80) = 0x0 No error (0 us)
[ 85713] normalize_path("/boot/system/lib/libicuuc.so.57.2", true, 0x7f3404125e00) = 0x0 No error (10 us)
[ 85713] read(0x3, 0x0, 0x7f3404125dc0, 0x40) = 0x40 (3 us)
[ 85713] read(0x3, 0x40, 0x7f3404126200, 0xa8) = 0xa8 (1 us)
[ 85713] reserve_address_range([0x1f632b9f000], 0x7, 0x3a9000) = 0x0 No error (2 us)
[ 85713] map_file("libicuuc.so.57.2_seg0ro", 0x7f3404125cd8, 0x1, 0x194000, 0x1003, 0x1, true, 0x0, 0x3ca5ec660) = 0x5f03be (56 us)
[ 85713] map_file("libicuuc.so.57.2_seg1rw", 0x7f3404125cd8, 0x1, 0x15000, 0x3, 0x1, true, 0x0, 0x3ca5ec6a8) = 0x5f03bf (8 us)
[ 85713] read_stat(0x3, (nil), false, 0x7f3404125810, 0x80) = 0x0 No error (1 us)
[ 85713] register_image(0x7f3404125890, 0x470) = 0x19d3c9 (3 us)
[ 85713] close(0x3) = 0x0 No error (1 us)
[ 85713] create_area("rld heap", 0x7f3404127148, 0x6, 0x10000, 0x0, 0x3) = 0x5f03c0 (5 us)
[ 85713] create_area("rld heap", 0x7f3404127148, 0x6, 0x10000, 0x0, 0x3) = 0x5f03c1 (3 us)
[ 85713] image_relocated(0x19d3c4) (1 us)
[ 85713] image_relocated(0x19d3c5) (1 us)
[ 85713] image_relocated(0x19d3c9) (1 us)
[ 85713] image_relocated(0x19d3c6) (1 us)
[ 85713] image_relocated(0x19d3c7) (1 us)
[ 85713] image_relocated(0x19d3c8) (0 us)
[ 85713] image_relocated(0x19d3c3) (1 us)
[ 85713] set_area_protection(0x5f03b0, 0x5) = 0x0 No error (7 us)
[ 85713] set_area_protection(0x5f03b2, 0x5) = 0x0 No error (5 us)
[ 85713] set_area_protection(0x5f03b5, 0x5) = 0x0 No error (4 us)
[ 85713] set_area_protection(0x5f03b7, 0x5) = 0x0 No error (5 us)
[ 85713] set_area_protection(0x5f03b9, 0x5) = 0x0 No error (2 us)
[ 85713] set_area_protection(0x5f03bb, 0x5) = 0x0 No error (2 us)
[ 85713] set_area_protection(0x5f03be, 0x5) = 0x0 No error (3 us)
[ 85713] resize_area(0x5f03af, 0x60000) = 0x0 No error (2 us)
[ 85713] resize_area(0x5f03af, 0x70000) = 0x0 No error (2 us)
[ 85713] resize_area(0x5f03af, 0x90000) = 0x0 No error (1 us)
[ 85713] resize_area(0x5f03af, 0xb0000) = 0x0 No error (3 us)
[ 85713] read_stat(0x0, (nil), false, 0x7f34041273f0, 0x80) = 0x0 No error (1 us)
[ 85713] read_stat(0x1, (nil), false, 0x7f34041273f0, 0x80) = 0x0 No error (0 us)
[ 85713] read_stat(0x2, (nil), false, 0x7f34041273f0, 0x80) = 0x0 No error (0 us)
[ 85713] get_thread_info(0x14ed1, 0x7f3404127390) = 0x0 No error (1 us)
[ 85713] sigaction(0x1b, 0x7f3404127360, 0x7f3404127340) = 0x0 No error (1 us)
[ 85713] resize_area(0x5f03af, 0x1e0000) = 0x0 No error (2 us)
[ 85713] resize_area(0x5f03af, 0x1f0000) = 0x0 No error (1 us)
[ 85713] resize_area(0x5f03af, 0x200000) = 0x0 No error (1 us)
[ 85713] resize_area(0x5f03af, 0x210000) = 0x0 No error (1 us)
[ 85713] resize_area(0x5f03af, 0x220000) = 0x0 No error (1 us)
[ 85713] resize_area(0x5f03af, 0x230000) = 0x0 No error (2 us)
[ 85713] resize_area(0x5f03af, 0x240000) = 0x0 No error (1 us)
[ 85713] resize_area(0x5f03af, 0x250000) = 0x0 No error (2 us)
[ 85713] resize_area(0x5f03af, 0x260000) = 0x0 No error (1 us)
[ 85713] resize_area(0x5f03af, 0x270000) = 0x0 No error (1 us)
[ 85713] resize_area(0x5f03af, 0x280000) = 0x0 No error (1 us)
[ 85713] resize_area(0x5f03af, 0x290000) = 0x0 No error (1 us)
[ 85713] resize_area(0x5f03af, 0x2a0000) = 0x0 No error (0 us)
[ 85713] resize_area(0x5f03af, 0x2b0000) = 0x0 No error (1 us)
[ 85713] resize_area(0x5f03af, 0x2c0000) = 0x0 No error (1 us)
[ 85713] get_clock(0xfffffffe, [0x539a]) = 0x0 No error (1 us)
[ 85713] resize_area(0x5f03af, 0x2d0000) = 0x0 No error (1 us)
[ 85713] resize_area(0x5f03af, 0x340000) = 0x0 No error (1 us)
[ 85713] resize_area(0x5f03af, 0x2950000) = 0x0 No error (1 us)
[ 85713] resize_area(0x5f03af, 0x2960000) = 0x0 No error (1 us)
[ 85713] resize_area(0x5f03af, 0x2970000) = 0x0 No error (1 us)
[ 85713] open(0xffffffff, "/dev/urandom", 0x10c0, 0x0) = 0x3 (16 us)
[ 85713] fcntl(0x3, 0x2, 0xc4ad0b00e0) = 0x1 No Error (1) (1 us)
[ 85713] read_stat(0x3, (nil), false, 0x7f34041268d0, 0x80) = 0x0 No error (0 us)
[ 85713] read(0x3, 0xffffffffffffffff, 0x7f3404126a00, 0x10) = 0x10 (2 us)
[ 85713] close(0x3) = 0x0 No error (2 us)
[ 85713] resize_area(0x5f03af, 0x2980000) = 0x0 No error (1 us)
[ 85713] resize_area(0x5f03af, 0x29a0000) = 0x0 No error (2 us)
[ 85713] resize_area(0x5f03af, 0x29c0000) = 0x0 No error (2 us)
[ 85713] resize_area(0x5f03af, 0x29d0000) = 0x0 No error (1 us)
[ 85713] ioctl(0x0, TCGETA, 0x7f34041272d0, 0x20) = 0x0 No error (3 us)
[ 85713] ioctl(0x1, TCGETA, 0x7f34041272d0, 0x20) = 0x0 No error (1 us)
[ 85713] ioctl(0x2, TCGETA, 0x7f34041272d0, 0x20) = 0x0 No error (1 us)
[ 85713] resize_area(0x5f03af, 0x29e0000) = 0x0 No error (2 us)
[ 85713] open(0xffffffff, "/dev/urandom", 0x10c0, 0x0) = 0x3 (10 us)
[ 85713] read_stat(0x3, (nil), false, 0x7f3404127210, 0x80) = 0x0 No error (0 us)
[ 85713] read(0x3, 0xffffffffffffffff, 0x7f3404127350, 0x10) = 0x10 (110 us)
[ 85713] close(0x3) = 0x0 No error (1 us)
[ 85713] set_signal_mask(0x3, 0x7f34041273a8, (nil)) = 0x0 No error (1 us)
[ 85713] sigaction(0x2, 0x7f3404127350, 0x7f3404127330) = 0x0 No error (0 us)
[ 85713] sigaction(0x1, 0x7f3404127350, 0x7f3404127330) = 0x0 No error (0 us)
[ 85713] sigaction(0x3, 0x7f3404127350, 0x7f3404127330) = 0x0 No error (0 us)
[ 85713] sigaction(0xf, 0x7f3404127350, 0x7f3404127330) = 0x0 No error (0 us)
[ 85713] sigaction(0xe, 0x7f3404127350, 0x7f3404127330) = 0x0 No error (0 us)
[ 85713] sigaction(0x12, 0x7f3404127350, 0x7f3404127330) = 0x0 No error (0 us)
[ 85713] sigaction(0x13, 0x7f3404127350, 0x7f3404127330) = 0x0 No error (0 us)
[ 85713] sigaction(0x1e, 0x7f3404127350, 0x7f3404127330) = 0x0 No error (1 us)
[ 85713] sigaction(0x4, 0x7f3404127350, 0x7f3404127330) = 0x0 No error (0 us)
[ 85713] set_signal_stack(0x7f3404127390, 0x7f3404127370) = 0x0 No error (0 us)
[ 85713] sigaction(0xb, 0x7f3404127350, 0x7f3404127330) = 0x0 No error (1 us)
[ 85713] sigaction(0x7, 0x7f3404127350, 0x7f3404127330) = 0x0 No error (0 us)
[ 85713] sigaction(0x19, 0x7f3404127350, 0x7f3404127330) = 0x0 No error (0 us)
[ 85713] sigaction(0x5, 0x7f3404127360, 0x7f3404127340) = 0x0 No error (0 us)
[ 85713] sigaction(0x5, 0x7f3404127360, 0x7f3404127340) = 0x0 No error (0 us)
[ 85713] set_signal_mask(0x3, 0x7f34041273a8, (nil)) = 0x0 No error (0 us)
[ 85713] resize_area(0x5f03af, 0x2a00000) = 0x0 No error (2 us)
[ 85713] create_pipe([0x3]) = 0x0 No error (26 us)
[ 85713] fcntl(0x3, 0x2, 0x11d560f02098) = 0x0 No error (1 us)
[ 85713] fcntl(0x3, 0x4, 0x1) = 0x0 No error (0 us)
[ 85713] fcntl(0x4, 0x2, 0x1) = 0x0 No error (0 us)
[ 85713] fcntl(0x4, 0x4, 0x1) = 0x0 No error (1 us)
[ 85713] fcntl(0x3, 0x8, 0x1) = 0x0 No error (0 us)
[ 85713] fcntl(0x3, 0x10, 0x80) = 0x0 No error (0 us)
[ 85713] fcntl(0x4, 0x8, 0x80) = 0x1 No Error (1) (0 us)
[ 85713] fcntl(0x4, 0x10, 0x81) = 0x0 No error (0 us)
[ 85713] create_pipe([0x5]) = 0x0 No error (19 us)
[ 85713] fcntl(0x5, 0x2, 0x81) = 0x0 No error (1 us)
[ 85713] fcntl(0x5, 0x4, 0x1) = 0x0 No error (0 us)
[ 85713] fcntl(0x6, 0x2, 0x1) = 0x0 No error (0 us)
[ 85713] fcntl(0x6, 0x4, 0x1) = 0x0 No error (0 us)
[ 85713] fcntl(0x5, 0x8, 0x1) = 0x0 No error (0 us)
[ 85713] fcntl(0x5, 0x10, 0x80) = 0x0 No error (1 us)
[ 85713] fcntl(0x6, 0x8, 0x80) = 0x1 No Error (1) (0 us)
[ 85713] fcntl(0x6, 0x10, 0x81) = 0x0 No error (0 us)
[ 85713] create_pipe([0x7]) = 0x0 No error (19 us)
[ 85713] fcntl(0x7, 0x2, 0x81) = 0x0 No error (0 us)
[ 85713] fcntl(0x7, 0x4, 0x1) = 0x0 No error (0 us)
[ 85713] fcntl(0x8, 0x2, 0x1) = 0x0 No error (1 us)
[ 85713] fcntl(0x8, 0x4, 0x1) = 0x0 No error (1 us)
[ 85713] fcntl(0x7, 0x8, 0x1) = 0x0 No error (0 us)
[ 85713] fcntl(0x7, 0x10, 0x80) = 0x0 No error (0 us)
[ 85713] fcntl(0x8, 0x8, 0x80) = 0x1 No Error (1) (0 us)
[ 85713] fcntl(0x8, 0x10, 0x81) = 0x0 No error (0 us)
[ 85713] spawn_thread(0x7f34041272d0) = 0x14ed3 (31 us)
[ 85713] resume_thread(0x14ed3) = 0x0 No error (3 us)
[ 85713] getuid(true) = 0x0 (0 us)
[ 85713] getgid(true) = 0x0 (0 us)
[ 85713] map_file("libruby.so.2.7 mmap area", 0x7f3404127278, 0x6, 0x1440000, 0x3, 0x1, true, 0x0, 0xffffffff) = 0x5f03c4 (4 us)
[ 85713] set_memory_protection(0x3332de7000, 0x1000, 0x0) = 0x0 No error (3 us)
[ 85713] set_memory_protection(0x3332e89000, 0x1000, 0x0) = 0x0 No error (1 us)
[ 85713] set_memory_protection(0x3332f2b000, 0x1000, 0x0) = 0x0 No error (1 us)
[ 85713] set_memory_protection(0x3332fcd000, 0x1000, 0x0) = 0x0 No error (0 us)
[ 85713] set_memory_protection(0x333306f000, 0x1000, 0x0) = 0x0 No error (1 us)
[ 85713] set_memory_protection(0x3333111000, 0x1000, 0x0) = 0x0 No error (1 us)
[ 85713] set_memory_protection(0x33331b3000, 0x1000, 0x0) = 0x0 No error (0 us)
[ 85713] set_memory_protection(0x3333255000, 0x1000, 0x0) = 0x0 No error (1 us)
[ 85713] set_memory_protection(0x33332f7000, 0x1000, 0x0) = 0x0 No error (0 us)
[ 85713] set_memory_protection(0x3333399000, 0x1000, 0x0) = 0x0 No error (1 us)
[ 85713] set_memory_protection(0x333343b000, 0x1000, 0x0) = 0x0 No error (0 us)
[ 85713] set_memory_protection(0x33334dd000, 0x1000, 0x0) = 0x0 No error (1 us)
[ 85713] set_memory_protection(0x333357f000, 0x1000, 0x0) = 0x0 No error (1 us)
[ 85713] set_memory_protection(0x3333621000, 0x1000, 0x0) = 0x0 No error (0 us)
[ 85713] set_memory_protection(0x33336c3000, 0x1000, 0x0) = 0x0 No error (1 us)
[ 85713] set_memory_protection(0x3333765000, 0x1000, 0x0) = 0x0 No error (0 us)
[ 85713] set_memory_protection(0x3333807000, 0x1000, 0x0) = 0x0 No error (1 us)
[ 85713] set_memory_protection(0x33338a9000, 0x1000, 0x0) = 0x0 No error (0 us)
[ 85713] set_memory_protection(0x333394b000, 0x1000, 0x0) = 0x0 No error (1 us)
[ 85713] set_memory_protection(0x33339ed000, 0x1000, 0x0) = 0x0 No error (1 us)
[ 85713] set_memory_protection(0x3333a8f000, 0x1000, 0x0) = 0x0 No error (1 us)
[ 85713] set_memory_protection(0x3333b31000, 0x1000, 0x0) = 0x0 No error (1 us)
[ 85713] set_memory_protection(0x3333bd3000, 0x1000, 0x0) = 0x0 No error (1 us)
[ 85713] set_memory_protection(0x3333c75000, 0x1000, 0x0) = 0x0 No error (1 us)
[ 85713] set_memory_protection(0x3333d17000, 0x1000, 0x0) = 0x0 No error (0 us)
[ 85713] set_memory_protection(0x3333db9000, 0x1000, 0x0) = 0x0 No error (1 us)
[ 85713] set_memory_protection(0x3333e5b000, 0x1000, 0x0) = 0x0 No error (0 us)
[ 85713] set_memory_protection(0x3333efd000, 0x1000, 0x0) = 0x0 No error (0 us)
[ 85713] set_memory_protection(0x3333f9f000, 0x1000, 0x0) = 0x0 No error (0 us)
[ 85713] set_memory_protection(0x3334041000, 0x1000, 0x0) = 0x0 No error (1 us)
[ 85713] set_memory_protection(0x33340e3000, 0x1000, 0x0) = 0x0 No error (1 us)
[ 85713] set_memory_protection(0x3334185000, 0x1000, 0x0) = 0x0 No error (0 us)
[ 85713] getuid(false) = 0x0 (0 us)
[ 85713] getuid(true) = 0x0 (0 us)
[ 85713] getgid(false) = 0x0 (0 us)
[ 85713] getgid(true) = 0x0 (0 us)
[ 85713] normalize_path("/packages/ruby-2.7.2-1/.self/lib/ruby/site_ruby/2.7.0", true, 0x11d560d4e770) = 0x0 No error (35 us)
[ 85713] read_stat(0xffffffff, "/boot/system/lib/ruby/site_ruby/2.7.0", false, 0x7f3404126850, 0x80) = 0x0 No error (4 us)
[ 85713] read_stat(0xffffffff, "/boot/system/lib/ruby/site_ruby/2.7.0", true, 0x7f3404126920, 0x80) = 0x0 No error (3 us)
[ 85713] normalize_path("/packages/ruby-2.7.2-1/.self/lib/ruby/site_ruby/2.7.0/x86_64-haiku", true, 0x11d560d4e770) = 0x0 No error (12 us)
[ 85713] read_stat(0xffffffff, "/boot/system/lib/ruby/site_ruby/2.7.0/x86_64-haiku", false, 0x7f3404126850, 0x80) = 0x0 No error (2 us)
[ 85713] read_stat(0xffffffff, "/boot/system/lib/ruby/site_ruby/2.7.0/x86_64-haiku", true, 0x7f3404126920, 0x80) = 0x0 No error (3 us)
[ 85713] normalize_path("/packages/ruby-2.7.2-1/.self/lib/ruby/site_ruby", true, 0x11d560d4e770) = 0x0 No error (9 us)
[ 85713] read_stat(0xffffffff, "/boot/system/lib/ruby/site_ruby", false, 0x7f3404126850, 0x80) = 0x0 No error (3 us)
[ 85713] read_stat(0xffffffff, "/boot/system/lib/ruby/site_ruby", true, 0x7f3404126920, 0x80) = 0x0 No error (2 us)
[ 85713] normalize_path("/packages/ruby-2.7.2-1/.self/lib/ruby/vendor_ruby/2.7.0", true, 0x11d560d4e770) = 0x0 No error (10 us)
[ 85713] read_stat(0xffffffff, "/boot/system/lib/ruby/vendor_ruby/2.7.0", false, 0x7f3404126850, 0x80) = 0x0 No error (3 us)
[ 85713] read_stat(0xffffffff, "/boot/system/lib/ruby/vendor_ruby/2.7.0", true, 0x7f3404126920, 0x80) = 0x0 No error (2 us)
[ 85713] normalize_path("/packages/ruby-2.7.2-1/.self/lib/ruby/vendor_ruby/2.7.0/x86_64-haiku", true, 0x11d560d4e770) = 0x0 No error (9 us)
[ 85713] read_stat(0xffffffff, "/boot/system/lib/ruby/vendor_ruby/2.7.0/x86_64-haiku", false, 0x7f3404126850, 0x80) = 0x0 No error (2 us)
[ 85713] read_stat(0xffffffff, "/boot/system/lib/ruby/vendor_ruby/2.7.0/x86_64-haiku", true, 0x7f3404126920, 0x80) = 0x0 No error (3 us)
[ 85713] normalize_path("/packages/ruby-2.7.2-1/.self/lib/ruby/vendor_ruby", true, 0x11d560d4e770) = 0x0 No error (9 us)
[ 85713] read_stat(0xffffffff, "/boot/system/lib/ruby/vendor_ruby", false, 0x7f3404126850, 0x80) = 0x0 No error (3 us)
[ 85713] read_stat(0xffffffff, "/boot/system/lib/ruby/vendor_ruby", true, 0x7f3404126920, 0x80) = 0x0 No error (2 us)
[ 85713] normalize_path("/packages/ruby-2.7.2-1/.self/lib/ruby/2.7.0", true, 0x11d560d4e770) = 0x0 No error (8 us)
[ 85713] read_stat(0xffffffff, "/boot/system/lib/ruby/2.7.0", false, 0x7f3404126850, 0x80) = 0x0 No error (3 us)
[ 85713] read_stat(0xffffffff, "/boot/system/lib/ruby/2.7.0", true, 0x7f3404126920, 0x80) = 0x0 No error (2 us)
[ 85713] normalize_path("/packages/ruby-2.7.2-1/.self/lib/ruby/2.7.0/x86_64-haiku", true, 0x11d560d4e770) = 0x0 No error (9 us)
[ 85713] read_stat(0xffffffff, "/boot/system/lib/ruby/2.7.0/x86_64-haiku", false, 0x7f3404126850, 0x80) = 0x0 No error (3 us)
[ 85713] read_stat(0xffffffff, "/boot/system/lib/ruby/2.7.0/x86_64-haiku", true, 0x7f3404126920, 0x80) = 0x0 No error (2 us)
[ 85713] open(0xffffffff, "/boot/system/lib/ruby/site_ruby/2.7.0/enc/encdb.so", 0xc0, 0x0) = 0x80006003 (3 us)
[ 85713] open(0xffffffff, "/boot/system/lib/ruby/site_ruby/2.7.0/x86_64-haiku/enc/encdb.so", 0xc0, 0x0) = 0x80006003 (3 us)
[ 85713] open(0xffffffff, "/boot/system/lib/ruby/site_ruby/enc/encdb.so", 0xc0, 0x0) = 0x80006003 (2 us)
[ 85713] open(0xffffffff, "/boot/system/lib/ruby/vendor_ruby/2.7.0/enc/encdb.so", 0xc0, 0x0) = 0x80006003 (3 us)
[ 85713] open(0xffffffff, "/boot/system/lib/ruby/vendor_ruby/2.7.0/x86_64-haiku/enc/encdb.so", 0xc0, 0x0) = 0x80006003 (3 us)
[ 85713] open(0xffffffff, "/boot/system/lib/ruby/vendor_ruby/enc/encdb.so", 0xc0, 0x0) = 0x80006003 (2 us)
[ 85713] open(0xffffffff, "/boot/system/lib/ruby/2.7.0/enc/encdb.so", 0xc0, 0x0) = 0x80006003 (3 us)
[ 85713] open(0xffffffff, "/boot/system/lib/ruby/2.7.0/x86_64-haiku/enc/encdb.so", 0xc0, 0x0) = 0x9 (6 us)
[ 85713] read_stat(0x9, (nil), false, 0x7f3404126aa0, 0x80) = 0x0 No error (0 us)
[ 85713] close(0x9) = 0x0 No error (1 us)
[ 85713] open(0xffffffff, "/boot/system/lib/ruby/2.7.0/x86_64-haiku/enc/encdb.so", 0x0, 0x0) = 0x9 (5 us)
[ 85713] normalize_path("/boot/system/lib/ruby/2.7.0/x86_64-haiku/enc/encdb.so", true, 0x7f3404125660) = 0x0 No error (7 us)
[ 85713] read(0x9, 0x0, 0x7f3404125620, 0x40) = 0x40 (3 us)
[ 85713] read(0x9, 0x40, 0x7f3404125a60, 0xa8) = 0xa8 (1 us)
[ 85713] reserve_address_range([0x1825fd54000], 0x7, 0x202000) = 0x0 No error (2 us)
[ 85713] map_file("encdb.so_seg0ro", 0x7f3404125538, 0x1, 0x2000, 0x1003, 0x1, true, 0x0, 0x3ca5eced8) = 0x5f03c5 (5 us)
[ 85713] map_file("encdb.so_seg1rw", 0x7f3404125538, 0x1, 0x1000, 0x3, 0x1, true, 0x0, 0x3ca5ecf20) = 0x5f03c6 (2 us)
[ 85713] read_stat(0x9, (nil), false, 0x7f3404125070, 0x80) = 0x0 No error (0 us)
[ 85713] register_image(0x7f34041250f0, 0x470) = 0x19d3ca (3 us)
[ 85713] close(0x9) = 0x0 No error (1 us)
[ 85713] image_relocated(0x19d3ca) (0 us)
[ 85713] set_area_protection(0x5f03c5, 0x5) = 0x0 No error (5 us)
[ 85713] resize_area(0x5f03af, 0x2a20000) = 0x0 No error (2 us)
[ 85713] open(0xffffffff, "/boot/system/lib/ruby/site_ruby/2.7.0/enc/trans/transdb.so", 0xc0, 0x0) = 0x80006003 (7 us)
[ 85713] open(0xffffffff, "/boot/system/lib/ruby/site_ruby/2.7.0/x86_64-haiku/enc/trans/transdb.so", 0xc0, 0x0) = 0x80006003 (3 us)
[ 85713] open(0xffffffff, "/boot/system/lib/ruby/site_ruby/enc/trans/transdb.so", 0xc0, 0x0) = 0x80006003 (2 us)
[ 85713] open(0xffffffff, "/boot/system/lib/ruby/vendor_ruby/2.7.0/enc/trans/transdb.so", 0xc0, 0x0) = 0x80006003 (3 us)
[ 85713] open(0xffffffff, "/boot/system/lib/ruby/vendor_ruby/2.7.0/x86_64-haiku/enc/trans/transdb.so", 0xc0, 0x0) = 0x80006003 (3 us)
[ 85713] open(0xffffffff, "/boot/system/lib/ruby/vendor_ruby/enc/trans/transdb.so", 0xc0, 0x0) = 0x80006003 (2 us)
[ 85713] open(0xffffffff, "/boot/system/lib/ruby/2.7.0/enc/trans/transdb.so", 0xc0, 0x0) = 0x80006003 (2 us)
[ 85713] open(0xffffffff, "/boot/system/lib/ruby/2.7.0/x86_64-haiku/enc/trans/transdb.so", 0xc0, 0x0) = 0x9 (6 us)
[ 85713] read_stat(0x9, (nil), false, 0x7f3404126aa0, 0x80) = 0x0 No error (1 us)
[ 85713] close(0x9) = 0x0 No error (1 us)
[ 85713] open(0xffffffff, "/boot/system/lib/ruby/2.7.0/x86_64-haiku/enc/trans/transdb.so", 0x0, 0x0) = 0x9 (5 us)
[ 85713] normalize_path("/boot/system/lib/ruby/2.7.0/x86_64-haiku/enc/trans/transdb.so", true, 0x7f3404125660) = 0x0 No error (9 us)
[ 85713] read(0x9, 0x0, 0x7f3404125620, 0x40) = 0x40 (2 us)
[ 85713] read(0x9, 0x40, 0x7f3404125a60, 0xa8) = 0xa8 (1 us)
[ 85713] reserve_address_range([0x12233169000], 0x7, 0x203000) = 0x0 No error (2 us)
[ 85713] map_file("transdb.so_seg0ro", 0x7f3404125538, 0x1, 0x2000, 0x1003, 0x1, true, 0x0, 0x3ca5ed5b8) = 0x5f03c7 (3 us)
[ 85713] map_file("transdb.so_seg1rw", 0x7f3404125538, 0x1, 0x1000, 0x3, 0x1, true, 0x0, 0x3ca5ed600) = 0x5f03c8 (2 us)
[ 85713] read_stat(0x9, (nil), false, 0x7f3404125070, 0x80) = 0x0 No error (1 us)
[ 85713] register_image(0x7f34041250f0, 0x470) = 0x19d3cb (3 us)
[ 85713] close(0x9) = 0x0 No error (1 us)
[ 85713] image_relocated(0x19d3cb) (0 us)
[ 85713] set_area_protection(0x5f03c7, 0x5) = 0x0 No error (5 us)
[ 85713] open(0xffffffff, "/boot/system/lib/ruby/site_ruby/2.7.0/rubygems.rb", 0xc0, 0x0) = 0x80006003 (6 us)
[ 85713] open(0xffffffff, "/boot/system/lib/ruby/site_ruby/2.7.0/x86_64-haiku/rubygems.rb", 0xc0, 0x0) = 0x80006003 (3 us)
[ 85713] open(0xffffffff, "/boot/system/lib/ruby/site_ruby/rubygems.rb", 0xc0, 0x0) = 0x80006003 (2 us)
[ 85713] open(0xffffffff, "/boot/system/lib/ruby/vendor_ruby/2.7.0/rubygems.rb", 0xc0, 0x0) = 0x80006003 (2 us)
[ 85713] open(0xffffffff, "/boot/system/lib/ruby/vendor_ruby/2.7.0/x86_64-haiku/rubygems.rb", 0xc0, 0x0) = 0x80006003 (3 us)
[ 85713] open(0xffffffff, "/boot/system/lib/ruby/vendor_ruby/rubygems.rb", 0xc0, 0x0) = 0x80006003 (2 us)
[ 85713] open(0xffffffff, "/boot/system/lib/ruby/2.7.0/rubygems.rb", 0xc0, 0x0) = 0x9 (4 us)
[ 85713] read_stat(0x9, (nil), false, 0x7f34041256f0, 0x80) = 0x0 No error (0 us)
[ 85713] close(0x9) = 0x0 No error (0 us)
[ 85713] getuid(false) = 0x0 (0 us)
[ 85713] getuid(true) = 0x0 (0 us)
[ 85713] getgid(false) = 0x0 (0 us)
[ 85713] getgid(true) = 0x0 (0 us)
[ 85713] open(0xffffffff, "/boot/system/lib/ruby/2.7.0/rubygems.rb", 0xc0, 0x0) = 0x9 (3 us)
[ 85713] fcntl(0x9, 0x10, 0x0) = 0x8000600e Operation not supported (0 us)
[ 85713] close(0x9) = 0x0 No error (1 us)
[ 85713] ioctl(0x2, TCGETA, 0x7f3404127220, 0x20) = 0x0 No error (2 us)
Traceback (most recent call last):
[ 85713] write(0x2, 0xffffffffffffffff, 0x7f3404127290, 0x2a) = 0x2a (4 us)
        1: from <internal:gem_prelude>:1:in `<internal:gem_prelude>'
[ 85713] write(0x2, 0xffffffffffffffff, 0x11d5636ce290, 0x3e) = 0x3e (3 us)
<internal:gem_prelude>:1:in `require'[ 85713] write(0x2, 0xffffffffffffffff, 0x11d5636ab120, 0x25) = 0x25 (2 us)
: [ 85713] write(0x2, 0xffffffffffffffff, 0x1a5305f57e4, 0x2) = 0x2 (3 us)
[ 85713] write(0x2, 0xffffffffffffffff, 0x1a5305f57da, 0x4) = 0x4 (3 us)
Operation not supported -- /boot/system/lib/ruby/2.7.0/rubygems.rb[ 85713] write(0x2, 0xffffffffffffffff, 0x11d5636c0fc0, 0x42) = 0x42 (3 us)
 ([ 85713] write(0x2, 0xffffffffffffffff, 0x1a5305f57fd, 0x2) = 0x2 (1 us)
[ 85713] write(0x2, 0xffffffffffffffff, 0x1a5305f57d3, 0x6) = 0x6 (4 us)
LoadError[ 85713] write(0x2, 0xffffffffffffffff, 0x11d560ed10e8, 0x9) = 0x9 (7 us)
[ 85713] write(0x2, 0xffffffffffffffff, 0x1a5305f57df, 0x3) = 0x3 (1 us)
[ 85713] write(0x2, 0xffffffffffffffff, 0x1a5305f57da, 0x4) = 0x4 (5 us)
)[ 85713] write(0x2, 0xffffffffffffffff, 0x1a5305f5800, 0x1) = 0x1 (1 us)
[ 85713] write(0x2, 0xffffffffffffffff, 0x1a5305f57df, 0x3) = 0x3 (2 us)

[ 85713] write(0x2, 0xffffffffffffffff, 0x1a5305f57fb, 0x1) = 0x1 (1 us)
[ 85713] sigaction(0x2, 0x7f3404127330, 0x7f3404127310) = 0x0 No error (1 us)
[ 85713] sigaction(0x2, 0x7f3404127330, 0x7f3404127310) = 0x0 No error (0 us)
[ 85713] write(0x8, 0xffffffffffffffff, 0x7f3404127323, 0x1) = 0x1 (4 us)
[ 85713] wait_for_thread(0x14ed3, [0x0]) = 0x0 No error (1 us)
[ 85713] exit_team(0x1) (2 us)
/Ports/haikuports> 

@nobu
Copy link
Member

nobu commented Dec 25, 2020

Isn't 0x8000600e ENOTSUP?

@nobu
Copy link
Member

nobu commented Dec 25, 2020

Ok, it seems B_UNSUPPORTED.

@nobu
Copy link
Member

nobu commented Dec 25, 2020

Does this work?

diff --git a/ruby.c b/ruby.c
index fa65c16bd45..022ee1c4b30 100644
--- a/ruby.c
+++ b/ruby.c
@@ -2214,6 +2214,26 @@ load_file_internal(VALUE argp_v)
     return (VALUE)ast;
 }
 
+/* disabling O_NONBLOCK, and returns 0 on success, otherwise errno */
+static inline int
+disable_nonblock(int fd)
+{
+#if defined(HAVE_FCNTL) && defined(F_SETFL)
+    if (fcntl(fd, F_SETFL, 0) < 0) {
+        int e = errno;
+        ASSUME(e != 0);
+# if defined ENOTSUP
+        if (e == ENOTSUP) return 0;
+# endif
+# if defined B_UNSUPPORTED
+        if (e == B_UNSUPPORTED) return 0;
+# endif
+        return e;
+    }
+#endif
+    return 0;
+}
+
 static VALUE
 open_load_file(VALUE fname_v, int *xflag)
 {
@@ -2263,18 +2283,10 @@ open_load_file(VALUE fname_v, int *xflag)
 	}
 	rb_update_max_fd(fd);
 
-#if defined HAVE_FCNTL && MODE_TO_LOAD != O_RDONLY
-# ifdef ENOTSUP
-#   define IS_SUPPORTED_OP(e) ((e) != ENOTSUP)
-# else
-#   define IS_SUPPORTED_OP(e) ((void)(e), 1)
-# endif
-	/* disabling O_NONBLOCK */
-	if (fcntl(fd, F_SETFL, 0) < 0 && IS_SUPPORTED_OP(e = errno)) {
+	if (MODE_TO_LOAD != O_RDONLY && (e = disable_nonblock(fd)) != 0) {
 	    (void)close(fd);
 	    rb_load_fail(fname_v, strerror(e));
 	}
-#endif
 
 	e = ruby_is_fd_loadable(fd);
 	if (!e) {

@extrowerk
Copy link
Contributor Author

I've got this:

~> error ENOTSUP
0x80007038: Not supported
~> error B_UNSUPPORTED
0x8000600e: Operation not supported

Patch not tested yet.

@extrowerk
Copy link
Contributor Author

You patched your earlier patch, so i had to apply it manually, this is how the complete patch looks like now (i post it because it is possible i made a mistake somewhere):

diff --git a/ruby.c b/ruby.c
index 96d8f75..c283912 100644
--- a/ruby.c
+++ b/ruby.c
@@ -2086,6 +2086,26 @@ load_file_internal(VALUE argp_v)
     return (VALUE)ast;
 }
 
+/* disabling O_NONBLOCK, and returns 0 on success, otherwise errno */
+static inline int
+disable_nonblock(int fd)
+{
+#if defined(HAVE_FCNTL) && defined(F_SETFL)
+    if (fcntl(fd, F_SETFL, 0) < 0) {
+        int e = errno;
+        ASSUME(e != 0);
+# if defined ENOTSUP
+        if (e == ENOTSUP) return 0;
+# endif
+# if defined B_UNSUPPORTED
+        if (e == B_UNSUPPORTED) return 0;
+# endif
+        return e;
+    }
+#endif
+    return 0;
+}
+
 static VALUE
 open_load_file(VALUE fname_v, int *xflag)
 {
@@ -2137,8 +2157,7 @@ open_load_file(VALUE fname_v, int *xflag)
 
 #if defined HAVE_FCNTL && MODE_TO_LOAD != O_RDONLY
 	/* disabling O_NONBLOCK */
-	if (fcntl(fd, F_SETFL, 0) < 0) {
-	    e = errno;
+	if (MODE_TO_LOAD != O_RDONLY && (e = disable_nonblock(fd)) != 0) {
 	    (void)close(fd);
 	    rb_load_fail(fname_v, strerror(e));
 	}

Result:

Welcome to the Haiku shell.

/Ports/haikuports/dev-lang/ruby> uname -a
Haiku shredder 1 hrev54811 Dec 24 2020 07:27:28 x86_64 x86_64 Haiku
/Ports/haikuports/dev-lang/ruby> ruby -v
ruby 2.7.2p137 (2020-10-01 revision 5445e04352) [x86_64-haiku]
/Ports/haikuports/dev-lang/ruby> ruby
# Then it just hangs here

@nobu
Copy link
Member

nobu commented Dec 25, 2020

You patched your earlier patch, so i had to apply it manually, this is how the complete patch looks like now (i post it because it is possible i made a mistake somewhere):

It is for the master, or 3.0 branch.

/Ports/haikuports/dev-lang/ruby> ruby
# Then it just hangs here

It is waiting for the script from stdin.
Try -e option, ruby -e 'p Time.now' for example.

@extrowerk
Copy link
Contributor Author

Will check!

@extrowerk
Copy link
Contributor Author

Seems to be working:

/Ports/haikuports/dev-lang/ruby> ruby -e 'p Time.now'
2020-12-25 21:20:37.573515 +0100

@nobu nobu closed this in #4000 Dec 26, 2020
nobu added a commit that referenced this pull request Dec 26, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
2 participants