microsoft / vscode-cpptools

Official repository for the Microsoft C/C++ extension for VS Code.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

v1.21.2 crashes on Linux ARM OS's

HKishere opened this issue · comments

Environment

  • OS and Version: linux(remote)
  • VS Code Version: 1.91.1(user setup)
  • C/C++ Extension Version: 1.21.2
  • If using SSH remote, specify OS of remote machine:
    Linux 4.4.38 #530 SMP PREEMPT Sat Aug 8 10:58:10 CST 2020 aarch64 aarch64 aarch64 GNU/Linux

Bug Summary and Steps to Reproduce

Bug Summary:

When I start vscode this affternoon,I found my C++extension cashed. it reboot for 3 times automatly, but cash after every time when it boot. and it print some log on output like this:

语言服务器崩溃。正在重新启动...  
Server process exited with signal SIGSEGV.

I installed the version v1.20.5 after that, and it work correctly. so it seem that v1.21.2 may got something wrong.

Configuration and Logs

All configurations is defualt

Other Extensions

No response

Additional context

No response

Can confirm, I have the exact same problem on Linux ARM remote machine
Linux 5.4.0-189-generic #209-Ubuntu SMP Fri Jun 7 14:05:34 UTC 2024 aarch64 aarch64 aarch64 GNU/Linux

It crashes repeatedly with the same output :

[Error - 2:41:51 PM] The language server crashed. Restarting...
[Error - 2:41:51 PM] Server process exited with signal SIGSEGV.

Same here, OS info:
Linux version 6.6.31+rpt-rpi-v8 (serge@raspberrypi.com) (gcc-12 (Debian 12.2.0-14) 12.2.0, GNU ld (GNU Binutils for Debian) 2.40) #1 SMP PREEMPT Debian 1:6.6.31-1+rpt1 (2024-05-29)

Hi, I am also experiencing a similar issue while running the C/C++ Extensions plugin ms-vscode.cpptools-extension-pack within a Dev Container with the OS information as follows
Linux 67f78b132126 6.6.32-linuxkit #1 SMP Thu Jun 13 14:13:01 UTC 2024 aarch64 aarch64 aarch64 GNU/Linux
I have gotten the call stack of the crashing cpptools process

msvc::base_channel_t::interface_from_context_helper(msvc::object_context_t const&, std::shared_ptr<msvc::base_interface_t> (*)(msvc::object_context_t const&, std::shared_ptr<msvc::channel_t> const&)) (Unknown Source:0)
void msvc::deserialize_interface<cpp_intellisense::server>(msvc::deserializer_t&, std::shared_ptr<cpp_intellisense::server>&) (Unknown Source:0)
cpp_intellisense::create_server(msvc::service_proxy_t&, std::shared_ptr<cpp_intellisense::server>&) (Unknown Source:0)
intellisense_client::create_server() (Unknown Source:0)
intellisense_client::init() (Unknown Source:0)
intellisense_client_manager::acquire_intellisense_client(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, acquire_intellisense_client_options const&, std::function<void (intellisense_client_reference&&)>&&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >*, std::function<bool ()> const&)::{lambda()#2}::operator()()::{lambda(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, bool, bool)#2}::operator()(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, bool, bool) const::{lambda(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::shared_ptr<workspace_folder_settings> const&, acquire_intellisense_client_options const&, std::shared_ptr<cpp_properties> const&, std::function<void (intellisense_client_reference&&)>&&)#1}::operator()(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::shared_ptr<workspace_folder_settings> const&, acquire_intellisense_client_options const&, std::shared_ptr<cpp_properties> const&, std::function<void (intellisense_client_reference&&)>&&) const::{lambda()#1}::operator()() const (Unknown Source:0)
msvc::thread_manager_t::do_work(unsigned int) (Unknown Source:0)
msvc::thread_helper_t::thread_entry(void*) (Unknown Source:0)
start (Unknown Source:0)
__clone (Unknown Source:0)

Thank you for reporting this issue. We are looking at the code in the callstack shared. @HKishere, @stfufane, @chrumck if you are also able to attach a debugger and share a callstack, that would help us confirm if you are all hitting the same issue.

If you can share any other information or logs related to what you were doing at the time of the crash, or if you are working on an open source project that we can clone, that can also help us in the investigation.

This error occurs whenever I open a .cpp file. The environment I am working in is an ubuntu dev container, and there are no issues on startup, but it errors when I open a .cpp source file. It also seems like all those who experience the issue are on aarch64 an ARM64 architecture.