Bug 485406

Summary: External trigger on FireWire camera broken since 2.6.26
Product: [Fedora] Fedora Reporter: Bert DeKnuydt <deknuydt>
Component: libdc1394Assignee: Tim Niemueller <tim>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: low    
Version: 11CC: jarod, kernel-maint, quintela, tim
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: 2.1.2-1.fc11 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2009-07-16 07:19:18 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:

Description Bert DeKnuydt 2009-02-13 13:04:15 UTC
Description of problem:

Using external triggers on an AVT Marlin FireWire camera worked perfectly
up to the last 2.6.25 kernel.  From then on, exactly half of the images
are not transferred to the computer.

Details:

Fedora 8: kernel 2.6.25.14-69.fc8.x86_64 works ok
          kernel-2.6.26.8-57.fc8.x86_64 misses half the images

Fedora 9: kernel 2.6.25-14-*.fc9.x86_64 works ok
          kernel-2.6.26.3-17.fc9 misses half the images

Fedora 10: kernel-2.6.27-* misses half the images
           kernel-2.6.28-* from koji, misses half the images
           kernel-2.6.29-* from koji, misses half the images

The version of libdc1394 does not seem to matter.

Use Format7.

A collegue had the camera write its trigger and frame information
written in the image: all triggers are delivered, an all images taken.
But only every other images is delivered to the program.

How reproducible:

100%

Steps to Reproduce:
1. Set a FireWire camera to external trigger.  Watch images from it
   with e.g. coriander;
2. Trigger the camera
3. 
  
Actual results:

Every second trigger results in a new image in the viewer.

Expected results:

Every trigger results in a new image.  As it was up to the last 2.6.25 kernel.

Additional info:

We cannot reproduce it with a FireWire 800 camera; but with

Comment 1 Bert DeKnuydt 2009-02-17 10:41:54 UTC
Story is more complicated than this ... 

My collegue made the following summary:

machine: 64-bit quad-core intel, 4GB RAM
camera: AVT Marlin F-201C, FireWire 400
OS: Fedora-9
kernels:
* fresh install kernel = 2.6.25-14
* first 26 kernel = 2.6.26.3-17
libdc1394: always 2.0.1-4 (from rpm)
drivers: always juju (new stack)

1. T.I. TSB43AB22
25kernel = fully operational, 100% of triggers received
26kernel = only 50% of triggers received

2. T.I. TSB43AB23
25kernel = fully operational, 100% of triggers received IF NUMBER OF
DMA BUFFERS IS SET TO 14 OR LESS!!! When the number of dma buffers is
set to 15 or more, libdc reads the first 14 images and then stops
receiving images.
26kernel = idem (so no 50% issue here!)

3. VIA Technologies. Inc. IEEE 1394 Host Controller (rev 46)
25kernel = only 50% of triggers received
26kernel = only 50% of triggers received

4. AGERE FW323 (rev 04)
25kernel = only 50% of triggers received
26kernel = only 50% of triggers received

Would all that point to some more general DMA buffer problem?

Comment 2 Jarod Wilson 2009-02-18 14:12:06 UTC
This is actually a bug in libdc1394, a fix has been posted and tested upstream:

http://sourceforge.net/mailarchive/forum.php?forum_name=libdc1394-devel&max_rows=25&style=nested&viewmonth=200902&viewday=18

Comment 3 Tim Niemueller 2009-02-18 14:20:17 UTC
Jepp, I followed the thread. Should we wait for a release or put this patch into Fedora? Will have to do some updates, soon anyway, but thesis deadline is in two weeks so I'm kinda loaded atm.

Comment 4 Bert DeKnuydt 2009-02-18 14:36:30 UTC
Well, it is an upgrade-stopper for us...  We depend on this trigger thing
for several setups totaling dozens of machines...

But I don't want to ruin your thesis obviously...

Comment 5 Bug Zapper 2009-06-10 03:33:27 UTC
This message is a reminder that Fedora 9 is nearing its end of life.
Approximately 30 (thirty) days from now Fedora will stop maintaining
and issuing updates for Fedora 9.  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 '9'.

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 9'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 9 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 6 Jarod Wilson 2009-06-10 19:18:18 UTC
There was a buglet in 2.1.1 (an unintended api change), but libdc1394 2.1.2 is supposed to be out shortly, remedying that, and I believe ought to include the fix for this bug.

Comment 7 Tim Niemueller 2009-06-11 20:13:11 UTC
2.1.2 is out and I'm going to prepare an update to this version.

Comment 8 Fedora Update System 2009-06-11 22:48:48 UTC
libdc1394-2.1.2-1.fc10 has been submitted as an update for Fedora 10.
http://admin.fedoraproject.org/updates/libdc1394-2.1.2-1.fc10

Comment 9 Fedora Update System 2009-06-11 22:49:38 UTC
libdc1394-2.1.2-1.fc11 has been submitted as an update for Fedora 11.
http://admin.fedoraproject.org/updates/libdc1394-2.1.2-1.fc11

Comment 10 Tim Niemueller 2009-06-15 23:23:08 UTC
Does the provided update solve this problem?

Comment 11 Fedora Update System 2009-06-16 01:33:55 UTC
libdc1394-2.1.2-1.fc10 has been pushed to the Fedora 10 testing repository.  If problems still persist, please make note of it in this bug report.
 If you want to test the update, you can install it with 
 su -c 'yum --enablerepo=updates-testing update libdc1394'.  You can provide feedback for this update here: http://admin.fedoraproject.org/updates/F10/FEDORA-2009-6066

Comment 12 Fedora Update System 2009-06-16 01:54:07 UTC
libdc1394-2.1.2-1.fc11 has been pushed to the Fedora 11 testing repository.  If problems still persist, please make note of it in this bug report.
 If you want to test the update, you can install it with 
 su -c 'yum --enablerepo=updates-testing update libdc1394'.  You can provide feedback for this update here: http://admin.fedoraproject.org/updates/F11/FEDORA-2009-6218

Comment 13 Fedora Update System 2009-07-16 07:19:12 UTC
libdc1394-2.1.2-1.fc10 has been pushed to the Fedora 10 stable repository.  If problems still persist, please make note of it in this bug report.

Comment 14 Fedora Update System 2009-07-16 07:20:07 UTC
libdc1394-2.1.2-1.fc11 has been pushed to the Fedora 11 stable repository.  If problems still persist, please make note of it in this bug report.