On Thu, Sep 02, 2004 at 01:10:22PM +0700, 輊帆斌 wrote:
> Package: kernel-image-2.4.27-1-686
> Version: 2.4.27-1
>
> I got a kernel execption when I modprobe r8169 and then ifup
> eth0 on mobo GA-7N400Pro2. Then only reset button can help.
> On the same hardware and situation with 2.4.26-1-686
> kernel-image system fails after many transmitted packets.
> And when I use 2.6.7-1-686 kernel-image there are no
> problem.
Does the attached patch help this problem?
--
Horms
# origin: jgarzik (BitKeeper)
# cset: 1.1832.54.1 (2.6) key=4134259d358_N6mo2eVuJ5f4H6h-2w
# inclusion: upstream
# descrition: [netdrvr 8139cp,r8169] fix dma_addr_t sizeof test
# revision date: Mon, 17 Jan 2005 16:37:10 +0900
#
# S rset: ChangeSet|1.1832.1.28..1.1832.54.1
# R rset: drivers/net/8139cp.c|1.66..1.67
# I rset: drivers/net/r8169.c|1.61..1.62
#
# Key:
# S: Skipped ChangeSet file only
# O: Original Followed by Updated
# U: Updated Included with updated range of versions
# I: Included Included verbatim
# E: Excluded Excluded on request from user
# D: Deleted Manually deleted by subsequent user edit
# R: Revised Manually revised by subsequent user edit
#
#
# This is a BitKeeper generated diff -Nru style patch.
#
# ChangeSet
# 2004/08/31 03:15:41-04:00 [EMAIL PROTECTED]
# [netdrvr 8139cp,r8169] fix dma_addr_t sizeof test
#
# drivers/net/r8169.c
# 2004/08/31 03:15:35-04:00 [EMAIL PROTECTED] +1 -1
# [netdrvr 8139cp,r8169] fix dma_addr_t sizeof test
#
# drivers/net/8139cp.c
# 2004/08/31 03:15:35-04:00 [EMAIL PROTECTED] +1 -1
# [netdrvr 8139cp,r8169] fix dma_addr_t sizeof test
#
#
===== drivers/net/8139cp.c 1.66 vs 1.67 =====
--- 1.66/drivers/net/8139cp.c 2004-06-05 00:49:59 +09:00
+++ edited/drivers/net/8139cp.c 2004-08-31 16:15:35 +09:00
@@ -1699,7 +1699,7 @@
}
/* Configure DMA attributes. */
- if ((sizeof(dma_addr_t) > 32) &&
+ if ((sizeof(dma_addr_t) > 4) &&
!pci_set_dma_mask(pdev, 0xffffffffffffffffULL)) {
pci_using_dac = 1;
} else {
}
===== drivers/net/r8169.c 1.61 vs 1.62 =====
--- 1.61/drivers/net/r8169.c 2004-07-03 03:51:44 +09:00
+++ 1.62/drivers/net/r8169.c 2004-08-31 16:15:35 +09:00
@@ -983,7 +983,7 @@
tp->cp_cmd = PCIMulRW | RxChkSum;
- if ((sizeof(dma_addr_t) > 32) &&
+ if ((sizeof(dma_addr_t) > 4) &&
!pci_set_dma_mask(pdev, DMA_64BIT_MASK))
tp->cp_cmd |= PCIDAC;
else {