Jan. 9th, 2008

hansdegoede: me (Default)
Hi All,

One of the few reasons why Fedora is my distro of choice is because its usually cutting edge, and I like to be where the development is happening.

However today I've had an encounter with Fedora which make me wonder if sometimes we aren't a little too cutting edge. I tried to get an industrial firewire camera to work with the stock Fedora kernel using the juju stack. Long story short, it didn't work.

Which after reading: http://wiki.linux1394.org/JujuMigration Isn't really surprising, quoting that page: "Almost no support for IIDC cameras: Not compatible with libdc1394 v1. Highly experimental support in libdc1394 v2 which works with some luck on only a few OHCI 1.1 controllers. Improvements are to be expected in Linux 2.6.25-rc1."

Notice how a preliminary fix is expected for 2.6.25, which probably means that this will still be broken in Fedora 9, notice that the breakage was introduced in Fedora 7, so thats 18 months worth of broken firewire camera support (iow most digital video cameras). Add to that that the above referenced wiki page also says: "Regarding Linux 2.6.22 and 2.6.23, the best advice to Linux distributors (kernel packagers) ... is: Build only the old IEEE 1394 drivers."

Does this mean that Fedora should not have shipped the new stack? No it doesn't! Getting code out there early into many hands for testing is a good thing.

What IMHO we should have done is build both the new and the oldstack, which is possible on the kernel side, and modify our patches to userspace to support the juju stack, so that the userspace libs can work with either one. On top of this we should then have written a small gui utility for easy switching.

---

Another example of Fedora being to cutting edge is pulseaudio, for prove click here.


Again I think its good to be shipping this, and even that its good having it on by default, but we should also provide a small gui utility for easily turning ir off.

---

Considering the current state of affairs with regards to both features, I would even like to advocate to make them both optional for Fedora 9.

Regards,

Hans


p.s.

I've also send this to the fedora-devel mailinglist, please send any comments there.
hansdegoede: me (Default)
Hi All,

Do you have a HP multi function printer? And does it have a cardreader? And does it not work when you insert an sdcard, or have you never tried? Then this blogpost is for you!

The story starts quite some time ago, I just never got around to writing about it before. After encountering this bug in RH bugzilla while doing bug triaging. I thought hey, that reminds me the reader in my PSC has troubles too, lets see if I can fix this.

So after 3 long evenings of debugging, I finally have my cardreader working "properly" (what a piece of <beep>).

At first I tried and succeeded with US_FL_FIX_CAPACITY, that worked but gave me warnings that the partition was larger then the device, and read access beyond the end of device errors. But it worked now!

Further debugging has lead me to the following conclusion: The HP PSC 1350 reader will "crash" and from that moment on no longer communicate in any sane way, if you try to read the last sector of an sdcard * in a read that is more then 1 sector, so trying to read 8 sectors starting at sector capacity-8 will crash it, as will reading 2 sectors starting at sector capacity-2, however reading the last sector in a one 1 sector read will succeed! (* xdcards seem to be fine).

With this knowledge I wrote a patch introducing a new unusual device flag, and modifying usb-storage behavior to not cause the crash condition when this flag is said. This was 6 months ago, there was some discussion about my patch on the usb-storage list, but in the form it had then it wasn't accepted and no consensus was reached on in which form it would be acceptable. A few days ago I got a mail from an HP PSC 1610 owner, who had the same problem, found my patch in the mailinglist archive, and it fixed things for him too. So now I'm trying to get some form of fix into the kernel once more.

Which brings me to the reason for writing this blog post, when a fix gets in the kernel it would be nice to have a complete list of usb id's of all HP printers needing this workaround. So if you have such a beast please try feeding it sdcards and if they don't work, try again with my patch. In order to make testing as easy as possible I've prepared an out of tree compilable version of the usb-storage driver. Here are simple testing instructions:
  • Download this tarbal
  • untar
  • make sure you have the kernel-devel package for your currently running kernel installed
  • cd usb-storage2
  • make
  • make sure you do not have any usb storage devices mounted
  • sudo rmmod usb-storage
  • sudo insmod usb-storage.ko
  • insert sdcard
  • it should work now
Note the tarbal is for a 2.6.23 kernel, your milage with other kernels may vary.

Everyone with a HP printer with cardreader, please test, your feedback is much appreciated.

Profile

hansdegoede: me (Default)
Hans de Goede

June 2025

S M T W T F S
1234567
891011121314
15161718192021
22 232425262728
2930     

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Jul. 3rd, 2025 04:56 am
Powered by Dreamwidth Studios