Bug 241598

Summary: Kernel oops on IRDA startup with a USB IR dongle.
Product: [Fedora] Fedora Reporter: Kev 'Kyrian' Green <kyrian>
Component: kernelAssignee: Kernel Maintainer List <kernel-maint>
Status: CLOSED WONTFIX QA Contact: Brian Brock <bbrock>
Severity: medium Docs Contact:
Priority: medium    
Version: 8CC: chris.brown, jonstanley, karsten
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2009-01-09 04:36:57 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Attachments:
Description Flags
dmesg output after a kernel ooops as described. none

Description Kev 'Kyrian' Green 2007-05-28 18:24:10 UTC
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:

DEVICE=/dev/ttyUSB0

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
applies there.

Version-Release number of selected component (if applicable):

kernel-2.6.20-1.2948.fc6
irda-utils-0.9.17-2.fc6
udev-095-17.fc6
glibc-2.5-10.fc6
rpm-libs-4.4.2-33.fc6
module-init-tools-3.3-0.pre1.4.17

How reproducible:

Happens every time you try.

Steps to Reproduce:
1. Set your /etc/sysconfig/irda to be eg.

IRDA=yes
#DEVICE=/dev/ttyS2
DEVICE=/dev/ttyUSB0
DONGLE=actisys+
DISCOVERY=yes

2. /etc/rc.d/init.d/irda start
3. Queue loads of kernel oopsie messages.
  
Actual results:

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

Expected results:

Anything else, preferably my mobile getting connected and available via
kmobiletools. 

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.

Additional info:

See attachment of kernel oops messages. 

Reached this step by following the instructions below:

http://www.astral.ro/~sdan/nx5000.html

Although previously I had tried another method using ircomm-tty, and
irattach/irdadump directly, although I'm almost certain I didn't leave any

Comment 1 Kev 'Kyrian' Green 2007-05-28 18:24:10 UTC
Created attachment 155548 [details]
dmesg output after a kernel ooops as described.

Comment 2 Chuck Ebbert 2007-06-20 21:50:46 UTC
               /* Notify the tty driver that the termios have changed. */
                port->tty->ldisc.set_termios(port->tty, NULL);


Comment 3 Chuck Ebbert 2007-06-21 15:16:05 UTC
(In reply to comment #0)
> Description of problem:
> 
> When IRDA is started pointed at a USB dongle as /dev/ttyUSB0, you get a kernel 
> oops.

According to Alan the driver is badly broken. If I build test kernels with his
patches will you be able to test them?

Comment 4 Kev 'Kyrian' Green 2007-06-21 15:43:08 UTC
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. ;-(

Comment 5 Jon Stanley 2008-01-08 01:53:16 UTC
(This is a mass-update to all current FC6 kernel bugs in NEW state)

Hello,

I'm reviewing this bug list as part of the kernel bug triage project, an attempt
to isolate current bugs in the Fedora kernel.

http://fedoraproject.org/wiki/KernelBugTriage

I am CC'ing myself to this bug, however this version of Fedora is no longer
maintained.

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!

Comment 6 Kev 'Kyrian' Green 2008-01-09 19:13:27 UTC
Tried this with FC9...

kernel-2.6.23.9-85.fc8
irda-utils-0.9.18-3.fc8
udev-116-3.fc8
glibc-2.7-2
rpm-libs-4.4.2.2-7.fc8
module-init-tools-3.4-2.fc8

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?

Comment 7 Jon Stanley 2008-01-09 19:24:52 UTC
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?

Comment 8 Kev 'Kyrian' Green 2008-01-09 19:46:20 UTC
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.

Comment 9 Christopher Brown 2008-02-03 21:55:18 UTC
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.

Cheers
Chris

Removing FC6 tracker blocker...

Comment 10 Bug Zapper 2008-11-26 07:15:54 UTC
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: 
http://fedoraproject.org/wiki/BugZappers/HouseKeeping

Comment 11 Bug Zapper 2009-01-09 04:36:57 UTC
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.

Comment 12 Kev 'Kyrian' Green 2009-04-27 21:44:57 UTC
I felt strangely compelled to revisit this, so I did, and followed this HOWTO:

http://www.linux.com/base/ldp/howto/Infrared-HOWTO/infrared-howto-s-irda-usb.html

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.