Description of problem: Talking to a video camera hooked to a firewire interface (ohci1394 driver) is causing an incessant stream of debug messages like those: Debug: sleeping function called from invalid context at mm/slab.c:2061 in_atomic():0, irqs_disabled():1 Call Trace:<ffffffff8012f655>{__might_sleep+171} <ffffffff80166702>{kmem_cache_alloc+31} <ffffffff80273431>{dma_pool_create+132} <ffffffffa0176382>{:ohci1394:alloc_dma_rcv_ctx+355} <ffffffffa0176786>{:ohci1394:ohci_devctl+490} <ffffffffa01d8bb2>{:raw1394:state_connected+4357} <ffffffffa01d9829>{:raw1394:raw1394_write+1213} <ffffffff801838d6>{vfs_write+207} <ffffffff801839be>{sys_write+69} <ffffffff8010e7f2>{system_call+126} Debug: sleeping function called from invalid context at include/asm/semaphore.h:108 in_atomic():0, irqs_disabled():1 Call Trace:<ffffffff8012f655>{__might_sleep+171} <ffffffff80273592>{dma_pool_destroy+30} <ffffffffa01761c9>{:ohci1394:free_dma_rcv_ctx+177} <ffffffffa0176c85>{:ohci1394:ohci_devctl+1769} <ffffffffa01d8c02>{:raw1394:state_connected+4437} <ffffffffa01d9829>{:raw1394:raw1394_write+1213} <ffffffff801838d6>{vfs_write+207} <ffffffff801839be>{sys_write+69} <ffffffff8010e7f2>{system_call+126} Version-Release number of selected component (if applicable): kernel-2.6.10-1.760_FC3 (traces were actually obtained with kernel-2.6.10-1.741_FC3, and obviously on x86_64, but sources involved here did not seem to really change between these two versions). Other than that the connection seem to be working just fine. :-) How reproducible: Way too easy.
I had the same problems. Additionally, once in a while when starting/stopping grabbing the machine looks up HARD. No oops, not even anything over serial link, just hard lock. https://core.fluendo.com/trac/cgi-bin/trac.cgi/browser/patches/linux-2.6.10-1.770_FC3/ This svn repo contains a patch I culled from the --mm branch, with some fixes to compile, and this solves the issue for me. No more tracebacks on start/stop, and no more kernel hangs. The dvtest.py program tries 1000 open/grab/closes, and works fine.
If it is in -mm then it is already in the upstream queue for mainline inclusion. Convincing davej to include this in the Fedora kernel beforehand might be difficult, because historically changes to firewire has often lead to non-bootable systems. This is systems EVEN WITHOUT FIREWIRE.
(I mean, systems with a firewall controller but no devices plugged in.)
On the other hand fixes for stuff that makes fedora not crash should be given some consideration I think.
1) Firewire is unusable and crashes, but everyone's computer boots. 2) Firewire is usable, but there is a risk of breaking many people's ability to boot without manual intervention, and this actually happened multiple times in the past. Given the choice between #1 and #2, we need to be pretty damned sure the patch is 100% correct and wont cause problems for anybody before including it. This does not even begin to take into the account the workload of Red Hat's engineers. They simply don't have time to spend debugging this kind of thing that so few of the paying customers use. Even if it is merged, it requires testing and any resulting problems causes lost time and effort that they cannot spare. This kind of functionality must depend entirely on the community. Keep in mind that it isn't only Fedora in poor firewire shape. This is an upstream problem that affects everyone, because there just isn't a large enough community working on it. Everyone complains, but few people do something about it. Get this patch into upstream where it would be exposed to many thousands more eyes and testing than Fedora's kernel. Unfortunately the patch is longer than the "100 lines" requirement and touches multiple files, so would probably be rejected from the 2.6.X.Y series. But you need to work *now* to convince them to include it into 2.6.12. If it is in -mm now, it is already on that path. Ask Andrew Morton about its status. Test the heck out of it in as many different configurations you can get your hands on. See if you can break it.
An update has been released for Fedora Core 3 (kernel-2.6.12-1.1372_FC3) which may contain a fix for your problem. Please update to this new kernel, and report whether or not it fixes your problem. If you have updated to Fedora Core 4 since this bug was opened, and the problem still occurs with the latest updates for that release, please change the version field of this bug to 'fc4'. Thank you.
This bug has been automatically closed as part of a mass update. It had been in NEEDINFO state since July 2005. If this bug still exists in current errata kernels, please reopen this bug. There are a large number of inactive bugs in the database, and this is the only way to purge them. Thank you.