Re: The em28xx driver error

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, Nov 14, 2012 at 11:58 AM, Frank Schäfer
<fschaefer.oss@xxxxxxxxxxxxxx> wrote:
> This looks indeed like a bug.
> a >>= b means a = a >> b, which in this case means shifting height 480
> or 576 bits to the right...
> height >> 1 means height /= 2 which seems to be sane for interlaced devices.
> OTOH, I wonder why it seems to be working on other platforms !?
> Unfortunately I don't have an interlaced device here for testing. :(

It's definitely a bug.  I think Mauro put a patch in for 3.7 or 3.8.
The reason it works under x86 is because shifting an arbitrary number
of bits > 32 causes indeterminate behavior, and out of dumb luck it
has no effect on x86.

But yeah, I changed the code to shift by one bit and it's been working
fine on ARM for months in my environment (DM3730).

Devin

-- 
Devin J. Heitmueller - Kernel Labs
http://www.kernellabs.com
--
To unsubscribe from this list: send the line "unsubscribe linux-media" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Input]     [Video for Linux]     [Gstreamer Embedded]     [Mplayer Users]     [Linux USB Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]
  Powered by Linux