Bug 2023120 - [abrt] ffado: updateValues(): saffire_base.py:105:updateValues:TypeError: setValue(self, int): argument 1 has unexpected type 'dbus.Double'
Summary: [abrt] ffado: updateValues(): saffire_base.py:105:updateValues:TypeError: set...
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: libffado
Version: 35
Hardware: x86_64
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Nils Philippsen
QA Contact: Fedora Extras Quality Assurance
URL: https://retrace.fedoraproject.org/faf...
Whiteboard: abrt_hash:738102fe23fbfba2b629089bb23...
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2021-11-14 21:52 UTC by wedmer
Modified: 2022-04-01 04:50 UTC (History)
2 users (show)

Fixed In Version: libffado-2.4.5-1.fc35
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2022-04-01 04:50:55 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)
File: backtrace (1.31 KB, text/plain)
2021-11-14 21:53 UTC, wedmer
no flags Details
File: cpuinfo (2.47 KB, text/plain)
2021-11-14 21:53 UTC, wedmer
no flags Details
File: environ (2.60 KB, text/plain)
2021-11-14 21:53 UTC, wedmer
no flags Details
File: mountinfo (2.92 KB, text/plain)
2021-11-14 21:53 UTC, wedmer
no flags Details
File: namespaces (172 bytes, text/plain)
2021-11-14 21:53 UTC, wedmer
no flags Details
File: open_fds (2.75 KB, text/plain)
2021-11-14 21:53 UTC, wedmer
no flags Details

Description wedmer 2021-11-14 21:52:57 UTC
Version-Release number of selected component:
ffado-2.4.4-5.fc35

Additional info:
reporter:       libreport-2.15.2
cgroup:         0::/user.slice/user-1000.slice/user/app.slice/app-gnome-ffado.org\x2dffadomixer-6530.scope
cmdline:        /usr/bin/python3 /usr/bin/ffado-mixer
crash_function: updateValues
exception_type: TypeError
executable:     /usr/bin/ffado-mixer
interpreter:    python3-3.10.0-1.fc35.i686
kernel:         5.14.16-301.fc35.x86_64
runlevel:       N 5
type:           Python3
uid:            1000

Truncated backtrace:
saffire_base.py:105:updateValues:TypeError: setValue(self, int): argument 1 has unexpected type 'dbus.Double'

Traceback (most recent call last):
  File "/usr/lib/python3.10/site-packages/ffado/ffado/panelmanager.py", line 460, in updatePanels
    self.addPanel(idx)
  File "/usr/lib/python3.10/site-packages/ffado/ffado/panelmanager.py", line 339, in addPanel
    mixerwidget.initValues()
  File "/usr/lib/python3.10/site-packages/ffado/ffado/mixer/saffire.py", line 152, in initValues
    self.selectCorrectMode()
  File "/usr/lib/python3.10/site-packages/ffado/ffado/mixer/saffire.py", line 93, in selectCorrectMode
    self.small.initValues()
  File "/usr/lib/python3.10/site-packages/ffado/ffado/mixer/saffire_base.py", line 137, in initValues
    self.updateValues()
  File "/usr/lib/python3.10/site-packages/ffado/ffado/mixer/saffire.py", line 641, in updateValues
    SaffireMixerBase.updateValues(self)
  File "/usr/lib/python3.10/site-packages/ffado/ffado/mixer/saffire_base.py", line 105, in updateValues
    ctrl.setValue(vol)
TypeError: setValue(self, int): argument 1 has unexpected type 'dbus.Double'

Local variables in innermost frame:
self: <ffado.mixer.saffire.SaffireLEMixerSmall object at 0x7fb36566e5f0>
ctrl: <PyQt5.QtWidgets.QSlider object at 0x7fb35cf9a440>
info: ['/Mixer/LEMix96', 0, 4]
vol: dbus.Double(15521.0)

Comment 1 wedmer 2021-11-14 21:53:00 UTC
Created attachment 1841724 [details]
File: backtrace

Comment 2 wedmer 2021-11-14 21:53:01 UTC
Created attachment 1841725 [details]
File: cpuinfo

Comment 3 wedmer 2021-11-14 21:53:02 UTC
Created attachment 1841726 [details]
File: environ

Comment 4 wedmer 2021-11-14 21:53:03 UTC
Created attachment 1841727 [details]
File: mountinfo

Comment 5 wedmer 2021-11-14 21:53:04 UTC
Created attachment 1841728 [details]
File: namespaces

Comment 6 wedmer 2021-11-14 21:53:06 UTC
Created attachment 1841729 [details]
File: open_fds

Comment 7 Nils Philippsen 2021-11-27 22:38:29 UTC
Hi,

I experienced similar (but not the same) tracebacks with my own interface (Focusrite Saffire Pro40) and they all seem to boil down to implicit conversions from floats/doubles to integers in python3-qt5 which were deprecated yet supported in version 5.14, but this support seems to have been removed.

I'm in a conversation with FFADO upstream to get this resolved, but any additional information is helpful: the exact places where these tracebacks happen seems to differ depending on the hardware being used, yours seems to be a Focusrite Saffire LE, is that correct? If so, it would be good to find out where things need to be tweaked on your system to get ffado-mixer running again.

However, sending comments "asynchronously" back and forth in a Bugzilla ticket is a less than ideal way to do this, are you available for "synchronous", direct communication? Good would be e.g. a video conference, e.g. with an accompanying shared terminal session to tweak your installation of ffado.

Please let me know if this would work for you.

Comment 8 wedmer 2021-11-28 00:02:55 UTC
(In reply to Nils Philippsen from comment #7)
> However, sending comments "asynchronously" back and forth in a Bugzilla
> ticket is a less than ideal way to do this, are you available for
> "synchronous", direct communication? Good would be e.g. a video conference,
> e.g. with an accompanying shared terminal session to tweak your installation
> of ffado.
> 
> Please let me know if this would work for you.

Unfortunately I haven't much free time for "synchronous" communication. Anyway you can contact me directly via mail to get other ways for communication.
Also I'll try to make my own patch when I'll get my hands on that machine again (probably couple days later).

Comment 9 Nils Philippsen 2021-11-28 14:40:08 UTC
Works for me -- any real time communication wouldn't help much unless you have access to the machine in question anyway. Without it, I can’t do much else than tell you "wrap offending statements/values in int(...)" and hope for the best. Would you ping me by mail also after you tried your luck with the machine? Thanks!

Comment 10 wedmer 2021-12-01 04:32:34 UTC
In dbus_util.py function getMatrixMixerValue returns double value because org.ffado.Control.Element.MatrixMixer interface returns this. Simple solution is to convert returning value:
[code]
            dev = self.bus.get_object(self.servername, path)
            dev_cont = dbus.Interface(dev, dbus_interface='org.ffado.Control.Element.MatrixMixer')
            return int(dev_cont.getValue(row, col))
[/code]

Comment 11 Nils Philippsen 2022-02-28 09:48:45 UTC
Sorry for not responding earlier. I've been in on-and-off contact with upstream about this, the plan to publish an update which fixes this soon. To confirm, I've built the current SVN version in COPR here: https://copr.fedorainfracloud.org/coprs/nphilipp/libffado/

Would you please check if this fixes the issue for you, too?

To do that, enable the COPR and update:

dnf copr enable nphilipp/libffado
dnf update libffado\*

Comment 12 wedmer 2022-02-28 18:07:58 UTC
(In reply to Nils Philippsen from comment #11)
> Would you please check if this fixes the issue for you, too?

I'm not near my pc now. When I'll be at home I'll try.

Comment 13 Fedora Update System 2022-03-23 19:47:04 UTC
FEDORA-2022-9847e73642 has been submitted as an update to Fedora 34. https://bodhi.fedoraproject.org/updates/FEDORA-2022-9847e73642

Comment 14 Fedora Update System 2022-03-23 19:59:42 UTC
FEDORA-2022-72057790f3 has been submitted as an update to Fedora 35. https://bodhi.fedoraproject.org/updates/FEDORA-2022-72057790f3

Comment 15 Fedora Update System 2022-03-24 15:23:26 UTC
FEDORA-2022-72057790f3 has been pushed to the Fedora 35 testing repository.
Soon you'll be able to install the update with the following command:
`sudo dnf upgrade --enablerepo=updates-testing --advisory=FEDORA-2022-72057790f3`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2022-72057790f3

See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.

Comment 16 Fedora Update System 2022-04-01 04:50:55 UTC
FEDORA-2022-72057790f3 has been pushed to the Fedora 35 stable repository.
If problem still persists, please make note of it in this bug report.


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