Red Hat Bugzilla – Bug 241598
Kernel oops on IRDA startup with a USB IR dongle.
Last modified: 2009-04-27 17:44:57 EDT
Description of problem:
When IRDA is started pointed at a USB dongle as /dev/ttyUSB0, you get a kernel oops.
ie. with /etc/sysconfig/irda set as:
This seems to be regardless of the type of dongle that is set in the same config
file, or even if the 'DONGLE=' line is commented out.
If pointed at the device when it's not plugged in, you get a failed start of
irda, with an error that it cannot be found. By way of comparison.
I guess it's a kernel module related issue, rather than the actual irda-utils
suite itself, but I could not find a suitable label for it other than those.
Furthermore I have just noticed the file /etc/modprobe.d/modprobe.conf.dist file
with no accompanying 'live' version on my system, which might be related to
this, so I shall try rebooting with that file activated, and add more to the bug
if that makes any difference. Oh, and I'll run through Kudzu fully with the
dongle plugged in to see if that reveals anything interesting as well, same
Version-Release number of selected component (if applicable):
Happens every time you try.
Steps to Reproduce:
1. Set your /etc/sysconfig/irda to be eg.
2. /etc/rc.d/init.d/irda start
3. Queue loads of kernel oopsie messages.
Loads of kernel oopsie messages. I do not know what else I should be looking for.
After the kernel oopsies attempts to start up irda yield:
Starting IrDA: Failed to open device /dev/ttyUSB0: Input/output error
Anything else, preferably my mobile getting connected and available via
Obviously I'm keen to get this resolved in case my mobile blows up etc, so any
help much appreciated, and I'll provide any reasonable info you need.
See attachment of kernel oops messages.
Reached this step by following the instructions below:
Although previously I had tried another method using ircomm-tty, and
irattach/irdadump directly, although I'm almost certain I didn't leave any
Created attachment 155548 [details]
dmesg output after a kernel ooops as described.
/* Notify the tty driver that the termios have changed. */
(In reply to comment #0)
> Description of problem:
> When IRDA is started pointed at a USB dongle as /dev/ttyUSB0, you get a kernel
According to Alan the driver is badly broken. If I build test kernels with his
patches will you be able to test them?
Yeah, sure. Preferably as RPM's, of course, but if not, then I'm sure I can work
with a source tree etc.
Incidentally, I have some workarounds which allow things to at least partially
work by poking at /etc/modules.conf et al to force loading only of either the
irda/ircomm or the irtty stuff, which are on my home workstation, and I'll
upload here as soon as I can.
Unfortunately I have had to resort to using Windows to get the data off my
Samsung e800 because irxfer/obex would not work. The former because there is no
way to force a send of an image from that phone as far as I could see. The
latter, is unknown, as a connect test worked, but not much else.
I am still open to helping out with this though as I am not looking forward to
hunting for a specifically linux compatible mobile phone. ;-(
(This is a mass-update to all current FC6 kernel bugs in NEW state)
I'm reviewing this bug list as part of the kernel bug triage project, an attempt
to isolate current bugs in the Fedora kernel.
I am CC'ing myself to this bug, however this version of Fedora is no longer
Please attempt to reproduce this bug with a current version of Fedora (presently
Fedora 8). If the bug no longer exists, please close the bug or I'll do so in a
few days if there is no further information lodged.
Thanks for using Fedora!
Tried this with FC9...
However although lsmod says the relevant kernel modules are loaded IRDA would
not start at all with /dev/ttyUSB0 as the device, because there is no such
device node present, and hence the IR can't attach to it, so the bug can't be
triggered. In most respects this is 'worse' than FC2, I guess.
I have either forgotten, or (more likely as udev came in with FC3 I believe?)
never knew how to coax udev into creating a useable /dev/ttyUSB0, so what do I
need to do for that in order to test this actual bug?
A quick bit of Googling lead me to check under /sys/ and there is no reference
to a 'ttyUSB0' or any similar enough device, and my records of linux IR attempts
in the past don't help either, so I am at a dead loss there.
Where next then?
Hmm, I'm not sure what to do with this, since I lack USB irda hardware (I
*might* have irda built into hardware on my HP laptop that I have at home, I
dunno, but that likely isn't horribly useful here anyway). I do know that when
I plug in hardware that resembles a USB serial device (specifically my wireless
broadband card that appears as a modem) the /dev/ttyUSB stuff shows up
automagically. Are there messages logged when you plug in the device in F8?
Here's what I get when I plug in my device in /var/log/messages and the same
under dmesg for obvious reasons...
Jan 9 19:02:54 enkil kernel: usb 1-2: new full speed USB device using uhci_hcd
and address 3
Jan 9 19:02:55 enkil kernel: usb 1-2: configuration #1 chosen from 1 choice
Jan 9 19:02:55 enkil kernel: IRDA-USB found at address 3, Vendor: 50f, Product: 180
Jan 9 19:02:55 enkil kernel: IrDA: Registered device irda0
Jan 9 19:02:55 enkil kernel: usbcore: registered new interface driver irda-usb
Jan 9 19:02:55 enkil kernel: USB IrDA support registered
[root@enkil ~]# cat /proc/bus/usb/devices
T: Bus=01 Lev=01 Prnt=01 Port=01 Cnt=02 Dev#= 3 Spd=12 MxCh= 0
D: Ver= 1.10 Cls=00(>ifc ) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1
P: Vendor=050f ProdID=0180 Rev= 1.10
S: Manufacturer=KC Technology, Inc.
S: Product=IRExpress USB IrDA Controller
C:* #Ifs= 1 Cfg#= 1 Atr=80 MxPwr=500mA
I:* If#= 0 Alt= 0 #EPs= 3 Cls=fe(app. ) Sub=02 Prot=00 Driver=irda-usb
E: Ad=01(O) Atr=02(Bulk) MxPS= 64 Ivl=0ms
E: Ad=82(I) Atr=02(Bulk) MxPS= 64 Ivl=0ms
E: Ad=83(I) Atr=03(Int.) MxPS= 1 Ivl=1ms
Hope that helps.
Judging from comments by Dave at the linuxconf talk, irda drivers (albeit broken
ones) will be enabled soon. If someone wants to point me in the right direction
I'd be happy to build some kernels in Koji for reporters to test against. I do
have IRDA on a laptop here so can try and duplicate as well.
Removing FC6 tracker blocker...
This message is a reminder that Fedora 8 is nearing its end of life.
Approximately 30 (thirty) days from now Fedora will stop maintaining
and issuing updates for Fedora 8. It is Fedora's policy to close all
bug reports from releases that are no longer maintained. At that time
this bug will be closed as WONTFIX if it remains open with a Fedora
'version' of '8'.
Package Maintainer: If you wish for this bug to remain open because you
plan to fix it in a currently maintained version, simply change the 'version'
to a later Fedora version prior to Fedora 8's end of life.
Bug Reporter: Thank you for reporting this issue and we are sorry that
we may not be able to fix it before Fedora 8 is end of life. If you
would still like to see this bug fixed and are able to reproduce it
against a later version of Fedora please change the 'version' of this
bug to the applicable version. If you are unable to change the version,
please add a comment here and someone will do it for you.
Although we aim to fix as many bugs as possible during every release's
lifetime, sometimes those efforts are overtaken by events. Often a
more recent Fedora release includes newer upstream software that fixes
bugs or makes them obsolete.
The process we are following is described here:
Fedora 8 changed to end-of-life (EOL) status on 2009-01-07. Fedora 8 is
no longer maintained, which means that it will not receive any further
security or bug fix updates. As a result we are closing this bug.
If you can reproduce this bug against a currently maintained version of
Fedora please feel free to reopen this bug against that version.
Thank you for reporting this bug and we are sorry it could not be fixed.
I felt strangely compelled to revisit this, so I did, and followed this HOWTO:
It seems the device in /etc/sysconfig/irda should never have been device node /dev/ttyUSB0, rather it should have been the identifier of the network device, simply "irda0".
That being the case I get 'normal' functionality as far as can be expected without getting the phone I was testing with out of a dusty cupboard or wherever it is.
Still, for 'fun', I tried to try and replicate this with FC10 (on the basis of 'lets try another "wrong" but reasonably safe type of device node) I tried using /dev/usbmon0, and no kernel panic.
The 'EXAMPLES' section of 'man irattach' (now?) provides more useful information for anyone trying to work out which interfaces to provide to that command, so I'm going to read that any maybe actually close this bug after all this time.