git.openpandora.org
/
pandora-kernel.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
netxen: fix off by one bug in netxen_release_tx_buffer()
[pandora-kernel.git]
/
drivers
/
net
/
ethernet
/
tile
/
tilepro.c
diff --git
a/drivers/net/ethernet/tile/tilepro.c
b/drivers/net/ethernet/tile/tilepro.c
index
10826d8
..
1187a11
100644
(file)
--- a/
drivers/net/ethernet/tile/tilepro.c
+++ b/
drivers/net/ethernet/tile/tilepro.c
@@
-926,7
+926,7
@@
static int tile_net_poll(struct napi_struct *napi, int budget)
goto done;
/* Re-enable the ingress interrupt. */
goto done;
/* Re-enable the ingress interrupt. */
- enable_percpu_irq(priv->intr_id);
+ enable_percpu_irq(priv->intr_id
, 0
);
/* HACK: Avoid the "rotting packet" problem (see above). */
if (qup->__packet_receive_read !=
/* HACK: Avoid the "rotting packet" problem (see above). */
if (qup->__packet_receive_read !=
@@
-1296,7
+1296,7
@@
static void tile_net_open_enable(void *dev_ptr)
info->napi_enabled = true;
/* Enable the ingress interrupt. */
info->napi_enabled = true;
/* Enable the ingress interrupt. */
- enable_percpu_irq(priv->intr_id);
+ enable_percpu_irq(priv->intr_id
, 0
);
}
}
@@
-1697,7
+1697,7
@@
static unsigned int tile_net_tx_frags(lepp_frag_t *frags,
for (i = 0; i < sh->nr_frags; i++) {
skb_frag_t *f = &sh->frags[i];
for (i = 0; i < sh->nr_frags; i++) {
skb_frag_t *f = &sh->frags[i];
- unsigned long pfn = page_to_pfn(
f->page
);
+ unsigned long pfn = page_to_pfn(
skb_frag_page(f)
);
/* FIXME: Compute "hash_for_home" properly. */
/* ISSUE: The hypervisor checks CHIP_HAS_REV1_DMA_PACKETS(). */
/* FIXME: Compute "hash_for_home" properly. */
/* ISSUE: The hypervisor checks CHIP_HAS_REV1_DMA_PACKETS(). */
@@
-1706,7
+1706,7
@@
static unsigned int tile_net_tx_frags(lepp_frag_t *frags,
/* FIXME: Hmmm. */
if (!hash_default) {
void *va = pfn_to_kaddr(pfn) + f->page_offset;
/* FIXME: Hmmm. */
if (!hash_default) {
void *va = pfn_to_kaddr(pfn) + f->page_offset;
- BUG_ON(PageHighMem(
f->page
));
+ BUG_ON(PageHighMem(
skb_frag_page(f)
));
finv_buffer_remote(va, f->size, 0);
}
finv_buffer_remote(va, f->size, 0);
}