Bug 1213997 - /usr/lib/YaST2/startup/YaST2.call: line 454: 4718 Segmentation fault (core dumped)
Summary: /usr/lib/YaST2/startup/YaST2.call: line 454: 4718 Segmentation fault (c...
Status: RESOLVED WORKSFORME
Alias: None
Product: openSUSE Distribution
Classification: openSUSE
Component: YaST2 (show other bugs)
Version: Leap 15.5
Hardware: x86-64 Other
: P5 - None : Normal (vote)
Target Milestone: ---
Assignee: E-mail List
QA Contact: Jiri Srain
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2023-08-04 15:46 UTC by Dominik Heidler
Modified: 2023-08-08 08:16 UTC (History)
1 user (show)

See Also:
Found By: ---
Services Priority:
Business Priority:
Blocker: ---
Marketing QA Status: ---
IT Deployment: ---


Attachments
screenshot from serial console (46.04 KB, image/png)
2023-08-04 15:46 UTC, Dominik Heidler
Details
y2logs.tar.xz (2.30 MB, application/x-xz)
2023-08-04 15:47 UTC, Dominik Heidler
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Dominik Heidler 2023-08-04 15:46:38 UTC
Created attachment 868636 [details]
screenshot from serial console

On 2nd stage yast during 15.5 installation, this error appears on the console.
The installation actually seems to be completed fine, as this error only seems to appear after yast finished, what it planned to do.

Hardware is a supermicro x86_64 server and console is IPMI sol.
Comment 1 Dominik Heidler 2023-08-04 15:47:26 UTC
Created attachment 868637 [details]
y2logs.tar.xz
Comment 2 Stefan Hundhammer 2023-08-07 08:37:47 UTC
Start and end of the y2log of this second stage:


2023-08-04 15:16:41 <1> openqaworker26(4705) [Ruby]
  bin/y2start(<main>):22 y2base called with
  ["installation", "--arg", "continue", "ncurses"]
...
...
2023-08-04 15:17:42 <1> openqaworker26(4705) [ncurses]
  NCurses.cc(~NCurses):145 Shutdown NCurses...

2023-08-04 15:17:42 <1> openqaworker26(4705) [ncurses]
  NCurses.cc(~NCurses):164 NCurses down

2023-08-04 15:17:42 <1> openqaworker26(4705) [Pkg]
  PkgFunctions.cc(~PkgFunctions):152 Releasing the repo manager...

2023-08-04 15:17:42 <1> openqaworker26(4705) [Pkg]
  PkgFunctions.cc(~PkgFunctions):159 Releasing the zypp pointer...

2023-08-04 15:17:42 <1> openqaworker26(4705) [Pkg]
  PkgFunctions.cc(~PkgFunctions):161 Zypp pointer released


That does not indicate a segfault or any other serious problem.


Yet in y2start.log, I see for the second stage:

Stage [call]: ================
Stage [call]: Starting YaST...
Stage [call]: ================
	|-- Allow big memory allocation: overcommit_memory=1
	|-- MODULE_NAME: installation
	|-- MODE_FLAGS:
	|-- MODULE_ARGS: --arg continue
	|-- MODE: ncurses
	|-- UI_ARGS:
	|-- QT_IM_MODULE: xim
Stage [call]: ===============
Stage [call]: YaST terminated
Stage [call]: ===============
	|-- Y2_EXIT_CODE: 139
	|-- YaST procedure ended successfully
	|-- Reset memory allocation: overcommit_memory=0
	|-- Creating hook script list: postSecondCall...
Stage [2]: Starting S09-cleanup...
Stage [2]: =======================
	|-- kill console with PID: 3808
	|-- Shutdown SSH daemon and network interfaces...
	|-- Stopping UTF-8 mode...
	|-- Creating hook script list: postSecondStage...


Notice exit code 139, i.e. 128 + 11, i.e. it terminated with a signal (>127), and the signal was #11, SIGSEGV.

% grep 'SIG.*11' /usr/include/asm/signal.h

#define SIGSEGV		11
Comment 3 Stefan Hundhammer 2023-08-07 08:54:04 UTC
On my machine, I see one more line in the y2log after a regular shutdown of YaST:

2023-08-03 21:27:15 <1> balrog(6329) [Pkg]
  PkgFunctions.cc(~PkgFunctions):161
  Zypp pointer released

2023-08-03 21:27:15 <1> balrog(6329) [Y2Ruby]
  binary/YRuby.cc(~YRuby):117
  Shutting down ruby interpreter.

It's hard to say what happens in between those two log lines without a full debug log. And it's unsure if that would give us more information since not every step during program shutdown is logged. We can only guess why it segfaulted at that stage. It might be a shutdown order problem, but those are very hard to track down.

But since you didn't observe any bad effects because of this, for the time being let's just take note that this happened at least once.
Comment 4 Oliver Kurz 2023-08-07 13:02:56 UTC
@Dominik I know that you and me saw the issue reproducibly. Can you provide proper "Steps to reproduce", at best an openQA test scenario showing the problem?
Comment 6 Stefan Hundhammer 2023-08-08 08:16:16 UTC
Since libzypp did not catch the signal and did not log a backtrace, we can only guess that this happened after that part of libzypp was already shut down. But that also doesn't really tell us much.

If this is a new problem and somebody feels like spending a lot of time on it, bisecting the changes since the last working version and the first non-working one would be an option; if this were about a nuclear powerplant or some similar life-or-death scenario. But since that is not the case, I don't see a reason to go to such extremes. It does shut down, it gets almost to the regular end; and then there is a segfault which speeds up the shutdown. That's not nice, but it's also not a serious problem.