Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
L
linux-davinci
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Redmine
Redmine
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Operations
Operations
Metrics
Environments
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
linux
linux-davinci
Commits
0ecc103a
Commit
0ecc103a
authored
Feb 09, 2009
by
David S. Miller
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6
Conflicts: drivers/net/gianfar.c
parents
0012985d
4906f998
Changes
12
Hide whitespace changes
Inline
Side-by-side
Showing
12 changed files
with
76 additions
and
12 deletions
+76
-12
drivers/atm/solos-pci.c
drivers/atm/solos-pci.c
+1
-0
drivers/isdn/hardware/mISDN/hfcmulti.c
drivers/isdn/hardware/mISDN/hfcmulti.c
+2
-0
drivers/net/gianfar.c
drivers/net/gianfar.c
+6
-0
drivers/net/netxen/netxen_nic.h
drivers/net/netxen/netxen_nic.h
+1
-1
drivers/net/netxen/netxen_nic_main.c
drivers/net/netxen/netxen_nic_main.c
+12
-1
drivers/net/tulip/de2104x.c
drivers/net/tulip/de2104x.c
+2
-1
drivers/net/tun.c
drivers/net/tun.c
+8
-2
net/bridge/br_forward.c
net/bridge/br_forward.c
+6
-1
net/ipv6/ip6_tunnel.c
net/ipv6/ip6_tunnel.c
+1
-1
net/ipv6/netfilter/nf_conntrack_proto_icmpv6.c
net/ipv6/netfilter/nf_conntrack_proto_icmpv6.c
+23
-2
net/netfilter/nf_conntrack_netlink.c
net/netfilter/nf_conntrack_netlink.c
+13
-2
net/netfilter/xt_sctp.c
net/netfilter/xt_sctp.c
+1
-1
No files found.
drivers/atm/solos-pci.c
View file @
0ecc103a
...
...
@@ -685,6 +685,7 @@ static int fpga_probe(struct pci_dev *dev, const struct pci_device_id *id)
out_release_regions:
pci_release_regions
(
dev
);
out:
kfree
(
card
);
return
err
;
}
...
...
drivers/isdn/hardware/mISDN/hfcmulti.c
View file @
0ecc103a
...
...
@@ -4599,6 +4599,7 @@ init_e1_port(struct hfc_multi *hc, struct hm_map *m)
printk
(
KERN_ERR
"%s: no memory for coeffs
\n
"
,
__func__
);
ret
=
-
ENOMEM
;
kfree
(
bch
);
goto
free_chan
;
}
bch
->
nr
=
ch
;
...
...
@@ -4767,6 +4768,7 @@ init_multi_port(struct hfc_multi *hc, int pt)
printk
(
KERN_ERR
"%s: no memory for coeffs
\n
"
,
__func__
);
ret
=
-
ENOMEM
;
kfree
(
bch
);
goto
free_chan
;
}
bch
->
nr
=
ch
+
1
;
...
...
drivers/net/gianfar.c
View file @
0ecc103a
...
...
@@ -1668,6 +1668,12 @@ static void gfar_schedule_cleanup(struct net_device *dev)
if
(
napi_schedule_prep
(
&
priv
->
napi
))
{
gfar_write
(
&
priv
->
regs
->
imask
,
IMASK_RTX_DISABLED
);
__napi_schedule
(
&
priv
->
napi
);
}
else
{
/*
* Clear IEVENT, so interrupts aren't called again
* because of the packets that have already arrived.
*/
gfar_write
(
&
priv
->
regs
->
ievent
,
IEVENT_RTX_MASK
);
}
spin_unlock
(
&
priv
->
rxlock
);
...
...
drivers/net/netxen/netxen_nic.h
View file @
0ecc103a
...
...
@@ -1203,7 +1203,7 @@ typedef struct {
#define NETXEN_IS_MSI_FAMILY(adapter) \
((adapter)->flags & (NETXEN_NIC_MSI_ENABLED | NETXEN_NIC_MSIX_ENABLED))
#define MSIX_ENTRIES_PER_ADAPTER
8
#define MSIX_ENTRIES_PER_ADAPTER
1
#define NETXEN_MSIX_TBL_SPACE 8192
#define NETXEN_PCI_REG_MSIX_TBL 0x44
...
...
drivers/net/netxen/netxen_nic_main.c
View file @
0ecc103a
...
...
@@ -76,6 +76,7 @@ static void netxen_nic_poll_controller(struct net_device *netdev);
#endif
static
irqreturn_t
netxen_intr
(
int
irq
,
void
*
data
);
static
irqreturn_t
netxen_msi_intr
(
int
irq
,
void
*
data
);
static
irqreturn_t
netxen_msix_intr
(
int
irq
,
void
*
data
);
/* PCI Device ID Table */
#define ENTRY(device) \
...
...
@@ -1084,7 +1085,9 @@ static int netxen_nic_open(struct net_device *netdev)
for
(
ring
=
0
;
ring
<
adapter
->
max_rds_rings
;
ring
++
)
netxen_post_rx_buffers
(
adapter
,
ctx
,
ring
);
}
if
(
NETXEN_IS_MSI_FAMILY
(
adapter
))
if
(
adapter
->
flags
&
NETXEN_NIC_MSIX_ENABLED
)
handler
=
netxen_msix_intr
;
else
if
(
adapter
->
flags
&
NETXEN_NIC_MSI_ENABLED
)
handler
=
netxen_msi_intr
;
else
{
flags
|=
IRQF_SHARED
;
...
...
@@ -1612,6 +1615,14 @@ static irqreturn_t netxen_msi_intr(int irq, void *data)
return
IRQ_HANDLED
;
}
static
irqreturn_t
netxen_msix_intr
(
int
irq
,
void
*
data
)
{
struct
netxen_adapter
*
adapter
=
data
;
napi_schedule
(
&
adapter
->
napi
);
return
IRQ_HANDLED
;
}
static
int
netxen_nic_poll
(
struct
napi_struct
*
napi
,
int
budget
)
{
struct
netxen_adapter
*
adapter
=
container_of
(
napi
,
struct
netxen_adapter
,
napi
);
...
...
drivers/net/tulip/de2104x.c
View file @
0ecc103a
...
...
@@ -464,13 +464,14 @@ static void de_rx (struct de_private *de)
drop
=
1
;
rx_next:
de
->
rx_ring
[
rx_tail
].
opts1
=
cpu_to_le32
(
DescOwn
);
if
(
rx_tail
==
(
DE_RX_RING_SIZE
-
1
))
de
->
rx_ring
[
rx_tail
].
opts2
=
cpu_to_le32
(
RingEnd
|
de
->
rx_buf_sz
);
else
de
->
rx_ring
[
rx_tail
].
opts2
=
cpu_to_le32
(
de
->
rx_buf_sz
);
de
->
rx_ring
[
rx_tail
].
addr1
=
cpu_to_le32
(
mapping
);
wmb
();
de
->
rx_ring
[
rx_tail
].
opts1
=
cpu_to_le32
(
DescOwn
);
rx_tail
=
NEXT_RX
(
rx_tail
);
}
...
...
drivers/net/tun.c
View file @
0ecc103a
...
...
@@ -260,10 +260,16 @@ static int update_filter(struct tap_filter *filter, void __user *arg)
nexact
=
n
;
/* The rest is hashed */
/* Remaining multicast addresses are hashed,
* unicast will leave the filter disabled. */
memset
(
filter
->
mask
,
0
,
sizeof
(
filter
->
mask
));
for
(;
n
<
uf
.
count
;
n
++
)
for
(;
n
<
uf
.
count
;
n
++
)
{
if
(
!
is_multicast_ether_addr
(
addr
[
n
].
u
))
{
err
=
0
;
/* no filter */
goto
done
;
}
addr_hash_set
(
filter
->
mask
,
addr
[
n
].
u
);
}
/* For ALLMULTI just set the mask to all ones.
* This overrides the mask populated above. */
...
...
net/bridge/br_forward.c
View file @
0ecc103a
...
...
@@ -67,6 +67,11 @@ static void __br_forward(const struct net_bridge_port *to, struct sk_buff *skb)
{
struct
net_device
*
indev
;
if
(
skb_warn_if_lro
(
skb
))
{
kfree_skb
(
skb
);
return
;
}
indev
=
skb
->
dev
;
skb
->
dev
=
to
->
dev
;
skb_forward_csum
(
skb
);
...
...
@@ -89,7 +94,7 @@ void br_deliver(const struct net_bridge_port *to, struct sk_buff *skb)
/* called with rcu_read_lock */
void
br_forward
(
const
struct
net_bridge_port
*
to
,
struct
sk_buff
*
skb
)
{
if
(
!
skb_warn_if_lro
(
skb
)
&&
should_deliver
(
to
,
skb
))
{
if
(
should_deliver
(
to
,
skb
))
{
__br_forward
(
to
,
skb
);
return
;
}
...
...
net/ipv6/ip6_tunnel.c
View file @
0ecc103a
...
...
@@ -249,8 +249,8 @@ static struct ip6_tnl *ip6_tnl_create(struct net *net, struct ip6_tnl_parm *p)
}
t
=
netdev_priv
(
dev
);
ip6_tnl_dev_init
(
dev
);
t
->
parms
=
*
p
;
ip6_tnl_dev_init
(
dev
);
if
((
err
=
register_netdevice
(
dev
))
<
0
)
goto
failed_free
;
...
...
net/ipv6/netfilter/nf_conntrack_proto_icmpv6.c
View file @
0ecc103a
...
...
@@ -49,8 +49,19 @@ static bool icmpv6_pkt_to_tuple(const struct sk_buff *skb,
static
const
u_int8_t
invmap
[]
=
{
[
ICMPV6_ECHO_REQUEST
-
128
]
=
ICMPV6_ECHO_REPLY
+
1
,
[
ICMPV6_ECHO_REPLY
-
128
]
=
ICMPV6_ECHO_REQUEST
+
1
,
[
ICMPV6_NI_QUERY
-
128
]
=
ICMPV6_NI_QUERY
+
1
,
[
ICMPV6_NI_REPLY
-
128
]
=
ICMPV6_NI_REPLY
+
1
[
ICMPV6_NI_QUERY
-
128
]
=
ICMPV6_NI_REPLY
+
1
,
[
ICMPV6_NI_REPLY
-
128
]
=
ICMPV6_NI_QUERY
+
1
};
static
const
u_int8_t
noct_valid_new
[]
=
{
[
ICMPV6_MGM_QUERY
-
130
]
=
1
,
[
ICMPV6_MGM_REPORT
-
130
]
=
1
,
[
ICMPV6_MGM_REDUCTION
-
130
]
=
1
,
[
NDISC_ROUTER_SOLICITATION
-
130
]
=
1
,
[
NDISC_ROUTER_ADVERTISEMENT
-
130
]
=
1
,
[
NDISC_NEIGHBOUR_SOLICITATION
-
130
]
=
1
,
[
NDISC_NEIGHBOUR_ADVERTISEMENT
-
130
]
=
1
,
[
ICMPV6_MLD2_REPORT
-
130
]
=
1
};
static
bool
icmpv6_invert_tuple
(
struct
nf_conntrack_tuple
*
tuple
,
...
...
@@ -178,6 +189,7 @@ icmpv6_error(struct net *net, struct sk_buff *skb, unsigned int dataoff,
{
const
struct
icmp6hdr
*
icmp6h
;
struct
icmp6hdr
_ih
;
int
type
;
icmp6h
=
skb_header_pointer
(
skb
,
dataoff
,
sizeof
(
_ih
),
&
_ih
);
if
(
icmp6h
==
NULL
)
{
...
...
@@ -194,6 +206,15 @@ icmpv6_error(struct net *net, struct sk_buff *skb, unsigned int dataoff,
return
-
NF_ACCEPT
;
}
type
=
icmp6h
->
icmp6_type
-
130
;
if
(
type
>=
0
&&
type
<
sizeof
(
noct_valid_new
)
&&
noct_valid_new
[
type
])
{
skb
->
nfct
=
&
nf_conntrack_untracked
.
ct_general
;
skb
->
nfctinfo
=
IP_CT_NEW
;
nf_conntrack_get
(
skb
->
nfct
);
return
NF_ACCEPT
;
}
/* is not error message ? */
if
(
icmp6h
->
icmp6_type
>=
128
)
return
NF_ACCEPT
;
...
...
net/netfilter/nf_conntrack_netlink.c
View file @
0ecc103a
...
...
@@ -434,7 +434,7 @@ static int ctnetlink_conntrack_event(struct notifier_block *this,
}
else
return
NOTIFY_DONE
;
if
(
!
nfnetlink_has_listeners
(
group
))
if
(
!
item
->
report
&&
!
nfnetlink_has_listeners
(
group
))
return
NOTIFY_DONE
;
skb
=
alloc_skb
(
NLMSG_GOODSIZE
,
GFP_ATOMIC
);
...
...
@@ -1215,6 +1215,16 @@ ctnetlink_create_conntrack(struct nlattr *cda[],
}
}
#ifdef CONFIG_NF_NAT_NEEDED
if
(
cda
[
CTA_NAT_SEQ_ADJ_ORIG
]
||
cda
[
CTA_NAT_SEQ_ADJ_REPLY
])
{
err
=
ctnetlink_change_nat_seq_adj
(
ct
,
cda
);
if
(
err
<
0
)
{
rcu_read_unlock
();
goto
err
;
}
}
#endif
if
(
cda
[
CTA_PROTOINFO
])
{
err
=
ctnetlink_change_protoinfo
(
ct
,
cda
);
if
(
err
<
0
)
{
...
...
@@ -1492,7 +1502,8 @@ static int ctnetlink_expect_event(struct notifier_block *this,
}
else
return
NOTIFY_DONE
;
if
(
!
nfnetlink_has_listeners
(
NFNLGRP_CONNTRACK_EXP_NEW
))
if
(
!
item
->
report
&&
!
nfnetlink_has_listeners
(
NFNLGRP_CONNTRACK_EXP_NEW
))
return
NOTIFY_DONE
;
skb
=
alloc_skb
(
NLMSG_GOODSIZE
,
GFP_ATOMIC
);
...
...
net/netfilter/xt_sctp.c
View file @
0ecc103a
...
...
@@ -105,7 +105,7 @@ match_packet(const struct sk_buff *skb,
switch
(
chunk_match_type
)
{
case
SCTP_CHUNK_MATCH_ALL
:
return
SCTP_CHUNKMAP_IS_CLEAR
(
info
->
chunkmap
);
return
SCTP_CHUNKMAP_IS_CLEAR
(
chunkmapcopy
);
case
SCTP_CHUNK_MATCH_ANY
:
return
false
;
case
SCTP_CHUNK_MATCH_ONLY
:
...
...
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