dbus crash in ubuntu 14.04

Bug #1431857 reported by lemmuh on 2015-03-13
26
This bug affects 4 people
Affects Status Importance Assigned to Milestone
dell-recovery (Ubuntu)
Undecided
Unassigned
Trusty
Undecided
Unassigned
Vivid
Undecided
Unassigned

Bug Description

Open "Dell Recovery", click "Build OS Media", "Media Type" doesn't matter, click "Apply", and:

ERROR:dbus.connection:Unable to set arguments (None, b'/dev/sda3', 'A00', '/home/ddh/Downloads/ubuntu-14.04-amd64-dell_A00.iso') according to signature 'ssss': <class 'TypeError'>: Expected a string or unicode object
Traceback (most recent call last):
  File "/home/ddh/Downloads/dell-recovery_1.31/Dell/recovery_basic_gtk.py", line 180, in wizard_complete
    *args)
  File "/home/ddh/Downloads/dell-recovery_1.31/Dell/recovery_common.py", line 730, in dbus_sync_call_signal_wrapper
    dbus_iface.get_dbus_method(func)(*args, **kwargs)
  File "/usr/lib/python3/dist-packages/dbus/proxies.py", line 137, in __call__
    **keywords)
  File "/usr/lib/python3/dist-packages/dbus/connection.py", line 584, in call_async
    message.append(signature=signature, *args)
TypeError: Expected a string or unicode object

Mario Limonciello (superm1) wrote :

Can you confirm a few details:
1) Was this a factory installed system?
2) If so, was this the version of Dell Recovery included on your system?
3) What's the model # of the system on which this failure occurred?

On Tue, Mar 17, 2015 at 3:40 PM, Mario Limonciello <email address hidden> wrote:
> Can you confirm a few details:
> 1) Was this a factory installed system?

Indeed, this was a fresh from the factory system.

> 2) If so, was this the version of Dell Recovery included on your system?

Yes.

> 3) What's the model # of the system on which this failure occurred?

Dell Precision M3800.

lemmuh (lemmuh) wrote :

I should also note that the originally posted stack trace was the result of running an identically-versioned copy of dell-recovery that I downloaded to confirm what I was seeing with the factory-installed version. The stack traces were identical.

Mario Limonciello (superm1) wrote :

OK. Can you post your /var/log/dpkg.log? I'd like to check what got installed and removed in the factory process.

Mario Limonciello (superm1) wrote :

Here's a package that should fix the bug (and should have been installed from the factory image). Hopefully from your log we can make sense of what went wrong.

Launchpad Janitor (janitor) wrote :

Status changed to 'Confirmed' because the bug affects multiple users.

Changed in dell-recovery (Ubuntu):
status: New → Confirmed
acallan (acallan) wrote :

1) Factory installed.
2) I have applied all updates provided by the Software Updater; other than that, this is the version of Dell Recovery included on my system.
3) Dell Precision M3800.

dell-recovery 1.32~somerville6 was already installed, but I also tried the .deb attached to this bug report with no improvement.

My /var/log/dpkg.log is attached.

lemmuh (lemmuh) wrote :

Unfortunately my /var/log/dpkg.log is no longer available since I needed to use the system, so I proceeded with wiping it after coming up with an alternative recovery mechanism. Hopefully the log provided by acallan provides the information you need. Dell support actually provided me with a recovery ISO for this specific system (Precision M3800 + Ubuntu 14.04) in case anyone needs it.

Mario Limonciello (superm1) wrote :

@lemmuh, please don't post that ISO publicly. Anyone else who has this problem and we can't get it sorted out please contact Dell support and they'll share the ISO image to you.

@acallan:
I think this might be a side effect of an unexpected missing utility partition that we expected at factory install.

Can you please provide the output of this command:
# sudo lsblk -o name,mountpoint,label,size,uuid

Hopefully that will identify what's happening.

Here's a temporary fix that should get the media generated for you. Once I can see what partitions are on your system I'll know if it can be a permanent fix or not.

=== modified file '/usr/lib/python3/dist-packages/Dell/recovery_common.py'
--- /usr/lib/python3/dist-packages/Dell/recovery_common.py 2014-06-06 20:33:48 +0000
+++ /usr/lib/python3/dist-packages/Dell/recovery_common.py 2015-03-18 14:08:15 +0000
@@ -293,12 +293,12 @@
     if 'device' in utility:
         utility = utility['device']
     else:
- utility = None
+ utility = ''
     recovery = find_factory_partition_stats('rp')
     if 'device' in recovery:
         recovery = recovery['device']
     else:
- recovery = None
+ recovery = ''
     return (utility, recovery)

 def find_burners():

lemmuh (lemmuh) wrote :

On Wed, Mar 18, 2015 at 10:10 AM, Mario Limonciello <email address hidden> wrote:
> @lemmuh, please don't post that ISO publicly.

Of course, it wasn't my intention to make this publicly available.

Mario Limonciello (superm1) wrote :

OK thanks, just making sure :)

I'm also affected by this bug, also on a Dell Precision M3800 (new in February, 2015).

Here's my output from sudo lsblk -o name,mountpoint,label,size,uuid

$ sudo lsblk -o name,mountpoint,label,size,uuid
NAME MOUNTPOINT LABEL SIZE UUID
sda 477G
├─sda1 /boot/efi ESP 500M 604D-2C6E
├─sda2 DIAGS 40M B8A1-2902
├─sda3 /tmp/tmpbs853iqc OS 3G 1CA1-DD30
├─sda4 / 441.6G a52f8e05-cd2c-4327-9682-824ac0ebfa8d
└─sda5 [SWAP] 31.8G 9fbfde95-8da2-46ee-8f0a-45f86d186329

Thanks!

Mario Limonciello (superm1) wrote :

OK. Here's the correct fix then. It seems that one of our expected partitions labels has changed. If you apply this fix it should work properly. We'll work on getting it fixed in the Dell repository too.

=== modified file '/usr/lib/python3/dist-packages/Dell/recovery_common.py'
--- /usr/lib/python3/dist-packages/Dell/recovery_common.py 2015-03-18 17:03:47 +0000
+++ /usr/lib/python3/dist-packages/Dell/recovery_common.py 2015-03-18 17:04:57 +0000
@@ -77,7 +77,7 @@
                   'up.tgz' ,
                 ]

-UP_LABELS = [ 'dellutility' ]
+UP_LABELS = [ 'diags', 'dellutility' ]
 RP_LABELS = [ 'recovery', 'install', 'os' ]

 ## ##

Thanks, Mario!

Patch applied, recovery .iso successfully built :)

Also verified that that works.

Changed in dell-recovery (Ubuntu Trusty):
status: New → Confirmed
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package dell-recovery - 1.32

---------------
dell-recovery (1.32) vivid; urgency=low

  [ Mario Limonciello ]
  * change vendor check to check more variables and check for Wyse.
  * Fix swap check recipe. It was checking the wrong variable for size_gb.
  * Add a 7-day delayed popup when recovery media isn't created at OOBE.
    It will be launched at login if later than the 7th day.
  * If no UP or RP found send empty strings rather than None
  * Set default partition name to be DIAGS instead of DellUtility.
    (LP: #1431857)

  [ Steven Wu ]
  * Add support for selecting multiple FISH packages at a time.

  [ Shih-Yuan Lee (FourDollars) ]
  * Fix the progressbar issue when restoring the system from recovery
    partition. (LP: #1324342)
  * Disable network during the installation. (LP: #1309410)
  * Delete swap partition after disabled. (LP: #1284474)
  * Fix disk_layout misjudgement issue. (LP: #1324394)
  * If there is a Kylin overlay, set language to zh_CN.UTF-8. (LP: #1321607)
  * Increase the cushion of recovery partition up to 600mb.
  * Improve emergency scripts support.
  * Disable hibernate (S4) if RAM >= 4GB. (LP: #1284474)
  * Use /casper/vmlinuz.efi instead of /casper/vmlinuz in grub menu entries.
  * Fix no swap issue that makes no hibernate option. (LP: #1284474)
  * Improve isodevice support.
  * Manually install all matched DKMS packages instead of using autoinstall of
    ubuntu-drivers-common.
  * Add basic ubuntu-drivers autoinstall support and improve isodevice
    support.
  * udev/96-dell-recovery-partition.rules: Hide recovery partition.
    ubiquity/dell-bootstrap.py: Avoid some issues from UEFI BIOS.
  * Avoid some issues from UEFI BIOS.
  * Fix the partition string decoding issue that causes the language page
    missing issue and other issues about the recovery partition.
  * Fix the potential factory issue for UEFI BIOS.
  * Using `udevadm settle` to wait for the event queue to finish.
  * Some disk's logical sector size is smaller than physical sector size so
    that using 'optimal' alignment type to get better performance.
  * Avoid using mkpartfs of parted. (LP: #1309410)
  * Avoid using sleep_network in factory install. (LP: #1309410)
  * Fix the wrong calculation of memory size. (LP: #1284474)

  [ Shengyao Xue ]
  * We disabled Ethernet in phase 1 and 2 of installation, now enable it back.
    (LP: #1329148)

  [ Kai-Heng Feng ]
  * Force using utf-8 when writing grub menu. (LP: #1416280)
  * Add an additional size assertion when finding installation drive to avoid
    installing on non-disk persistent block device (e.g. Realtek rts5139.)
    (LP: #1401422)
  * Explicitly specify UTF-8 encoding when opening multilingual files.
    (LP: #1380900)
 -- Mario Limonciello <email address hidden> Wed, 09 Apr 2014 17:57:28 -0500

Changed in dell-recovery (Ubuntu Vivid):
status: Confirmed → Fix Released
acallan (acallan) wrote :

Applied the patch; it works for me also.

Will the fix also be made in 14.04? I plan to remain on LTS.

Thanks!

Mario Limonciello (superm1) wrote :

The fix for 14.04 will be coming via the Dell repository and factory
install. The dell-recovery in the Ubuntu repositories is a bit outdated,
so the newer version won't likely qualify for an SRU.

On Thu, Mar 19, 2015 at 11:05 AM Jonathan Byrne <email address hidden> wrote:

> Will the fix also be made in 14.04? I plan to remain on LTS.
>
> Thanks!
>
> --
> You received this bug notification because you are subscribed to dell-
> recovery in Ubuntu.
> https://bugs.launchpad.net/bugs/1431857
>
> Title:
> dbus crash in ubuntu 14.04
>
> To manage notifications about this bug go to:
> https://bugs.launchpad.net/ubuntu/+source/dell-recovery/+
> bug/1431857/+subscriptions
>

Mario Limonciello (superm1) wrote :

Anyone who comes to this bug and is hitting this issue on a Dell shipped system, it's been fixed by this package:

http://dell.archive.canonical.com/pool/public/d/dell-recovery/dell-recovery_1.33~somerville1_all.deb

It will come in via regular APT updates on Dell factory shipped systems.

Changed in dell-recovery (Ubuntu Trusty):
status: Confirmed → Won't Fix
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Duplicates of this bug

Other bug subscribers