Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
L
linux
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Kirill Smelkov
linux
Commits
8b91ac09
Commit
8b91ac09
authored
Jun 04, 2008
by
David S. Miller
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'davem-fixes' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/netdev-2.6
parents
8aca6cb1
56997fa8
Changes
8
Hide whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
52 additions
and
14 deletions
+52
-14
drivers/net/atlx/atl1.c
drivers/net/atlx/atl1.c
+1
-0
drivers/net/cs89x0.c
drivers/net/cs89x0.c
+7
-3
drivers/net/myri10ge/myri10ge.c
drivers/net/myri10ge/myri10ge.c
+1
-1
drivers/net/sc92031.c
drivers/net/sc92031.c
+1
-1
drivers/net/sfc/falcon_xmac.c
drivers/net/sfc/falcon_xmac.c
+1
-1
drivers/net/tulip/tulip_core.c
drivers/net/tulip/tulip_core.c
+8
-2
drivers/net/ucc_geth_ethtool.c
drivers/net/ucc_geth_ethtool.c
+2
-1
drivers/net/virtio_net.c
drivers/net/virtio_net.c
+31
-5
No files found.
drivers/net/atlx/atl1.c
View file @
8b91ac09
...
@@ -2023,6 +2023,7 @@ static void atl1_intr_rx(struct atl1_adapter *adapter)
...
@@ -2023,6 +2023,7 @@ static void atl1_intr_rx(struct atl1_adapter *adapter)
/* Good Receive */
/* Good Receive */
pci_unmap_page
(
adapter
->
pdev
,
buffer_info
->
dma
,
pci_unmap_page
(
adapter
->
pdev
,
buffer_info
->
dma
,
buffer_info
->
length
,
PCI_DMA_FROMDEVICE
);
buffer_info
->
length
,
PCI_DMA_FROMDEVICE
);
buffer_info
->
dma
=
0
;
skb
=
buffer_info
->
skb
;
skb
=
buffer_info
->
skb
;
length
=
le16_to_cpu
(
rrd
->
xsz
.
xsum_sz
.
pkt_size
);
length
=
le16_to_cpu
(
rrd
->
xsz
.
xsum_sz
.
pkt_size
);
...
...
drivers/net/cs89x0.c
View file @
8b91ac09
...
@@ -1394,7 +1394,11 @@ net_open(struct net_device *dev)
...
@@ -1394,7 +1394,11 @@ net_open(struct net_device *dev)
#endif
#endif
if
(
!
result
)
{
if
(
!
result
)
{
printk
(
KERN_ERR
"%s: EEPROM is configured for unavailable media
\n
"
,
dev
->
name
);
printk
(
KERN_ERR
"%s: EEPROM is configured for unavailable media
\n
"
,
dev
->
name
);
release_irq:
release_dma:
#if ALLOW_DMA
free_dma
(
dev
->
dma
);
#endif
release_irq:
#if ALLOW_DMA
#if ALLOW_DMA
release_dma_buff
(
lp
);
release_dma_buff
(
lp
);
#endif
#endif
...
@@ -1442,12 +1446,12 @@ net_open(struct net_device *dev)
...
@@ -1442,12 +1446,12 @@ net_open(struct net_device *dev)
if
((
result
=
detect_bnc
(
dev
))
!=
DETECTED_NONE
)
if
((
result
=
detect_bnc
(
dev
))
!=
DETECTED_NONE
)
break
;
break
;
printk
(
KERN_ERR
"%s: no media detected
\n
"
,
dev
->
name
);
printk
(
KERN_ERR
"%s: no media detected
\n
"
,
dev
->
name
);
goto
release_irq
;
goto
release_dma
;
}
}
switch
(
result
)
{
switch
(
result
)
{
case
DETECTED_NONE
:
case
DETECTED_NONE
:
printk
(
KERN_ERR
"%s: no network cable attached to configured media
\n
"
,
dev
->
name
);
printk
(
KERN_ERR
"%s: no network cable attached to configured media
\n
"
,
dev
->
name
);
goto
release_irq
;
goto
release_dma
;
case
DETECTED_RJ45H
:
case
DETECTED_RJ45H
:
printk
(
KERN_INFO
"%s: using half-duplex 10Base-T (RJ-45)
\n
"
,
dev
->
name
);
printk
(
KERN_INFO
"%s: using half-duplex 10Base-T (RJ-45)
\n
"
,
dev
->
name
);
break
;
break
;
...
...
drivers/net/myri10ge/myri10ge.c
View file @
8b91ac09
...
@@ -75,7 +75,7 @@
...
@@ -75,7 +75,7 @@
#include "myri10ge_mcp.h"
#include "myri10ge_mcp.h"
#include "myri10ge_mcp_gen_header.h"
#include "myri10ge_mcp_gen_header.h"
#define MYRI10GE_VERSION_STR "1.3.
2-1.28
7"
#define MYRI10GE_VERSION_STR "1.3.
99-1.34
7"
MODULE_DESCRIPTION
(
"Myricom 10G driver (10GbE)"
);
MODULE_DESCRIPTION
(
"Myricom 10G driver (10GbE)"
);
MODULE_AUTHOR
(
"Maintainer: help@myri.com"
);
MODULE_AUTHOR
(
"Maintainer: help@myri.com"
);
...
...
drivers/net/sc92031.c
View file @
8b91ac09
...
@@ -972,7 +972,7 @@ static int sc92031_start_xmit(struct sk_buff *skb, struct net_device *dev)
...
@@ -972,7 +972,7 @@ static int sc92031_start_xmit(struct sk_buff *skb, struct net_device *dev)
skb_copy_and_csum_dev
(
skb
,
priv
->
tx_bufs
+
entry
*
TX_BUF_SIZE
);
skb_copy_and_csum_dev
(
skb
,
priv
->
tx_bufs
+
entry
*
TX_BUF_SIZE
);
len
=
skb
->
len
;
len
=
skb
->
len
;
if
(
unlikely
(
len
<
ETH_ZLEN
)
)
{
if
(
len
<
ETH_ZLEN
)
{
memset
(
priv
->
tx_bufs
+
entry
*
TX_BUF_SIZE
+
len
,
memset
(
priv
->
tx_bufs
+
entry
*
TX_BUF_SIZE
+
len
,
0
,
ETH_ZLEN
-
len
);
0
,
ETH_ZLEN
-
len
);
len
=
ETH_ZLEN
;
len
=
ETH_ZLEN
;
...
...
drivers/net/sfc/falcon_xmac.c
View file @
8b91ac09
...
@@ -459,7 +459,7 @@ static int falcon_check_xaui_link_up(struct efx_nic *efx)
...
@@ -459,7 +459,7 @@ static int falcon_check_xaui_link_up(struct efx_nic *efx)
tries
--
;
tries
--
;
}
}
EFX_
ERR
(
efx
,
"Failed to bring XAUI link back up in %d tries!
\n
"
,
EFX_
LOG
(
efx
,
"Failed to bring XAUI link back up in %d tries!
\n
"
,
max_tries
);
max_tries
);
return
0
;
return
0
;
}
}
...
...
drivers/net/tulip/tulip_core.c
View file @
8b91ac09
...
@@ -1729,12 +1729,15 @@ static int tulip_suspend (struct pci_dev *pdev, pm_message_t state)
...
@@ -1729,12 +1729,15 @@ static int tulip_suspend (struct pci_dev *pdev, pm_message_t state)
if
(
!
dev
)
if
(
!
dev
)
return
-
EINVAL
;
return
-
EINVAL
;
if
(
netif_running
(
dev
))
if
(
!
netif_running
(
dev
))
tulip_down
(
dev
);
goto
save_state
;
tulip_down
(
dev
);
netif_device_detach
(
dev
);
netif_device_detach
(
dev
);
free_irq
(
dev
->
irq
,
dev
);
free_irq
(
dev
->
irq
,
dev
);
save_state:
pci_save_state
(
pdev
);
pci_save_state
(
pdev
);
pci_disable_device
(
pdev
);
pci_disable_device
(
pdev
);
pci_set_power_state
(
pdev
,
pci_choose_state
(
pdev
,
state
));
pci_set_power_state
(
pdev
,
pci_choose_state
(
pdev
,
state
));
...
@@ -1754,6 +1757,9 @@ static int tulip_resume(struct pci_dev *pdev)
...
@@ -1754,6 +1757,9 @@ static int tulip_resume(struct pci_dev *pdev)
pci_set_power_state
(
pdev
,
PCI_D0
);
pci_set_power_state
(
pdev
,
PCI_D0
);
pci_restore_state
(
pdev
);
pci_restore_state
(
pdev
);
if
(
!
netif_running
(
dev
))
return
0
;
if
((
retval
=
pci_enable_device
(
pdev
)))
{
if
((
retval
=
pci_enable_device
(
pdev
)))
{
printk
(
KERN_ERR
"tulip: pci_enable_device failed in resume
\n
"
);
printk
(
KERN_ERR
"tulip: pci_enable_device failed in resume
\n
"
);
return
retval
;
return
retval
;
...
...
drivers/net/ucc_geth_ethtool.c
View file @
8b91ac09
...
@@ -73,6 +73,7 @@ static char tx_fw_stat_gstrings[][ETH_GSTRING_LEN] = {
...
@@ -73,6 +73,7 @@ static char tx_fw_stat_gstrings[][ETH_GSTRING_LEN] = {
"tx-frames-ok"
,
"tx-frames-ok"
,
"tx-excessive-differ-frames"
,
"tx-excessive-differ-frames"
,
"tx-256-511-frames"
,
"tx-256-511-frames"
,
"tx-512-1023-frames"
,
"tx-1024-1518-frames"
,
"tx-1024-1518-frames"
,
"tx-jumbo-frames"
,
"tx-jumbo-frames"
,
};
};
...
@@ -308,7 +309,7 @@ static void uec_get_strings(struct net_device *netdev, u32 stringset, u8 *buf)
...
@@ -308,7 +309,7 @@ static void uec_get_strings(struct net_device *netdev, u32 stringset, u8 *buf)
buf
+=
UEC_TX_FW_STATS_LEN
*
ETH_GSTRING_LEN
;
buf
+=
UEC_TX_FW_STATS_LEN
*
ETH_GSTRING_LEN
;
}
}
if
(
stats_mode
&
UCC_GETH_STATISTICS_GATHERING_MODE_FIRMWARE_RX
)
if
(
stats_mode
&
UCC_GETH_STATISTICS_GATHERING_MODE_FIRMWARE_RX
)
memcpy
(
buf
,
t
x_fw_stat_gstrings
,
UEC_RX_FW_STATS_LEN
*
memcpy
(
buf
,
r
x_fw_stat_gstrings
,
UEC_RX_FW_STATS_LEN
*
ETH_GSTRING_LEN
);
ETH_GSTRING_LEN
);
}
}
...
...
drivers/net/virtio_net.c
View file @
8b91ac09
...
@@ -47,6 +47,9 @@ struct virtnet_info
...
@@ -47,6 +47,9 @@ struct virtnet_info
/* Number of input buffers, and max we've ever had. */
/* Number of input buffers, and max we've ever had. */
unsigned
int
num
,
max
;
unsigned
int
num
,
max
;
/* For cleaning up after transmission. */
struct
tasklet_struct
tasklet
;
/* Receive & send queues. */
/* Receive & send queues. */
struct
sk_buff_head
recv
;
struct
sk_buff_head
recv
;
struct
sk_buff_head
send
;
struct
sk_buff_head
send
;
...
@@ -68,8 +71,13 @@ static void skb_xmit_done(struct virtqueue *svq)
...
@@ -68,8 +71,13 @@ static void skb_xmit_done(struct virtqueue *svq)
/* Suppress further interrupts. */
/* Suppress further interrupts. */
svq
->
vq_ops
->
disable_cb
(
svq
);
svq
->
vq_ops
->
disable_cb
(
svq
);
/* We were waiting for more output buffers. */
/* We were waiting for more output buffers. */
netif_wake_queue
(
vi
->
dev
);
netif_wake_queue
(
vi
->
dev
);
/* Make sure we re-xmit last_xmit_skb: if there are no more packets
* queued, start_xmit won't be called. */
tasklet_schedule
(
&
vi
->
tasklet
);
}
}
static
void
receive_skb
(
struct
net_device
*
dev
,
struct
sk_buff
*
skb
,
static
void
receive_skb
(
struct
net_device
*
dev
,
struct
sk_buff
*
skb
,
...
@@ -278,6 +286,18 @@ static int xmit_skb(struct virtnet_info *vi, struct sk_buff *skb)
...
@@ -278,6 +286,18 @@ static int xmit_skb(struct virtnet_info *vi, struct sk_buff *skb)
return
vi
->
svq
->
vq_ops
->
add_buf
(
vi
->
svq
,
sg
,
num
,
0
,
skb
);
return
vi
->
svq
->
vq_ops
->
add_buf
(
vi
->
svq
,
sg
,
num
,
0
,
skb
);
}
}
static
void
xmit_tasklet
(
unsigned
long
data
)
{
struct
virtnet_info
*
vi
=
(
void
*
)
data
;
netif_tx_lock_bh
(
vi
->
dev
);
if
(
vi
->
last_xmit_skb
&&
xmit_skb
(
vi
,
vi
->
last_xmit_skb
)
==
0
)
{
vi
->
svq
->
vq_ops
->
kick
(
vi
->
svq
);
vi
->
last_xmit_skb
=
NULL
;
}
netif_tx_unlock_bh
(
vi
->
dev
);
}
static
int
start_xmit
(
struct
sk_buff
*
skb
,
struct
net_device
*
dev
)
static
int
start_xmit
(
struct
sk_buff
*
skb
,
struct
net_device
*
dev
)
{
{
struct
virtnet_info
*
vi
=
netdev_priv
(
dev
);
struct
virtnet_info
*
vi
=
netdev_priv
(
dev
);
...
@@ -287,21 +307,25 @@ static int start_xmit(struct sk_buff *skb, struct net_device *dev)
...
@@ -287,21 +307,25 @@ static int start_xmit(struct sk_buff *skb, struct net_device *dev)
free_old_xmit_skbs
(
vi
);
free_old_xmit_skbs
(
vi
);
/* If we has a buffer left over from last time, send it now. */
/* If we has a buffer left over from last time, send it now. */
if
(
vi
->
last_xmit_skb
)
{
if
(
unlikely
(
vi
->
last_xmit_skb
)
)
{
if
(
xmit_skb
(
vi
,
vi
->
last_xmit_skb
)
!=
0
)
{
if
(
xmit_skb
(
vi
,
vi
->
last_xmit_skb
)
!=
0
)
{
/* Drop this skb: we only queue one. */
/* Drop this skb: we only queue one. */
vi
->
dev
->
stats
.
tx_dropped
++
;
vi
->
dev
->
stats
.
tx_dropped
++
;
kfree_skb
(
skb
);
kfree_skb
(
skb
);
skb
=
NULL
;
goto
stop_queue
;
goto
stop_queue
;
}
}
vi
->
last_xmit_skb
=
NULL
;
vi
->
last_xmit_skb
=
NULL
;
}
}
/* Put new one in send queue and do transmit */
/* Put new one in send queue and do transmit */
__skb_queue_head
(
&
vi
->
send
,
skb
);
if
(
likely
(
skb
))
{
if
(
xmit_skb
(
vi
,
skb
)
!=
0
)
{
__skb_queue_head
(
&
vi
->
send
,
skb
);
vi
->
last_xmit_skb
=
skb
;
if
(
xmit_skb
(
vi
,
skb
)
!=
0
)
{
goto
stop_queue
;
vi
->
last_xmit_skb
=
skb
;
skb
=
NULL
;
goto
stop_queue
;
}
}
}
done:
done:
vi
->
svq
->
vq_ops
->
kick
(
vi
->
svq
);
vi
->
svq
->
vq_ops
->
kick
(
vi
->
svq
);
...
@@ -428,6 +452,8 @@ static int virtnet_probe(struct virtio_device *vdev)
...
@@ -428,6 +452,8 @@ static int virtnet_probe(struct virtio_device *vdev)
skb_queue_head_init
(
&
vi
->
recv
);
skb_queue_head_init
(
&
vi
->
recv
);
skb_queue_head_init
(
&
vi
->
send
);
skb_queue_head_init
(
&
vi
->
send
);
tasklet_init
(
&
vi
->
tasklet
,
xmit_tasklet
,
(
unsigned
long
)
vi
);
err
=
register_netdev
(
dev
);
err
=
register_netdev
(
dev
);
if
(
err
)
{
if
(
err
)
{
pr_debug
(
"virtio_net: registering device failed
\n
"
);
pr_debug
(
"virtio_net: registering device failed
\n
"
);
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment