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

Intermittent segfault in servo_config/net/profile unit tests #26192

Closed
jdm opened this issue Apr 15, 2020 · 15 comments
Closed

Intermittent segfault in servo_config/net/profile unit tests #26192

jdm opened this issue Apr 15, 2020 · 15 comments

Comments

@jdm
Copy link
Member

@jdm jdm commented Apr 15, 2020

     Running target/debug/deps/servo_config-58794619d9a9dcda
running 0 tests
test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out
     Running target/debug/deps/opts-1dd24dda002febdf
running 5 tests
test test_file_path_parsing ... ok
test test_argument_parsing_special ... ok
test test_argument_parsing ... ok
test test_parse_pref_from_command_line ... ok
error: test failed, to rerun pass '-p servo_config --test opts'
Caused by:
  process didn't exit successfully: `/Users/worker/tasks/task_1586964343/repo/target/debug/deps/opts-1dd24dda002febdf` (signal: 11, SIGSEGV: invalid memory reference)
@jdm jdm mentioned this issue Apr 15, 2020
3 of 5 tasks complete
@jdm jdm changed the title Intermittent segfault in servo_config unit tests Intermittent segfault in servo_config/net unit tests Apr 15, 2020
@jdm
Copy link
Member Author

@jdm jdm commented Apr 15, 2020


     Running target/debug/deps/main-1d400c975982a6d8

running 425 tests
test cookie::test_cookie_secure_prefix ... ok
test cookie::test_default_path ... ok
test cookie::fn_cookie_constructor ... ok
test cookie::test_cookie_host_prefix ... ok
test cookie::test_path_match ... ok
test cookie::test_domain_match ... ok
test cookie::test_cookie_eviction_expired ... ok
test cookie::test_secure_cookies_eviction_non_http_source ... ok
test cookie::test_secure_cookies_eviction ... ok
test cookie::test_insecure_cookies_cannot_evict_secure_cookie ... ok
test cookie_http_state::test_0001 ... ok
test cookie_http_state::test_0002 ... ok
test cookie_http_state::test_0004 ... ok
test cookie::test_sort_order ... ok
test cookie_http_state::test_0007 ... ok
test cookie_http_state::test_0008 ... ok
test cookie_http_state::test_0005 ... ok
test cookie_http_state::test_0009 ... ok
test cookie_http_state::test_0010 ... ok
test cookie_http_state::test_0011 ... ok
test cookie_http_state::test_0012 ... ok
test cookie_http_state::test_0013 ... ok
test cookie::test_cookie_eviction_all_secure_new_nonsecure ... ok
test cookie::test_cookie_eviction_all_secure_one_nonsecure ... ok
test cookie_http_state::test_0017 ... ok
test cookie_http_state::test_0018 ... ok
test cookie_http_state::test_0019 ... ok
test cookie_http_state::test_0014 ... ok
test cookie_http_state::test_0015 ... ok
test cookie_http_state::test_0016 ... ok
test cookie_http_state::test_0023 ... ok
test cookie_http_state::test_0024 ... ok
test cookie_http_state::test_0025 ... ok
test cookie_http_state::test_0026 ... ok
test cookie_http_state::test_0027 ... ok
test cookie_http_state::test_0020 ... ok
test cookie_http_state::test_0028 ... ok
test cookie_http_state::test_attribute0001 ... ok
test cookie_http_state::test_attribute0002 ... ok
test cookie_http_state::test_attribute0004 ... ok
test cookie_http_state::test_attribute0003 ... ok
test cookie_http_state::test_0021 ... ok
test cookie_http_state::test_attribute0005 ... ok
test cookie_http_state::test_attribute0006 ... ok
test cookie_http_state::test_attribute0007 ... ok
test cookie_http_state::test_attribute0008 ... ok
test cookie_http_state::test_attribute0009 ... ok
test cookie_http_state::test_attribute0010 ... ok
test cookie_http_state::test_attribute0011 ... ok
test cookie_http_state::test_attribute0012 ... ok
test cookie_http_state::test_attribute0013 ... ok
test cookie_http_state::test_attribute0014 ... ok
test cookie_http_state::test_attribute0015 ... ok
test cookie_http_state::test_attribute0016 ... ok
test cookie_http_state::test_attribute0017 ... ok
test cookie_http_state::test_attribute0018 ... ok
test cookie_http_state::test_attribute0019 ... ok
test cookie_http_state::test_attribute0020 ... ok
test cookie_http_state::test_attribute0021 ... ok
test cookie_http_state::test_attribute0022 ... ok
test cookie_http_state::test_attribute0023 ... ok
test cookie_http_state::test_attribute0025 ... ok
test cookie_http_state::test_attribute0024 ... ok
test cookie_http_state::test_attribute0026 ... ok
test cookie_http_state::test_charset0001 ... ok
test cookie_http_state::test_charset0002 ... ok
test cookie_http_state::test_charset0003 ... ok
test cookie_http_state::test_0022 ... ok
test cookie_http_state::test_charset0004 ... ok
test cookie_http_state::test_chromium0001 ... ok
test cookie_http_state::test_chromium0002 ... ok
test cookie::test_cookie_eviction_all_nonsecure_new_nonsecure ... ok
test cookie_http_state::test_chromium0003 ... ok
test cookie::test_cookie_eviction_all_nonsecure_new_secure ... ok
test cookie_http_state::test_chromium0004 ... ok
test cookie_http_state::test_chromium0005 ... ok
test cookie_http_state::test_chromium0006 ... ok
test cookie_http_state::test_chromium0009 ... ok
test cookie_http_state::test_chromium0007 ... ok
test cookie_http_state::test_chromium0010 ... ok
test cookie_http_state::test_chromium0008 ... ok
test cookie_http_state::test_chromium0011 ... ok
test cookie_http_state::test_chromium0012 ... ok
test cookie_http_state::test_chromium0013 ... ok
test cookie_http_state::test_chromium0015 ... ok
test cookie_http_state::test_chromium0014 ... ok
test cookie_http_state::test_chromium0018 ... ok
test cookie_http_state::test_chromium0016 ... ok
test cookie_http_state::test_chromium0017 ... ok
test cookie_http_state::test_chromium0019 ... ok
test cookie_http_state::test_chromium0021 ... ok
test cookie_http_state::test_comma0001 ... ok
test cookie_http_state::test_comma0002 ... ok
test cookie_http_state::test_comma0003 ... ok
test cookie_http_state::test_comma0004 ... ok
test cookie_http_state::test_comma0005 ... ok
test cookie_http_state::test_comma0006 ... ok
test cookie_http_state::test_comma0007 ... ok
test cookie_http_state::test_domain0001 ... ok
test cookie_http_state::test_domain0002 ... ok
test cookie_http_state::test_domain0003 ... ok
test cookie_http_state::test_domain0004 ... ok
test cookie_http_state::test_domain0006 ... ok
test cookie_http_state::test_domain0005 ... ok
test cookie_http_state::test_domain0007 ... ok
test cookie_http_state::test_domain0008 ... ok
test cookie_http_state::test_domain0009 ... ok
test cookie_http_state::test_domain0010 ... ok
test cookie_http_state::test_domain0011 ... ok
test cookie_http_state::test_domain0013 ... ok
test cookie_http_state::test_domain0012 ... ok
test cookie_http_state::test_domain0014 ... ok
test cookie_http_state::test_domain0016 ... ok
test cookie_http_state::test_domain0015 ... ok
test cookie_http_state::test_domain0017 ... ok
test cookie_http_state::test_domain0018 ... ok
test cookie_http_state::test_domain0021 ... ok
test cookie_http_state::test_domain0019 ... ok
test cookie_http_state::test_domain0020 ... ok
test cookie_http_state::test_domain0024 ... ok
test cookie_http_state::test_domain0023 ... ok
test cookie_http_state::test_domain0022 ... ok
test cookie_http_state::test_domain0026 ... ok
test cookie_http_state::test_domain0025 ... ok
test cookie_http_state::test_domain0027 ... ok
test cookie_http_state::test_domain0028 ... ok
test cookie_http_state::test_domain0029 ... ok
test cookie_http_state::test_domain0031 ... ok
test cookie_http_state::test_domain0034 ... ok
test cookie_http_state::test_domain0033 ... ok
test cookie_http_state::test_domain0035 ... ok
test cookie_http_state::test_domain0036 ... ok
test cookie_http_state::test_domain0037 ... ok
test cookie_http_state::test_domain0038 ... ok
test cookie_http_state::test_domain0039 ... ok
test cookie_http_state::test_domain0040 ... ok
test cookie_http_state::test_domain0041 ... ok
test cookie_http_state::test_domain0042 ... ok
test cookie_http_state::test_mozilla0004 ... ok
test cookie_http_state::test_mozilla0006 ... ok
test cookie_http_state::test_mozilla0008 ... ok
error: test failed, to rerun pass '-p net --test main'

Caused by:
  process didn't exit successfully: `/Users/worker/tasks/task_1586952403/repo/target/debug/deps/main-1d400c975982a6d8` (signal: 11, SIGSEGV: invalid memory reference)
@jdm jdm mentioned this issue Apr 15, 2020
4 of 4 tasks complete
@jdm
Copy link
Member Author

@jdm jdm commented Apr 15, 2020

     Running target/debug/deps/profile_tests-ddfa5d5551725555
running 6 tests
test time::time_profiler_stats_test ... ok
test time::time_profiler_smoke_test ... ok
error: test failed, to rerun pass '-p profile_tests --lib'
Caused by:
  process didn't exit successfully: `/Users/worker/tasks/task_1586980907/repo/target/debug/deps/profile_tests-ddfa5d5551725555` (signal: 11, SIGSEGV: invalid memory reference)

I think this must be a regression from the latest rustc upgrade, since that's the first time we observed a unit test segfault.

@jdm jdm changed the title Intermittent segfault in servo_config/net unit tests Intermittent segfault in servo_config/net/profile unit tests Apr 15, 2020
@jdm
Copy link
Member Author

@jdm jdm commented Apr 17, 2020

Running mach test-unit locally on my mac yields:

     Running target/debug/deps/main-1b00b47eb6a70d9e

running 425 tests
test cookie::test_domain_match ... ok
test cookie::test_default_path ... ok
test cookie::test_path_match ... ok
test cookie_http_state::test_0004 ... ok
test cookie::test_cookie_host_prefix ... ok
test cookie::test_sort_order ... ok
test cookie::fn_cookie_constructor ... ok
test cookie_http_state::test_0005 ... ok
test cookie_http_state::test_0001 ... ok
test cookie_http_state::test_0002 ... ok
test cookie::test_cookie_secure_prefix ... ok
test cookie_http_state::test_0007 ... ok
test cookie_http_state::test_0010 ... ok
test cookie_http_state::test_0008 ... ok
test cookie::test_secure_cookies_eviction_non_http_source ... ok
test cookie_http_state::test_0011 ... ok
test cookie::test_insecure_cookies_cannot_evict_secure_cookie ... ok
test cookie::test_secure_cookies_eviction ... ok
test cookie_http_state::test_0012 ... ok
test cookie_http_state::test_0009 ... ok
test cookie::test_cookie_eviction_expired ... ok
test cookie::test_cookie_eviction_all_secure_new_nonsecure ... ok
test cookie::test_cookie_eviction_all_nonsecure_new_nonsecure ... ok
test cookie::test_cookie_eviction_all_secure_one_nonsecure ... ok
test cookie_http_state::test_0013 ... ok
test cookie::test_cookie_eviction_all_nonsecure_new_secure ... ok
test cookie_http_state::test_0015 ... ok
test cookie_http_state::test_0014 ... ok
test cookie_http_state::test_0019 ... ok
test cookie_http_state::test_0017 ... ok
test cookie_http_state::test_0016 ... ok
test cookie_http_state::test_0018 ... ok
test cookie_http_state::test_0021 ... ok
test cookie_http_state::test_0023 ... ok
test cookie_http_state::test_0020 ... ok
test cookie_http_state::test_0025 ... ok
test cookie_http_state::test_0026 ... ok
test cookie_http_state::test_0024 ... ok
test cookie_http_state::test_0027 ... ok
test cookie_http_state::test_0022 ... ok
test cookie_http_state::test_0028 ... ok
test cookie_http_state::test_attribute0001 ... ok
test cookie_http_state::test_attribute0002 ... ok
test cookie_http_state::test_attribute0005 ... ok
test cookie_http_state::test_attribute0003 ... ok
test cookie_http_state::test_attribute0004 ... ok
test cookie_http_state::test_attribute0006 ... ok
test cookie_http_state::test_attribute0007 ... ok
test cookie_http_state::test_attribute0008 ... ok
test cookie_http_state::test_attribute0010 ... ok
test cookie_http_state::test_attribute0009 ... ok
test cookie_http_state::test_attribute0011 ... ok
test cookie_http_state::test_attribute0012 ... ok
test cookie_http_state::test_attribute0013 ... ok
test cookie_http_state::test_attribute0014 ... ok
test cookie_http_state::test_attribute0016 ... ok
test cookie_http_state::test_attribute0015 ... ok
test cookie_http_state::test_attribute0019 ... ok
test cookie_http_state::test_attribute0017 ... ok
test cookie_http_state::test_attribute0018 ... ok
test cookie_http_state::test_attribute0020 ... ok
test cookie_http_state::test_attribute0021 ... ok
test cookie_http_state::test_attribute0022 ... ok
test cookie_http_state::test_attribute0024 ... ok
test cookie_http_state::test_attribute0023 ... ok
test cookie_http_state::test_attribute0025 ... ok
test cookie_http_state::test_attribute0026 ... ok
test cookie_http_state::test_charset0001 ... ok
test cookie_http_state::test_charset0002 ... ok
test cookie_http_state::test_charset0003 ... ok
test cookie_http_state::test_charset0004 ... ok
test cookie_http_state::test_chromium0001 ... ok
test cookie_http_state::test_chromium0003 ... ok
test cookie_http_state::test_chromium0002 ... ok
test cookie_http_state::test_chromium0005 ... ok
test cookie_http_state::test_chromium0004 ... ok
test cookie_http_state::test_chromium0006 ... ok
test cookie_http_state::test_chromium0009 ... ok
test cookie_http_state::test_chromium0008 ... ok
test cookie_http_state::test_chromium0010 ... ok
test cookie_http_state::test_chromium0007 ... ok
test cookie_http_state::test_chromium0012 ... ok
test cookie_http_state::test_chromium0011 ... ok
test cookie_http_state::test_chromium0013 ... ok
test cookie_http_state::test_chromium0014 ... ok
test cookie_http_state::test_chromium0015 ... ok
test cookie_http_state::test_chromium0016 ... ok
test cookie_http_state::test_chromium0018 ... ok
test cookie_http_state::test_chromium0021 ... ok
test cookie_http_state::test_chromium0017 ... ok
test cookie_http_state::test_chromium0019 ... ok
test cookie_http_state::test_comma0001 ... ok
test cookie_http_state::test_comma0002 ... ok
test cookie_http_state::test_comma0003 ... ok
test cookie_http_state::test_comma0005 ... ok
test cookie_http_state::test_comma0004 ... ok
test cookie_http_state::test_comma0006 ... ok
test cookie_http_state::test_comma0007 ... ok
test cookie_http_state::test_domain0001 ... ok
test cookie_http_state::test_domain0003 ... ok
test cookie_http_state::test_domain0002 ... ok
test cookie_http_state::test_domain0004 ... ok
test cookie_http_state::test_domain0010 ... ok
test cookie_http_state::test_domain0006 ... ok
test cookie_http_state::test_domain0007 ... ok
test cookie_http_state::test_domain0008 ... ok
test cookie_http_state::test_domain0005 ... ok
test cookie_http_state::test_domain0009 ... ok
test cookie_http_state::test_domain0013 ... ok
test cookie_http_state::test_domain0011 ... ok
test cookie_http_state::test_domain0014 ... ok
test cookie_http_state::test_domain0015 ... ok
test cookie_http_state::test_domain0012 ... ok
test cookie_http_state::test_domain0016 ... ok
test cookie_http_state::test_domain0017 ... ok
test cookie_http_state::test_domain0018 ... ok
test cookie_http_state::test_domain0021 ... ok
test cookie_http_state::test_domain0019 ... ok
test cookie_http_state::test_domain0020 ... ok
test cookie_http_state::test_domain0024 ... ok
test cookie_http_state::test_domain0022 ... ok
test cookie_http_state::test_domain0025 ... ok
test cookie_http_state::test_domain0023 ... ok
test cookie_http_state::test_domain0027 ... ok
test cookie_http_state::test_domain0026 ... ok
test cookie_http_state::test_domain0029 ... ok
test cookie_http_state::test_domain0031 ... ok
test cookie_http_state::test_domain0028 ... ok
test cookie_http_state::test_domain0034 ... ok
test cookie_http_state::test_domain0033 ... ok
test cookie_http_state::test_domain0035 ... ok
test cookie_http_state::test_domain0037 ... ok
test cookie_http_state::test_domain0038 ... ok
test cookie_http_state::test_domain0036 ... ok
test cookie_http_state::test_domain0042 ... ok
test cookie_http_state::test_domain0041 ... ok
test cookie_http_state::test_domain0040 ... ok
test cookie_http_state::test_domain0039 ... ok
test cookie_http_state::test_mozilla0004 ... ok
test cookie_http_state::test_mozilla0006 ... ok
test cookie_http_state::test_mozilla0014 ... ok
test cookie_http_state::test_mozilla0011 ... ok
test cookie_http_state::test_mozilla0012 ... ok
test cookie_http_state::test_mozilla0015 ... ok
test cookie_http_state::test_mozilla0008 ... ok
test cookie_http_state::test_mozilla0016 ... ok
test cookie_http_state::test_mozilla0017 ... ok
test cookie_http_state::test_name0001 ... ok
test cookie_http_state::test_name0002 ... ok
test cookie_http_state::test_name0003 ... ok
test cookie_http_state::test_name0004 ... ok
test cookie_http_state::test_name0005 ... ok
test cookie_http_state::test_name0006 ... ok
test cookie_http_state::test_name0007 ... ok
test cookie_http_state::test_name0008 ... ok
test cookie_http_state::test_name0009 ... ok
test cookie_http_state::test_name0011 ... ok
test cookie_http_state::test_name0010 ... ok
test cookie_http_state::test_name0012 ... ok
test cookie_http_state::test_name0013 ... ok
test cookie_http_state::test_name0014 ... ok
test cookie_http_state::test_name0015 ... ok
test cookie_http_state::test_name0016 ... ok
test cookie_http_state::test_name0017 ... ok
test cookie_http_state::test_name0019 ... ok
test cookie_http_state::test_name0018 ... ok
test cookie_http_state::test_name0020 ... ok
test cookie_http_state::test_name0022 ... ok
test cookie_http_state::test_name0023 ... ok
test cookie_http_state::test_name0021 ... ok
test cookie_http_state::test_name0025 ... ok
test cookie_http_state::test_name0024 ... ok
test cookie_http_state::test_name0026 ... ok
test cookie_http_state::test_name0028 ... ok
test cookie_http_state::test_name0029 ... ok
test cookie_http_state::test_name0027 ... ok
test cookie_http_state::test_name0031 ... ok
test cookie_http_state::test_name0032 ... ok
test cookie_http_state::test_name0033 ... ok
test cookie_http_state::test_name0030 ... ok
test cookie_http_state::test_optional_domain0030 ... ok
test cookie_http_state::test_optional_domain0041 ... ok
test cookie_http_state::test_optional_domain0043 ... ok
test cookie_http_state::test_optional_domain0042 ... ok
test cookie_http_state::test_path0001 ... ok
test cookie_http_state::test_path0002 ... ok
test cookie_http_state::test_path0003 ... ok
test cookie_http_state::test_ordering0001 ... ok
test cookie_http_state::test_path0005 ... ok
test cookie_http_state::test_path0004 ... ok
test cookie_http_state::test_path0006 ... ok
test cookie_http_state::test_path0007 ... ok
test cookie_http_state::test_path0008 ... ok
test cookie_http_state::test_path0009 ... ok
test cookie_http_state::test_path0011 ... ok
test cookie_http_state::test_path0010 ... ok
test cookie_http_state::test_path0012 ... ok
test cookie_http_state::test_path0013 ... ok
test cookie_http_state::test_path0014 ... ok
test cookie_http_state::test_path0015 ... ok
test cookie_http_state::test_path0016 ... ok
test cookie_http_state::test_path0017 ... ok
test cookie_http_state::test_path0018 ... ok
test cookie_http_state::test_path0019 ... ok
test cookie_http_state::test_path0020 ... ok
test cookie_http_state::test_path0021 ... ok
test cookie_http_state::test_path0022 ... ok
test cookie_http_state::test_path0023 ... ok
test cookie_http_state::test_path0024 ... ok
test cookie_http_state::test_path0025 ... ok
test cookie_http_state::test_path0027 ... ok
test cookie_http_state::test_path0026 ... ok
test cookie_http_state::test_path0028 ... ok
test cookie_http_state::test_path0030 ... ok
test cookie_http_state::test_path0031 ... ok
test cookie_http_state::test_path0029 ... ok
test cookie_http_state::test_path0032 ... ok
test cookie_http_state::test_value0001 ... ok
test cookie_http_state::test_value0002 ... ok
test cookie_http_state::test_value0003 ... ok
test cookie_http_state::test_value0004 ... ok
test cookie_http_state::test_value0005 ... ok
test cookie_http_state::test_value0006 ... ok
test data_loader::base64 ... ok
test data_loader::empty_invalid ... ok
test data_loader::base64_charset ... ok
test data_loader::plain ... ok
test data_loader::plain_charset ... ok
test data_loader::base64_ct ... ok
test data_loader::plain_ct ... ok
test data_loader::plain_only_charset ... ok
test data_loader::plain_html ... ok
test fetch::test_fetch_blob ... ok
test fetch::test_fetch_aboutblank ... ok
test fetch::test_fetch_async_returns_complete_response ... ok
test fetch::test_cors_preflight_fetch_network_error ... ok
test fetch::test_cors_preflight_fetch ... ok
test fetch::test_fetch_bogus_scheme ... ok
test fetch::test_fetch_ftp ... ok
test fetch::test_cors_preflight_cache_fetch ... ok
test fetch::test_fetch_on_bad_port_is_network_error ... ok
test fetch::test_fetch_redirect_count_ceiling ... ok
test fetch::test_fetch_redirect_count_failure ... ok
test fetch::test_fetch_response_body_matches_const_message ... ok
test fetch::test_fetch_response_is_basic_filtered ... ok
test fetch::test_fetch_blocked_nosniff ... ok
test fetch::test_fetch_response_is_cors_filtered ... ok
test fetch::test_fetch_response_is_not_network_error ... ok
test fetch::test_fetch_response_is_opaque_filtered ... ok
test fetch::test_fetch_response_is_opaque_redirect_filtered ... ok
test fetch::test_fetch_with_hsts ... ok
test fetch::test_fetch_with_devtools ... ok
test fetch::test_fetch_with_sri_network_error ... ok
test fetch::test_fetch_with_sri_sucess ... ok
test fetch::test_load_adds_host_to_hsts_list_when_url_is_https ... ok
test file_loader::load_htm ... ok
test fetch::test_file ... ok
test hsts::test_base_domain_in_entries_map ... ok
test hsts::test_hsts_entry_cant_be_created_with_ipv4_address_as_host ... ok
test hsts::test_hsts_entry_cant_be_created_with_ipv6_address_as_host ... ok
test hsts::test_hsts_entry_is_expired_when_it_has_reached_its_max_age ... ok
test hsts::test_hsts_entry_is_not_expired_when_it_has_no_max_age ... ok
test hsts::test_hsts_entry_is_not_expired_when_it_has_no_timestamp ... ok
test hsts::test_hsts_list_with_exact_domain_entry_is_is_host_secure ... ok
test hsts::test_hsts_list_with_expired_entry_is_not_is_host_secure ... ok
test hsts::test_hsts_list_with_no_entries_map_does_not_is_host_secure ... ok
test hsts::test_hsts_list_with_subdomain_when_host_is_exact_match_is_is_host_secure ... ok
test hsts::test_hsts_list_with_subdomain_when_host_is_not_a_subdomain_is_not_is_host_secure ... ok
test hsts::test_hsts_list_with_subdomain_when_include_subdomains_is_false_is_not_is_host_secure ... ok
test hsts::test_hsts_list_with_subdomain_when_include_subdomains_is_true_is_is_host_secure ... ok
test hsts::test_parse_hsts_preload_should_decode_host_and_includes_subdomains ... ok
test hsts::test_parse_hsts_preload_should_return_none_when_json_contains_no_entries_map_key ... ok
test hsts::test_parse_hsts_preload_should_return_none_when_json_invalid ... ok
test filemanager_thread::test_filemanager ... ok
test hsts::test_push_entry_to_hsts_list_should_add_an_entry ... ok
test hsts::test_push_entry_to_hsts_list_should_not_add_subdomains_whose_superdomain_is_already_matched ... ok
test hsts::test_push_entry_to_hsts_list_should_not_create_duplicate_entry ... ok
test hsts::test_push_entry_to_hsts_list_should_update_existing_domain_entrys_include_subdomains ... ok
test hsts::test_push_entry_with_0_max_age_evicts_entry_from_list ... ok
test hsts::test_push_multiple_entrie_to_hsts_list_should_add_them_all ... ok
test http_cache::test_refreshing_resource_sets_done_chan_the_appropriate_value ... ok
test fetch::test_fetch_with_local_urls_only ... ok
test fetch::test_opaque_filtered_fetch_async_returns_complete_response ... ok
test fetch::test_opaque_redirect_filtered_fetch_async_returns_complete_response ... ok
test http_loader::test_determine_request_referrer_longer_than_4k ... ok
test http_loader::test_determine_request_referrer_shorter_than_4k ... ok
test http_loader::test_auth_ui_needs_www_auth ... ok
test http_loader::test_cookie_set_with_httponly_should_not_be_available_using_getcookiesforurl ... ok
test http_loader::test_if_auth_creds_not_in_url_but_in_cache_it_sets_it ... ok
main-1b00b47eb6a70d9e(52992,0x70000f26b000) malloc: Incorrect checksum for freed object 0x7faf7726bc80: probably modified after being freed.
Corrupt value: 0x400007faf76cdc00
main-1b00b47eb6a70d9e(52992,0x70000f26b000) malloc: *** set a breakpoint in malloc_error_break to debug
error: test failed, to rerun pass '-p net --test main'

Caused by:
  process didn't exit successfully: `/Users/joshmatthews/src/servo-master/target/debug/deps/main-1b00b47eb6a70d9e` (signal: 6, SIGABRT: process abort signal)
@jdm
Copy link
Member Author

@jdm jdm commented Apr 17, 2020

I can reproduce that result with ./mach test-unit -p net cookie_http_state::test_, but not any more specific subset of the cookie_http_state tests.

Running /Users/joshmatthews/src/servo-master/target/debug/deps/main-1b00b47eb6a70d9e 'cookie_http_state::test_' does not reproduce the crash.

@jdm
Copy link
Member Author

@jdm jdm commented Apr 17, 2020

oshmatthews@joshmatthews-fcmd6r servo-master % ./mach test-unit -p net cookie_http_state::test_0
    Finished test [unoptimized + debuginfo] target(s) in 1.28s
     Running target/debug/deps/net-e4de2f5be412a77e

running 0 tests

test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out

     Running target/debug/deps/main-1b00b47eb6a70d9e

running 28 tests
test cookie_http_state::test_0004 ... ok
test cookie_http_state::test_0005 ... ok
test cookie_http_state::test_0012 ... ok
test cookie_http_state::test_0009 ... ok
test cookie_http_state::test_0010 ... ok
test cookie_http_state::test_0011 ... ok
test cookie_http_state::test_0013 ... ok
test cookie_http_state::test_0007 ... ok
test cookie_http_state::test_0008 ... ok
test cookie_http_state::test_0002 ... ok
test cookie_http_state::test_0001 ... ok
test cookie_http_state::test_0014 ... ok
test cookie_http_state::test_0015 ... ok
test cookie_http_state::test_0016 ... ok
test cookie_http_state::test_0017 ... ok
test cookie_http_state::test_0018 ... ok
test cookie_http_state::test_0023 ... ok
test cookie_http_state::test_0019 ... ok
test cookie_http_state::test_0025 ... ok
test cookie_http_state::test_0021 ... ok
test cookie_http_state::test_0024 ... ok
test cookie_http_state::test_0020 ... ok
test cookie_http_state::test_0026 ... ok
test cookie_http_state::test_0027 ... ok
test cookie_http_state::test_0028 ... ok
test cookie_http_state::test_0022 ... ok
error: test failed, to rerun pass '-p net --test main'

Caused by:
  process didn't exit successfully: `/Users/joshmatthews/src/servo-master/target/debug/deps/main-1b00b47eb6a70d9e 'cookie_http_state::test_0'` (signal: 11, SIGSEGV: invalid memory reference)
@jdm
Copy link
Member Author

@jdm jdm commented Apr 17, 2020

Aha! When I run with cargo test directly without RUST_BACKTRACE=1, it works. When I add RUST_BACKTRACE=1, it segfaults.

@jdm
Copy link
Member Author

@jdm jdm commented Apr 17, 2020

CARGO_TARGET_X86_64_APPLE_DARWIN_RUNNER=lldb yields:

(lldb) bt
error: need to add support for DW_TAG_base_type '()' encoded with DW_ATE = 0x7, bit_size = 0
* thread #15, name = 'fetch::test_fetch_blocked_nosniff', stop reason = signal SIGABRT
  * frame #0: 0x00007fff6962d7fa libsystem_kernel.dylib`__pthread_kill + 10
    frame #1: 0x00007fff696eabc1 libsystem_pthread.dylib`pthread_kill + 432
    frame #2: 0x00007fff695b4a1c libsystem_c.dylib`abort + 120
    frame #3: 0x00007fff696aa647 libsystem_malloc.dylib`malloc_vreport + 548
    frame #4: 0x00007fff696ad40e libsystem_malloc.dylib`malloc_report + 151
    frame #5: 0x0000000102f7874c libcrypto.1.1.dylib`ASN1_OBJECT_free + 96
    frame #6: 0x0000000102f868c2 libcrypto.1.1.dylib`asn1_primitive_free + 165
    frame #7: 0x0000000102f8680e libcrypto.1.1.dylib`asn1_template_free + 150
    frame #8: 0x0000000102f8660f libcrypto.1.1.dylib`asn1_item_embed_free + 240
    frame #9: 0x0000000102f86519 libcrypto.1.1.dylib`ASN1_item_free + 25
    frame #10: 0x00000001030919bd libcrypto.1.1.dylib`OPENSSL_sk_pop_free + 45
    frame #11: 0x00000001030ac2bf libcrypto.1.1.dylib`x509_name_ex_free + 50
    frame #12: 0x0000000102f8680e libcrypto.1.1.dylib`asn1_template_free + 150
    frame #13: 0x0000000102f8660f libcrypto.1.1.dylib`asn1_item_embed_free + 240
    frame #14: 0x0000000102f8680e libcrypto.1.1.dylib`asn1_template_free + 150
    frame #15: 0x0000000102f8660f libcrypto.1.1.dylib`asn1_item_embed_free + 240
    frame #16: 0x0000000102f86519 libcrypto.1.1.dylib`ASN1_item_free + 25
    frame #17: 0x00000001030a26df libcrypto.1.1.dylib`X509_OBJECT_free + 14
    frame #18: 0x00000001030919bd libcrypto.1.1.dylib`OPENSSL_sk_pop_free + 45
    frame #19: 0x00000001030a268c libcrypto.1.1.dylib`X509_STORE_free + 149
    frame #20: 0x0000000102f0b842 libssl.1.1.dylib`SSL_CTX_free + 187
    frame #21: 0x0000000100a6bf14 main-1b00b47eb6a70d9e`_$LT$openssl..ssl..SslContext$u20$as$u20$core..ops..drop..Drop$GT$::drop::hba7e9c0f79959c24(self=0x0000000138055498) at lib.rs:241:26
    frame #22: 0x0000000100a739c1 main-1b00b47eb6a70d9e`core::ptr::drop_in_place::h9fdf93e911d76276((null)=0x0000000138055498) at mod.rs:177:1
    frame #23: 0x0000000100694e91 main-1b00b47eb6a70d9e`core::ptr::drop_in_place::h516819aa23c49407((null)=0x0000000138055498) at mod.rs:177:1
    frame #24: 0x0000000100691185 main-1b00b47eb6a70d9e`core::ptr::drop_in_place::h279a166a20c04830((null)=0x0000000138055498) at mod.rs:177:1
    frame #25: 0x000000010068fb1e main-1b00b47eb6a70d9e`core::ptr::drop_in_place::h194859b6a700bb23((null)=0x0000000138055410) at mod.rs:177:1
    frame #26: 0x0000000100542d7b main-1b00b47eb6a70d9e`alloc::sync::Arc$LT$T$GT$::drop_slow::h8bf2e8e50615c2f3(self=0x000000013a0a2270) at sync.rs:768:9
    frame #27: 0x00000001006a2ee0 main-1b00b47eb6a70d9e`_$LT$alloc..sync..Arc$LT$T$GT$$u20$as$u20$core..ops..drop..Drop$GT$::drop::h180f5df23f7fbb8e(self=0x000000013a0a2270) at sync.rs:1280:13
    frame #28: 0x000000010069ba21 main-1b00b47eb6a70d9e`core::ptr::drop_in_place::haa3967f9e4a82f93((null)=0x000000013a0a2270) at mod.rs:177:1
    frame #29: 0x00000001006a2466 main-1b00b47eb6a70d9e`core::ptr::drop_in_place::hfe3853aa011b87ea((null)=0x000000013a0a21d8) at mod.rs:177:1
    frame #30: 0x000000010068f895 main-1b00b47eb6a70d9e`core::ptr::drop_in_place::h18c9ddc56b142472((null)=0x000000013a0a2010) at mod.rs:177:1
    frame #31: 0x00000001005431eb main-1b00b47eb6a70d9e`alloc::sync::Arc$LT$T$GT$::drop_slow::hee41df675b85c2fc(self=0x000070000eaa8a70) at sync.rs:768:9
    frame #32: 0x00000001006a3420 main-1b00b47eb6a70d9e`_$LT$alloc..sync..Arc$LT$T$GT$$u20$as$u20$core..ops..drop..Drop$GT$::drop::hf701c75d620a1664(self=0x000070000eaa8a70) at sync.rs:1280:13
    frame #33: 0x0000000100696a41 main-1b00b47eb6a70d9e`core::ptr::drop_in_place::h6b5afb494cb7284e((null)=0x000070000eaa8a70) at mod.rs:177:1
    frame #34: 0x0000000100698cb5 main-1b00b47eb6a70d9e`core::ptr::drop_in_place::h87d55f71c972ea8e((null)=0x000070000eaa8a70) at mod.rs:177:1
    frame #35: 0x000000010045765f main-1b00b47eb6a70d9e`main::fetch::h612b8c66c67880af(request=0x000070000eaa8d40, dc=Option<crossbeam_channel::channel::Sender<devtools_traits::DevtoolsControlMsg>> @ 0x000070000eaa8b30) at main.rs:122:1
    frame #36: 0x0000000100035f70 main-1b00b47eb6a70d9e`main::fetch::test_fetch_blocked_nosniff::test_nosniff_request::h8ef5d5fabe857795(destination=Style, mime=<unavailable>, should_error=false) at fetch.rs:849:30
    frame #37: 0x0000000100035c6d main-1b00b47eb6a70d9e`main::fetch::test_fetch_blocked_nosniff::ha906351299839a69 at fetch.rs:863:9
    frame #38: 0x000000010035ba21 main-1b00b47eb6a70d9e`main::fetch::test_fetch_blocked_nosniff::_$u7b$$u7b$closure$u7d$$u7d$::h3a358368d54c6e90((null)=0x000070000eaa96a0) at fetch.rs:824:1
    frame #39: 0x00000001003c7871 main-1b00b47eb6a70d9e`core::ops::function::FnOnce::call_once::h8147abcd36d8d5f9((null)=closure-0 @ 0x000070000eaa96a0, (null)=<unavailable>) at function.rs:232:5
    frame #40: 0x0000000100464cde main-1b00b47eb6a70d9e`_$LT$alloc..boxed..Box$LT$F$GT$$u20$as$u20$core..ops..function..FnOnce$LT$A$GT$$GT$::call_once::h0deb1b0fc1dbd0ec at boxed.rs:1008:9 [opt]
    frame #41: 0x000000010047dff2 main-1b00b47eb6a70d9e`test::run_test::run_test_inner::_$u7b$$u7b$closure$u7d$$u7d$::h3b48a7529c920b1e [inlined] _$LT$std..panic..AssertUnwindSafe$LT$F$GT$$u20$as$u20$core..ops..function..FnOnce$LT$$LP$$RP$$GT$$GT$::call_once::h61b2ec20c5109d81 at panic.rs:318:9 [opt]
    frame #42: 0x000000010047dfe7 main-1b00b47eb6a70d9e`test::run_test::run_test_inner::_$u7b$$u7b$closure$u7d$$u7d$::h3b48a7529c920b1e [inlined] std::panicking::try::do_call::h48faae00d351e418 at panicking.rs:331 [opt]
    frame #43: 0x000000010047dfe7 main-1b00b47eb6a70d9e`test::run_test::run_test_inner::_$u7b$$u7b$closure$u7d$$u7d$::h3b48a7529c920b1e [inlined] std::panicking::try::h24e9b390c01c011d at panicking.rs:274 [opt]
    frame #44: 0x000000010047dfe7 main-1b00b47eb6a70d9e`test::run_test::run_test_inner::_$u7b$$u7b$closure$u7d$$u7d$::h3b48a7529c920b1e [inlined] std::panic::catch_unwind::h34bd500b2620ba2d at panic.rs:394 [opt]
    frame #45: 0x000000010047dfe7 main-1b00b47eb6a70d9e`test::run_test::run_test_inner::_$u7b$$u7b$closure$u7d$$u7d$::h3b48a7529c920b1e [inlined] test::run_test_in_process::h757c7d3fc794a205 at lib.rs:541 [opt]
    frame #46: 0x000000010047dfcd main-1b00b47eb6a70d9e`test::run_test::run_test_inner::_$u7b$$u7b$closure$u7d$$u7d$::h3b48a7529c920b1e at lib.rs:450 [opt]
    frame #47: 0x000000010045819b main-1b00b47eb6a70d9e`std::sys_common::backtrace::__rust_begin_short_backtrace::hc5612fcc772ec3a0 at backtrace.rs:130:5 [opt]
    frame #48: 0x000000010045d605 main-1b00b47eb6a70d9e`core::ops::function::FnOnce::call_once$u7b$$u7b$vtable.shim$u7d$$u7d$::h55fc4900f6de8c2b [inlined] std::thread::Builder::spawn_unchecked::_$u7b$$u7b$closure$u7d$$u7d$::_$u7b$$u7b$closure$u7d$$u7d$::h96cf155016494ce8 at mod.rs:475:17 [opt]
    frame #49: 0x000000010045d5e1 main-1b00b47eb6a70d9e`core::ops::function::FnOnce::call_once$u7b$$u7b$vtable.shim$u7d$$u7d$::h55fc4900f6de8c2b [inlined] _$LT$std..panic..AssertUnwindSafe$LT$F$GT$$u20$as$u20$core..ops..function..FnOnce$LT$$LP$$RP$$GT$$GT$::call_once::h27505d8b6ee371f6 at panic.rs:318 [opt]
    frame #50: 0x000000010045d5e1 main-1b00b47eb6a70d9e`core::ops::function::FnOnce::call_once$u7b$$u7b$vtable.shim$u7d$$u7d$::h55fc4900f6de8c2b [inlined] std::panicking::try::do_call::h47a4e726e9abdd6c at panicking.rs:331 [opt]
    frame #51: 0x000000010045d5e1 main-1b00b47eb6a70d9e`core::ops::function::FnOnce::call_once$u7b$$u7b$vtable.shim$u7d$$u7d$::h55fc4900f6de8c2b [inlined] std::panicking::try::hab05a0cabac53ec3 at panicking.rs:274 [opt]
    frame #52: 0x000000010045d5e1 main-1b00b47eb6a70d9e`core::ops::function::FnOnce::call_once$u7b$$u7b$vtable.shim$u7d$$u7d$::h55fc4900f6de8c2b [inlined] std::panic::catch_unwind::h43eb55ed87a18958 at panic.rs:394 [opt]
    frame #53: 0x000000010045d5e1 main-1b00b47eb6a70d9e`core::ops::function::FnOnce::call_once$u7b$$u7b$vtable.shim$u7d$$u7d$::h55fc4900f6de8c2b [inlined] std::thread::Builder::spawn_unchecked::_$u7b$$u7b$closure$u7d$$u7d$::hdaf10a1a8f4efe8b at mod.rs:474 [opt]
    frame #54: 0x000000010045d5a7 main-1b00b47eb6a70d9e`core::ops::function::FnOnce::call_once$u7b$$u7b$vtable.shim$u7d$$u7d$::h55fc4900f6de8c2b at function.rs:232 [opt]
    frame #55: 0x00000001010f591e main-1b00b47eb6a70d9e`_$LT$alloc..boxed..Box$LT$F$GT$$u20$as$u20$core..ops..function..FnOnce$LT$A$GT$$GT$::call_once::hecdbb9c30d98a58b at boxed.rs:1008:9 [opt]
    frame #56: 0x000000010110ed16 main-1b00b47eb6a70d9e`std::sys::unix::thread::Thread::new::thread_start::hf9d1de0ef4f27972 [inlined] _$LT$alloc..boxed..Box$LT$F$GT$$u20$as$u20$core..ops..function..FnOnce$LT$A$GT$$GT$::call_once::hf74b100e6b41c24e at boxed.rs:1008:9 [opt]
    frame #57: 0x000000010110ed0a main-1b00b47eb6a70d9e`std::sys::unix::thread::Thread::new::thread_start::hf9d1de0ef4f27972 at thread.rs:87 [opt]
    frame #58: 0x00007fff696eae65 libsystem_pthread.dylib`_pthread_start + 148
    frame #59: 0x00007fff696e683b libsystem_pthread.dylib`thread_start + 15
@jdm
Copy link
Member Author

@jdm jdm commented Apr 17, 2020

When I comment out the non-cookie tests, I get this:

(lldb) bt
error: need to add support for DW_TAG_base_type '()' encoded with DW_ATE = 0x7, bit_size = 0
* thread #2, name = 'cookie_http_state::test_0003', stop reason = EXC_BAD_ACCESS (code=EXC_I386_GPFLT)
  * frame #0: 0x00000001009d9363 main-1b00b47eb6a70d9e`__rdos_macho_add + 2163
    frame #1: 0x00000001009d89f6 main-1b00b47eb6a70d9e`__rdos_backtrace_initialize + 278
    frame #2: 0x00000001009d7d82 main-1b00b47eb6a70d9e`fileline_initialize + 450
    frame #3: 0x00000001009d7e48 main-1b00b47eb6a70d9e`__rdos_backtrace_syminfo + 40
    frame #4: 0x00000001009ca0e7 main-1b00b47eb6a70d9e`backtrace::symbolize::libbacktrace::resolve::hcc871f0097c8f941 at libbacktrace.rs:469:9 [opt]
    frame #5: 0x00000001009bf4ae main-1b00b47eb6a70d9e`std::sys_common::backtrace::_print_fmt::_$u7b$$u7b$closure$u7d$$u7d$::h04ec0782efdcee29 [inlined] backtrace::symbolize::resolve_frame_unsynchronized::hba26211508b36c12 at mod.rs:178:5 [opt]
    frame #6: 0x00000001009bf499 main-1b00b47eb6a70d9e`std::sys_common::backtrace::_print_fmt::_$u7b$$u7b$closure$u7d$$u7d$::h04ec0782efdcee29 at backtrace.rs:85 [opt]
    frame #7: 0x00000001009c9d73 main-1b00b47eb6a70d9e`backtrace::backtrace::libunwind::trace::trace_fn::h77dd7ab0161a5642 [inlined] core::ops::function::impls::_$LT$impl$u20$core..ops..function..FnMut$LT$A$GT$$u20$for$u20$$RF$mut$u20$F$GT$::call_mut::h34f1eafe565fe3eb at function.rs:274:13 [opt]
    frame #8: 0x00000001009c9d65 main-1b00b47eb6a70d9e`backtrace::backtrace::libunwind::trace::trace_fn::h77dd7ab0161a5642 at libunwind.rs:98 [opt]
    frame #9: 0x00007fff6971d196 libunwind.dylib`_Unwind_Backtrace + 78
    frame #10: 0x00000001009bee1f main-1b00b47eb6a70d9e`_$LT$std..sys_common..backtrace.._print..DisplayBacktrace$u20$as$u20$core..fmt..Display$GT$::fmt::h83a99d78cf4229b7 [inlined] backtrace::backtrace::libunwind::trace::had648e2fbd5baff3 at libunwind.rs:86:5 [opt]
    frame #11: 0x00000001009bee0c main-1b00b47eb6a70d9e`_$LT$std..sys_common..backtrace.._print..DisplayBacktrace$u20$as$u20$core..fmt..Display$GT$::fmt::h83a99d78cf4229b7 [inlined] backtrace::backtrace::trace_unsynchronized::h123bfd9e29636f4c at mod.rs:66 [opt]
    frame #12: 0x00000001009bee0c main-1b00b47eb6a70d9e`_$LT$std..sys_common..backtrace.._print..DisplayBacktrace$u20$as$u20$core..fmt..Display$GT$::fmt::h83a99d78cf4229b7 [inlined] std::sys_common::backtrace::_print_fmt::hce179f23c4f5c393 at backtrace.rs:78 [opt]
    frame #13: 0x00000001009bed00 main-1b00b47eb6a70d9e`_$LT$std..sys_common..backtrace.._print..DisplayBacktrace$u20$as$u20$core..fmt..Display$GT$::fmt::h83a99d78cf4229b7 at backtrace.rs:59 [opt]
    frame #14: 0x00000001009e62ee main-1b00b47eb6a70d9e`core::fmt::write::h9545e2012c2d2eb4 at mod.rs:1069:17 [opt]
    frame #15: 0x0000000100047cf9 main-1b00b47eb6a70d9e`std::io::Write::write_fmt::haee458fa32321e01 at mod.rs:1504:15 [opt]
    frame #16: 0x00000001009b511c main-1b00b47eb6a70d9e`std::io::impls::_$LT$impl$u20$std..io..Write$u20$for$u20$alloc..boxed..Box$LT$W$GT$$GT$::write_fmt::h2b9d2ecff2f92d81 at impls.rs:156:9 [opt]
    frame #17: 0x00000001009c0daa main-1b00b47eb6a70d9e`std::panicking::default_hook::_$u7b$$u7b$closure$u7d$$u7d$::hf5665c6594b55b5b [inlined] std::sys_common::backtrace::_print::hf4999160a12fd2c6 at backtrace.rs:62:5 [opt]
    frame #18: 0x00000001009c0d59 main-1b00b47eb6a70d9e`std::panicking::default_hook::_$u7b$$u7b$closure$u7d$$u7d$::hf5665c6594b55b5b [inlined] std::sys_common::backtrace::print::hc17d0474289f326c at backtrace.rs:49 [opt]
    frame #19: 0x00000001009c0d4d main-1b00b47eb6a70d9e`std::panicking::default_hook::_$u7b$$u7b$closure$u7d$$u7d$::hf5665c6594b55b5b at panicking.rs:198 [opt]
    frame #20: 0x00000001009c0a88 main-1b00b47eb6a70d9e`std::panicking::default_hook::h540393422f4bdc1e at panicking.rs:215:9 [opt]
    frame #21: 0x00000001009c1378 main-1b00b47eb6a70d9e`std::panicking::rust_panic_with_hook::he4213098bbe43565 at panicking.rs:511:17 [opt]
    frame #22: 0x00000001009c0f42 main-1b00b47eb6a70d9e`rust_begin_unwind at panicking.rs:419:5 [opt]
    frame #23: 0x00000001009f779b main-1b00b47eb6a70d9e`std::panicking::begin_panic_fmt::h7e80461e98bda879 at panicking.rs:373:5 [opt]
    frame #24: 0x00000001000053c1 main-1b00b47eb6a70d9e`main::cookie_http_state::test_0003::h5bf6b625e9ab9e30 at cookie_http_state.rs:65:5
    frame #25: 0x0000000100036f91 main-1b00b47eb6a70d9e`main::cookie_http_state::test_0003::_$u7b$$u7b$closure$u7d$$u7d$::hc3c2e4c99997b565((null)=0x000070000fdc76a0) at cookie_http_state.rs:56:1
    frame #26: 0x0000000100041fd1 main-1b00b47eb6a70d9e`core::ops::function::FnOnce::call_once::h5bf0210157d606d9((null)=closure-0 @ 0x000070000fdc76a0, (null)=<unavailable>) at function.rs:232:5
    frame #27: 0x0000000100053d3e main-1b00b47eb6a70d9e`_$LT$alloc..boxed..Box$LT$F$GT$$u20$as$u20$core..ops..function..FnOnce$LT$A$GT$$GT$::call_once::h0deb1b0fc1dbd0ec at boxed.rs:1008:9 [opt]
    frame #28: 0x000000010006d052 main-1b00b47eb6a70d9e`test::run_test::run_test_inner::_$u7b$$u7b$closure$u7d$$u7d$::h3b48a7529c920b1e [inlined] _$LT$std..panic..AssertUnwindSafe$LT$F$GT$$u20$as$u20$core..ops..function..FnOnce$LT$$LP$$RP$$GT$$GT$::call_once::h61b2ec20c5109d81 at panic.rs:318:9 [opt]
    frame #29: 0x000000010006d047 main-1b00b47eb6a70d9e`test::run_test::run_test_inner::_$u7b$$u7b$closure$u7d$$u7d$::h3b48a7529c920b1e [inlined] std::panicking::try::do_call::h48faae00d351e418 at panicking.rs:331 [opt]
    frame #30: 0x000000010006d047 main-1b00b47eb6a70d9e`test::run_test::run_test_inner::_$u7b$$u7b$closure$u7d$$u7d$::h3b48a7529c920b1e [inlined] std::panicking::try::h24e9b390c01c011d at panicking.rs:274 [opt]
    frame #31: 0x000000010006d047 main-1b00b47eb6a70d9e`test::run_test::run_test_inner::_$u7b$$u7b$closure$u7d$$u7d$::h3b48a7529c920b1e [inlined] std::panic::catch_unwind::h34bd500b2620ba2d at panic.rs:394 [opt]
    frame #32: 0x000000010006d047 main-1b00b47eb6a70d9e`test::run_test::run_test_inner::_$u7b$$u7b$closure$u7d$$u7d$::h3b48a7529c920b1e [inlined] test::run_test_in_process::h757c7d3fc794a205 at lib.rs:541 [opt]
    frame #33: 0x000000010006d02d main-1b00b47eb6a70d9e`test::run_test::run_test_inner::_$u7b$$u7b$closure$u7d$$u7d$::h3b48a7529c920b1e at lib.rs:450 [opt]
    frame #34: 0x00000001000471fb main-1b00b47eb6a70d9e`std::sys_common::backtrace::__rust_begin_short_backtrace::hc5612fcc772ec3a0 at backtrace.rs:130:5 [opt]
    frame #35: 0x000000010004c665 main-1b00b47eb6a70d9e`core::ops::function::FnOnce::call_once$u7b$$u7b$vtable.shim$u7d$$u7d$::h55fc4900f6de8c2b [inlined] std::thread::Builder::spawn_unchecked::_$u7b$$u7b$closure$u7d$$u7d$::_$u7b$$u7b$closure$u7d$$u7d$::h96cf155016494ce8 at mod.rs:475:17 [opt]
    frame #36: 0x000000010004c641 main-1b00b47eb6a70d9e`core::ops::function::FnOnce::call_once$u7b$$u7b$vtable.shim$u7d$$u7d$::h55fc4900f6de8c2b [inlined] _$LT$std..panic..AssertUnwindSafe$LT$F$GT$$u20$as$u20$core..ops..function..FnOnce$LT$$LP$$RP$$GT$$GT$::call_once::h27505d8b6ee371f6 at panic.rs:318 [opt]
    frame #37: 0x000000010004c641 main-1b00b47eb6a70d9e`core::ops::function::FnOnce::call_once$u7b$$u7b$vtable.shim$u7d$$u7d$::h55fc4900f6de8c2b [inlined] std::panicking::try::do_call::h47a4e726e9abdd6c at panicking.rs:331 [opt]
    frame #38: 0x000000010004c641 main-1b00b47eb6a70d9e`core::ops::function::FnOnce::call_once$u7b$$u7b$vtable.shim$u7d$$u7d$::h55fc4900f6de8c2b [inlined] std::panicking::try::hab05a0cabac53ec3 at panicking.rs:274 [opt]
    frame #39: 0x000000010004c641 main-1b00b47eb6a70d9e`core::ops::function::FnOnce::call_once$u7b$$u7b$vtable.shim$u7d$$u7d$::h55fc4900f6de8c2b [inlined] std::panic::catch_unwind::h43eb55ed87a18958 at panic.rs:394 [opt]
    frame #40: 0x000000010004c641 main-1b00b47eb6a70d9e`core::ops::function::FnOnce::call_once$u7b$$u7b$vtable.shim$u7d$$u7d$::h55fc4900f6de8c2b [inlined] std::thread::Builder::spawn_unchecked::_$u7b$$u7b$closure$u7d$$u7d$::hdaf10a1a8f4efe8b at mod.rs:474 [opt]
    frame #41: 0x000000010004c607 main-1b00b47eb6a70d9e`core::ops::function::FnOnce::call_once$u7b$$u7b$vtable.shim$u7d$$u7d$::h55fc4900f6de8c2b at function.rs:232 [opt]
    frame #42: 0x00000001009b12ee main-1b00b47eb6a70d9e`_$LT$alloc..boxed..Box$LT$F$GT$$u20$as$u20$core..ops..function..FnOnce$LT$A$GT$$GT$::call_once::hecdbb9c30d98a58b at boxed.rs:1008:9 [opt]
    frame #43: 0x00000001009c8186 main-1b00b47eb6a70d9e`std::sys::unix::thread::Thread::new::thread_start::hf9d1de0ef4f27972 [inlined] _$LT$alloc..boxed..Box$LT$F$GT$$u20$as$u20$core..ops..function..FnOnce$LT$A$GT$$GT$::call_once::hf74b100e6b41c24e at boxed.rs:1008:9 [opt]
    frame #44: 0x00000001009c817a main-1b00b47eb6a70d9e`std::sys::unix::thread::Thread::new::thread_start::hf9d1de0ef4f27972 at thread.rs:87 [opt]
    frame #45: 0x00007fff696eae65 libsystem_pthread.dylib`_pthread_start + 148
    frame #46: 0x00007fff696e683b libsystem_pthread.dylib`thread_start + 15
@jdm
Copy link
Member Author

@jdm jdm commented Apr 17, 2020

The only change to the libbacktrace in use in libstd between the 3/16 rustc nightly and the 4/9 nightly is rust-lang/rust@64a8c8a#diff-1a7024d46c31d728a04d5e0cafd98df8 (based on https://github.com/rust-lang/rust/commits/3712e11a828af2eea273a3e7300115e65833fbc5/src/libstd/Cargo.toml).

@asajeffrey asajeffrey mentioned this issue Apr 17, 2020
3 of 3 tasks complete
bors-servo added a commit that referenced this issue Apr 18, 2020
Disable RUST_BACKTRACE in unit tests on macOS.

This works around #26192 which is a new relatively frequent intermittent crash on CI.
bors-servo added a commit that referenced this issue Apr 18, 2020
Disable RUST_BACKTRACE in unit tests on macOS.

This works around #26192 which is a new relatively frequent intermittent crash on CI.
@jdm
Copy link
Member Author

@jdm jdm commented Apr 18, 2020

We're still hitting this segfault in the opts tests after #26217:

running 5 tests
test test_file_path_parsing ... ok
test test_argument_parsing_special ... ok
test test_argument_parsing ... ok
test test_parse_pref_from_command_line ... ok
error: test failed, to rerun pass '-p servo_config --test opts'

Caused by:
  process didn't exit successfully: `/Users/worker/tasks/task_1587218886/repo/target/debug/deps/opts-1dd24dda002febdf` (signal: 11, SIGSEGV: invalid memory reference)
bors-servo added a commit that referenced this issue Apr 20, 2020
Only enable RUST_BACKTRACE in non-mac build environment on CI.

This should help work around #26192 and would explain why we're still seeing it on CI after #26217.
bors-servo added a commit that referenced this issue Apr 21, 2020
Only enable RUST_BACKTRACE in non-mac build environment on CI.

This should help work around #26192 and would explain why we're still seeing it on CI after #26217.
bors-servo added a commit that referenced this issue Apr 21, 2020
Only enable RUST_BACKTRACE in non-mac build environment on CI.

This should help work around #26192 and would explain why we're still seeing it on CI after #26217.
bors-servo added a commit that referenced this issue Apr 21, 2020
Only enable RUST_BACKTRACE in non-mac build environment on CI.

This should help work around #26192 and would explain why we're still seeing it on CI after #26217.
bors-servo added a commit that referenced this issue Apr 21, 2020
Only enable RUST_BACKTRACE in non-mac build environment on CI.

This should help work around #26192 and would explain why we're still seeing it on CI after #26217.
bors-servo added a commit that referenced this issue Apr 21, 2020
Only enable RUST_BACKTRACE in non-mac build environment on CI.

This should help work around #26192 and would explain why we're still seeing it on CI after #26217.
@jdm
Copy link
Member Author

@jdm jdm commented Apr 21, 2020

I have verified that the segfaults in profile and servo_config are also triggered by #[should_panic] tests. That just leaves the openssl segfault that I previously found.

@jdm
Copy link
Member Author

@jdm jdm commented Apr 21, 2020

In an attempt to make a testcase that is more palatable than "run servo's unit tests", I've successfully reproduced the crash by adding a panic to https://github.com/Kethku/neovide/blob/56cc29d47ccbff7cf823a738b3f7f4a31e8af26d/src/window.rs#L150.

@jdm
Copy link
Member Author

@jdm jdm commented Apr 21, 2020

@nicoabie
Copy link

@nicoabie nicoabie commented Jul 29, 2020

@jdm issue has been solved on rust, running test with rust backtrace does not segfault on latest master.

@jdm
Copy link
Member Author

@jdm jdm commented Jul 29, 2020

Good point!

@jdm jdm closed this Jul 29, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Linked pull requests

Successfully merging a pull request may close this issue.

None yet
2 participants
You can’t perform that action at this time.