diff options
author | Ang Way Chuang <wcang@nrg.cs.usm.my> | 2006-12-14 11:51:44 -0500 |
---|---|---|
committer | Mauro Carvalho Chehab <mchehab@infradead.org> | 2006-12-27 11:19:10 -0500 |
commit | dedcefb085fe98a1feaf63590fe2fc7e0ecb1987 (patch) | |
tree | 19896ad2ad032f020e8d1d074f924f9e75a8e321 /drivers/media | |
parent | 38284ba361d69eca34a3bfc553ebfac81fea2698 (diff) |
V4L/DVB (4972): Dvb-core: fix bug in CRC-32 checking on 64-bit systems
CRC-32 checking during ULE decapsulation always failed on x86_64 systems due
to the size of a variable used to store CRC. This bug was discovered on
Fedora Core 6 with kernel-2.6.18-1.2849. The i386 counterpart has no such
problem. This patch has been tested on 64-bit system as well as 32-bit system.
Signed-off-by: Ang Way Chuang <wcang@nrg.cs.usm.my>
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
Diffstat (limited to 'drivers/media')
-rw-r--r-- | drivers/media/dvb/dvb-core/dvb_net.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/media/dvb/dvb-core/dvb_net.c b/drivers/media/dvb/dvb-core/dvb_net.c index ebf4dc5190f6..8138b37d914d 100644 --- a/drivers/media/dvb/dvb-core/dvb_net.c +++ b/drivers/media/dvb/dvb-core/dvb_net.c | |||
@@ -605,7 +605,7 @@ static void dvb_net_ule( struct net_device *dev, const u8 *buf, size_t buf_len ) | |||
605 | { &utype, sizeof utype }, | 605 | { &utype, sizeof utype }, |
606 | { priv->ule_skb->data, priv->ule_skb->len - 4 } | 606 | { priv->ule_skb->data, priv->ule_skb->len - 4 } |
607 | }; | 607 | }; |
608 | unsigned long ule_crc = ~0L, expected_crc; | 608 | u32 ule_crc = ~0L, expected_crc; |
609 | if (priv->ule_dbit) { | 609 | if (priv->ule_dbit) { |
610 | /* Set D-bit for CRC32 verification, | 610 | /* Set D-bit for CRC32 verification, |
611 | * if it was set originally. */ | 611 | * if it was set originally. */ |