Bug 21797 - [update candidate] drakxtools-17.88.1-1.mga6 (was: drakboot crashed)
Summary: [update candidate] drakxtools-17.88.1-1.mga6 (was: drakboot crashed)
Status: RESOLVED FIXED
Alias: None
Product: Mageia
Classification: Unclassified
Component: RPM Packages (show other bugs)
Version: 6
Hardware: x86_64 Linux
Priority: Normal normal
Target Milestone: ---
Assignee: QA Team
QA Contact:
URL:
Whiteboard: MGA6-32-OK MGA6-64-OK
Keywords: advisory, validated_update
Depends on:
Blocks:
 
Reported: 2017-10-01 18:05 CEST by Oron Feinerman
Modified: 2017-11-29 19:53 CET (History)
8 users (show)

See Also:
Source RPM: drakxtools-17.88.1-1.mga6
CVE:
Status comment:


Attachments

Description Oron Feinerman 2017-10-01 18:05:29 CEST
The "drakboot" program crashed. Drakbug-17.88 caught it.

Mageia control center -> "Set up boot system" on LXQt, trying to progress past first stage

undefined value for mandatory argument 'text' encountered at /usr/lib/libDrakX/ugtk3.pm line 1428.
	...propagated at /usr/libexec/drakboot line 49.
Perl's trace:
drakbug::bug_handler() called from /usr/libexec/drakboot:49

Theme name: Adwaita
Kernel version = 4.13.0-rc3
Distribution=Mageia release 6 (Official) for x86_64
CPU=AMD Ryzen 7 1700 Eight-Core Processor
Comment 1 Marja Van Waes 2017-10-01 20:44:19 CEST
Thanks for your report.

This should be fixed in drakxtools-17.88.1-1.mga6, which is in updates_testing, see also bug #19013: 
tv <tv> 17.88.1-1.mga6:
+ Revision: 1155222
- drakboot:
  o better read back config
  o fix undefined labels when eg: Xen is installed (mga#19014)
    drakboot crashed with "undefined value for mandatory argument 'text'"

The package still needs to be tested by QA team, before it'll be released as update for everyone.

Feel free to help test it.

@ Thierry,

Can this report be assigned to QA team with the following advisory?


Suggested advisory:
========================================

This update fixes drakboot crashes with "undefined value for mandatory argument 'text' encountered at ugtk3.pm" (mga#19014)

=========================================
    
List of 32bits packages:

drakx-finish-install-17.88.1-1.mga6.i586
drakxtools-17.88.1-1.mga6.i586
drakxtools-backend-17.88.1-1.mga6.i586
drakxtools-curses-17.88.1-1.mga6.i586
drakxtools-gtk2-compat-17.88.1-1.mga6.i586
drakxtools-http-17.88.1-1.mga6.i586
harddrake-17.88.1-1.mga6.i586
harddrake-ui-17.88.1-1.mga6.i586

List of 64bits packages:

drakx-finish-install-17.88.1-1.mga6.x86_64
drakxtools-17.88.1-1.mga6.x86_64
drakxtools-backend-17.88.1-1.mga6.x86_64
drakxtools-curses-17.88.1-1.mga6.x86_64
drakxtools-gtk2-compat-17.88.1-1.mga6.x86_64
drakxtools-http-17.88.1-1.mga6.x86_64
harddrake-17.88.1-1.mga6.x86_64
harddrake-ui-17.88.1-1.mga6.x86_64

Summary: drakboot crashed => [update candidate] drakxtools-17.88.1-1.mga6 (was: drakboot crashed)
CC: (none) => mageiatools, marja11
Assignee: bugsquad => thierry.vignaud
Source RPM: drakxtools-17.88-1.mga6 => drakxtools-17.88.1-1.mga6

Comment 2 Thierry Vignaud 2017-10-01 21:29:49 CEST
Sure
Marja Van Waes 2017-10-01 21:37:54 CEST

Assignee: thierry.vignaud => qa-bugs

Comment 3 Herman Viaene 2017-10-05 11:15:41 CEST
MGA6-32 on Asus A6000VM MATE
Selecting indicated packages draws in unexpected (for me) drak-installer-matchbox package.
Run drakboot, seems OK (never had the crash before anyway).
Rebooted the laptop and had unexpected behavior:
Th default selection was the option with the additional options instead of the regular Mageia 6. Navigated to the standard Mageia 6 (this laptop has also an M5 installation) and the boot process at first seemed normal. But after some time it came to ask for language, keyboard, country, define root password and a new user. My regular user was still there, so I cancelled this last dialogue. It all seemed a bit like starting up a live DVD. Starting contninued, but in the lower left corner of the screen there appeared a kind of tooltip saying "Starting Online", the rest was cut off.
At the end it started with my normal user, and all programs I installed are there, so not too bad, but I doubt this is the result we are aiming at.

CC: (none) => herman.viaene

Comment 4 Marja Van Waes 2017-10-05 16:27:58 CEST
@ Herman

drakx-finish-install is only needed on Live isos, its description is:

Description :
For OEM-like duplications, it allows at first boot:
- network configuration
- creating users
- setting root password
- choosing authentication

and it pulls in drakx-installer-matchbox, that's the window manager needed to to create the windows for those configuration steps.

It is not needed to test drakx-finish-install for this update, I only listed it because it belongs in the list of generated packages. Actually only the drakxtools* packages you have on your system need to be updated (and iinm harddrake* will then automatically be updated, too)

@ Bit Twister,

Since you filed bug #19014, which is fixed in cauldron and should be fixed by this update in Mageia 6.... would you have time to test this update on Mageia 6, or to explain Herman how to first reproduce the problem before installing this update? (All I know is that Xen needs to be installed, but Xen means nothing more to me than just "The basic tools for managing Xen virtual machines")

Cheers,
marja

CC: (none) => bittwister2
See Also: (none) => https://bugs.mageia.org/show_bug.cgi?id=19014

Comment 5 Thierry Vignaud 2017-10-05 16:43:36 CEST
yeah you should test using "urpmi --auto-select" :-)
especially here the bug fixes are mainly for drakboot
but thanks for the testing anyway :-)

@marja:
eventually, I would updated the advisory as:

Suggested advisory:
====================
This update fixes several issues with drakboot:
- it fixes a rare crash with "undefined value for mandatory argument 'text' encountered at ugtk3.pm", especially when having Xen installed and switching t (mga#19014)
- it should list all the entries from the grub2 configuration when in some cases it could not have missed somes when offering to pick the default one

CC: (none) => thierry.vignaud

Comment 6 Bit Twister 2017-10-05 19:20:44 CEST
(In reply to Marja van Waes from comment #4)
> 
> @ Bit Twister,
> 
> Since you filed bug #19014, which is fixed in cauldron and should be fixed
> by this update in Mageia 6.... 

Yeah, right. was still broke when marked fixed.

> would you have time to test this update on Mageia 6, 

Sure, it is a dead easy test. Results
$ cat ugtk3.txt
The "drakboot" program has crashed with the following error:

  undefined value for mandatory argument 'text' encountered at /usr/lib/libDrakX/ugtk3.pm line 1428.
        ...propagated at /usr/libexec/drakboot line 49.
  Perl's trace:
  drakbug::bug_handler() called from /usr/libexec/drakboot:49


> or to explain Herman how to first reproduce the problem before
> installing this update? (All I know is that Xen needs to be installed, but
> Xen means nothing more to me than just "The basic tools for managing Xen
> virtual machines")

I know nothing about any of that. I have a GPT partition table with a "MBR" install, with grub2 in the gui boot mode.
$ gdisk -l /dev/sda | grep EF
  10      1952563200      1953523711   469.0 MiB   EF02  bios_grub

bios_grub shows up in the Name column because I labeled all my partitions.

blkid -s device -s LABEL -s TYPE -s PARTLABEL | sort -V    # snippet follow:
/dev/sda8: LABEL="spare" TYPE="ext4" PARTLABEL="spare"
/dev/sda9: LABEL="vmguest" TYPE="ext4" PARTLABEL="vmguest"
/dev/sda10: PARTLABEL="bios_grub"


current test procedure:
as a user, click up a terminal
su - root
nohup xterm -fn 7x13 -fg black -bg SpringGreen3 -geom 175x5+20+0 -display :0.0 -e journalctl --no-hostname -fa --no-pager &

mcc &
Boot->Set up boot system
just click through the screens without changing anything.
Comment 7 Marja Van Waes 2017-10-05 19:34:33 CEST
(In reply to Bit Twister from comment #6)
> (In reply to Marja van Waes from comment #4)

Thanks for your reply and instructions :-)

> > 
> > Since you filed bug #19014, which is fixed in cauldron and should be fixed
> > by this update in Mageia 6.... 
> 
> Yeah, right. was still broke when marked fixed.

Still broken in cauldron, with drakxtools-17.90-1.mga7, or are you only referring to the fact that the fix wasn't immediately packaged ?

> > would you have time to test this update on Mageia 6, 
> 
> Sure, it is a dead easy test. Results
> $ cat ugtk3.txt
> The "drakboot" program has crashed with the following error:
> 
>   undefined value for mandatory argument 'text' encountered at
> /usr/lib/libDrakX/ugtk3.pm line 1428.
>         ...propagated at /usr/libexec/drakboot line 49.
>   Perl's trace:
>   drakbug::bug_handler() called from /usr/libexec/drakboot:49

And that result with both drakxtools-17.88-1.mga6 and with drakxtools-17.88.1-1.mga6 (the latter from updates_testing)?
Comment 8 Marja Van Waes 2017-10-05 19:49:26 CEST
(In reply to Marja van Waes from comment #7)
.
> 
> Still broken in cauldron, with drakxtools-17.90-1.mga7, or are you only
> referring to the fact that the fix wasn't immediately packaged ?
> 

Oops.... referring to that is impossible, because it _was_ immediately packaged
Comment 9 Bit Twister 2017-10-05 20:43:02 CEST
(In reply to Marja van Waes from comment #7)
> (In reply to Bit Twister from comment #6)
> > (In reply to Marja van Waes from comment #4)
> > > Since you filed bug #19014, which is fixed in cauldron and should be fixed
> > > by this update in Mageia 6.... 
> > 
> > Yeah, right. was still broke when marked fixed.
> 
> Still broken in cauldron, with drakxtools-17.90-1.mga7, or are you only
> referring to the fact that the fix wasn't immediately packaged ?

I am not planning to do any mga7 testing until the first dev iso is released.
Bug still here on Official Mageia 6. 
 
> > > would you have time to test this update on Mageia 6, 
> > 
> > Sure, it is a dead easy test.

> And that result with both drakxtools-17.88-1.mga6 and with
> drakxtools-17.88.1-1.mga6 (the latter from updates_testing)?

As I misunderstand your request; you had asked me to provide a test procedure and was the bug fixed on mga6. Test was performed on Official media only. My post install script does a urpmi.removemedia -y Debug Backport Testing


$ get_src_rpm drakboot
      Using         : /usr/bin/drakboot
      Installed rpm : drakxtools-curses-17.88-1.mga6
      Source rpm    : drakxtools-17.88-1.mga6.src.rpm
      Information   : http://mageia.org/
      Packager      : tmb <tmb>
      Summary       : The drakxtools (diskdrake, ...)
Comment 10 Marja Van Waes 2017-10-05 20:52:35 CEST
Thanks for the clarification, Bit Twister, and sorry for the confusion.

OK, so we still need someone to test drakxtools-17.88.1-1.mga6.
Comment 11 Marja Van Waes 2017-10-05 21:15:24 CEST
I think Herman's test on i586, in which he saw no regression in drakboot, is enough for that arch, because the bug was only seen on x86_64 systems.
Comment 12 Bit Twister 2017-10-07 22:12:28 CEST
(In reply to Marja van Waes from comment #10)
> Thanks for the clarification, Bit Twister, and sorry for the confusion.
> 
> OK, so we still need someone to test drakxtools-17.88.1-1.mga6.

Well a quick go/nogo test did not spit out any problems on an mga6 64 bit host and virtualbox guest with update of drakxtools. Note: list of updated packages does not match your comment #2 64 bit list

- drakxtools-17.88.1-1.mga6.x86_64
- drakxtools-backend-17.88.1-1.mga6.x86_64
- drakxtools-curses-17.88.1-1.mga6.x86_64
- harddrake-17.88.1-1.mga6.x86_64
- harddrake-ui-17.88.1-1.mga6.x86_64

I did try changing grub2 menu from gui to text, but still booted grub gui.
Guest had plasma, gnome, xfce DE's installed. host had only xfce and both were created using Mageia-6-x86_64-DVD.iso
Comment 13 Marja Van Waes 2017-10-08 00:35:15 CEST
(In reply to Marja van Waes from comment #11)
> I think Herman's test on i586, in which he saw no regression in drakboot, is
> enough for that arch, because the bug was only seen on x86_64 systems.

OK'ing for i586, now


(In reply to Bit Twister from comment #12)

> 
> Well a quick go/nogo test did not spit out any problems on an mga6 64 bit
> host and virtualbox guest with update of drakxtools. Note: list of updated
> packages does not match your comment #2 64 bit list
> 
> - drakxtools-17.88.1-1.mga6.x86_64
> - drakxtools-backend-17.88.1-1.mga6.x86_64
> - drakxtools-curses-17.88.1-1.mga6.x86_64
> - harddrake-17.88.1-1.mga6.x86_64
> - harddrake-ui-17.88.1-1.mga6.x86_64

Thanks. That's no problem, only updating what was present on your system was enough for this bug report.

> 
> I did try changing grub2 menu from gui to text, but still booted grub gui.

I have a vague memory of a user complaining that changing that with drakboot for grub2 didn't work, but fail to find a bug report. CC'ing barjac, who'll know if that was an already existing problem.

Good that drakboot didn't crash, though!


@ QA team committers

Just a reminder that Thiery's Advisory from comment #5 should be used :-)

Whiteboard: (none) => MGA6-32-OK
CC: (none) => zen25000

Comment 14 Barry Jackson 2017-10-09 01:25:30 CEST
(In reply to Marja van Waes from comment #13)

> > I did try changing grub2 menu from gui to text, but still booted grub gui.
> 
> I have a vague memory of a user complaining that changing that with drakboot
> for grub2 didn't work, but fail to find a bug report. CC'ing barjac, who'll
> know if that was an already existing problem.
> 

To be honest it's not something I recall, but testing here in Mga6 it does not work.

/etc/default/grub modified date was updated but the line:
GRUB_THEME=/boot/grub2/themes/maggy/theme.txt
was untouched.

To remove the graphical menu either that line should be commented or removed, or the grub2-mageia-theme package should be removed, either followed by update-grub2.
This is not happening.
Comment 15 Lewis Smith 2017-10-09 20:55:42 CEST
Prior to testing M6/64; trying to sort the wood from the trees...

The packages involved (from comments 1, 6, 12):
 drakxtools
 drakxtools-backend
 drakxtools-curses
 drakxtools-gtk2-compat
 drakxtools-http
 harddrake
 harddrake-ui

Procedure from comment 6:
------------------------
as a user, click up a terminal
su - root
nohup xterm -fn 7x13 -fg black -bg SpringGreen3 -geom 175x5+20+0 -display :0.0 -e journalctl --no-hostname -fa --no-pager &

mcc &
Boot->Set up boot system
just click through the screens without changing anything.

$ cat ugtk3.txt
The "drakboot" program has crashed with the following error:
  undefined value for mandatory argument 'text' encountered at /usr/lib/libDrakX/ugtk3.pm line 1428.
        ...propagated at /usr/libexec/drakboot line 49.
  Perl's trace:
  drakbug::bug_handler() called from /usr/libexec/drakboot:49
-------------------------------------------------------------
I do not think the problem about Grub grapical v text menu is the same thing. (Comments 12, 14). Shout if this is not the case.

Advisory to come from comment 5.

CC: (none) => lewyssmith

Comment 16 Lewis Smith 2017-11-02 10:25:16 CET
Trying M6/64 before the update, real EFI H/W
using the procedure above. It opens an xterm window showing journalctl output. There are only a couple of MCC 'clicks' to do. The '# mcc &' command O/P:

# Too late to run INIT block at /usr/lib/perl5/vendor_perl/5.22.2/x86_64-linux-thread-multi/Glib/Object/Introspection.pm line 257.
Ignore the following Glib::Object::Introspection & Gtk3 warnings
Subroutine Gtk3::main redefined at /usr/lib/perl5/vendor_perl/5.22.3/Gtk3.pm line 525.
"cannot run /usr/sbin/msecgui" since it is not installed [Security Level] at /usr/libexec/drakconf line 831.
Too late to run INIT block at /usr/lib/perl5/vendor_perl/5.22.2/x86_64-linux-thread-multi/Glib/Object/Introspection.pm line 257.
Ignore the following Glib::Object::Introspection & Gtk3 warnings
Subroutine Gtk3::main redefined at /usr/lib/perl5/vendor_perl/5.22.3/Gtk3.pm line 525.

 later twice:
Note: This output shows SysV services only and does not include native
      systemd services. SysV configuration data might be overridden by native
      systemd configuration.

      If you want to list systemd services use 'systemctl list-unit-files'.
      To see services enabled on particular target use
      'systemctl list-dependencies [target]'.

Failed to enable unit: No such file or directory
 Used ^C to stop it once MCC finished.

However, I could not find 'ugtk3.txt' anywhere, in user or root home.
Lost.
Comment 17 Bit Twister 2017-11-02 12:02:11 CET
> However, I could not find 'ugtk3.txt' anywhere, in user or root home.
> Lost.

Sorry for the confusion. I cut/pasted the error message from my xterm into the ugtk3.txt file and force of habit posted the command used to show results.
Comment 18 Bit Twister 2017-11-02 12:14:40 CET
(In reply to Lewis Smith from comment #16)
> Trying M6/64 before the update, real EFI H/W
> using the procedure above. It opens an xterm window showing journalctl
> output. There are only a couple of MCC 'clicks' to do. The '# mcc &' command
> O/P:
> 
> # Too late to run INIT block at
> /usr/lib/perl5/vendor_perl/5.22.2/x86_64-linux-thread-multi/Glib/Object/
> Introspection.pm line 257.
> Ignore the following Glib::Object::Introspection & Gtk3 warnings
> Subroutine Gtk3::main redefined at /usr/lib/perl5/vendor_perl/5.22.3/Gtk3.pm
> line 525.
> "cannot run /usr/sbin/msecgui" since it is not installed [Security Level] at
> /usr/libexec/drakconf line 831.
> Too late to run INIT block at
> /usr/lib/perl5/vendor_perl/5.22.2/x86_64-linux-thread-multi/Glib/Object/
> Introspection.pm line 257.
> Ignore the following Glib::Object::Introspection & Gtk3 warnings
> Subroutine Gtk3::main redefined at /usr/lib/perl5/vendor_perl/5.22.3/Gtk3.pm
> line 525.
> 
>  later twice:
> Note: This output shows SysV services only and does not include native
>       systemd services. SysV configuration data might be overridden by native
>       systemd configuration.
> 
>       If you want to list systemd services use 'systemctl list-unit-files'.
>       To see services enabled on particular target use
>       'systemctl list-dependencies [target]'.
> 
> Failed to enable unit: No such file or directory
>  Used ^C to stop it once MCC finished.
> 
> However, I could not find 'ugtk3.txt' anywhere, in user or root home.
> Lost.
Comment 19 Bit Twister 2017-11-02 12:17:32 CET
(In reply to Bit Twister from comment #18)

 
> > Failed to enable unit: No such file or directory
> >  Used ^C to stop it once MCC finished.
> > 
> > However, I could not find 'ugtk3.txt' anywhere, in user or root home.
> > Lost.

Just went through the test again. The message was cut from the pop message screen  not the terminal. 

Test procedure on mga7 cauldron did not produce the popup failure.
Lewis Smith 2017-11-05 14:08:31 CET

Keywords: (none) => advisory
CC: lewyssmith => (none)

Comment 20 Lewis Smith 2017-11-27 22:21:54 CET
Testing M6/64 AFTER the update:
- drakxtools-17.88.1-1.mga6.x86_64
- drakxtools-backend-17.88.1-1.mga6.x86_64
- drakxtools-curses-17.88.1-1.mga6.x86_64
- drakxtools-gtk2-compat-17.88.1-1.mga6.x86_64
- harddrake-17.88.1-1.mga6.x86_64
- harddrake-ui-17.88.1-1.mga6.x86_64

Without re-booting...

 # nohup xterm -fn 7x13 -fg black -bg SpringGreen3 -geom 175x5+20+0 -display :0.0 -e journalctl --no-hostname -fa --no-pager &
[1] 17315
[The Xterm output did not help me in any way].
 # nohup: ignoring input and appending output to 'nohup.out'
[which was empty at the end]

 # mcc &
[2] 17420
[Boot->Set up boot system
just click through the screens without changing anything.]
Just a couple of clicks required, went to end without grief. And with a little bit more output than previously (end of comment 16), which is a +ve sign:
...
Failed to enable unit: No such file or directory

Note: This output shows SysV services only and does not include native
      systemd services. SysV configuration data might be overridden by native
      systemd configuration.

      If you want to list systemd services use 'systemctl list-unit-files'.
      To see services enabled on particular target use
      'systemctl list-dependencies [target]'.
[2]+  Done                    mcc

I shall re-boot, and if nothing nasty happens, OK this tomorrow.

CC: (none) => lewyssmith

Lewis Smith 2017-11-28 08:59:41 CET

Whiteboard: MGA6-32-OK => MGA6-32-OK MGA6-64-OK
Keywords: (none) => validated_update
CC: (none) => sysadmin-bugs

Comment 21 Mageia Robot 2017-11-29 19:53:29 CET
An update for this issue has been pushed to the Mageia Updates repository.

https://advisories.mageia.org/MGAA-2017-0118.html

Status: NEW => RESOLVED
Resolution: (none) => FIXED


Note You need to log in before you can comment on or make changes to this bug.