Michał Mirosław [Mon, 18 Apr 2011 13:31:21 +0000 (13:31 +0000)]
net: vmxnet3: convert to hw_features
This also removes private feature flags that were always set to true.
You may want to move vmxnet3_set_features() to vmxnet3_drv.c as a following
cleanup.
Signed-off-by: Michał Mirosław <mirq-linux@rere.qmqm.pl>
Signed-off-by: David S. Miller <davem@davemloft.net>
Michał Mirosław [Mon, 18 Apr 2011 13:31:21 +0000 (13:31 +0000)]
net: vxge: convert to hw_features
Side effect: ->gro_enable is removed as napi_gro_receive() does the
fallback itself.
Signed-off-by: Michał Mirosław <mirq-linux@rere.qmqm.pl>
Signed-off-by: David S. Miller <davem@davemloft.net>
Michał Mirosław [Mon, 18 Apr 2011 13:31:20 +0000 (13:31 +0000)]
net: chelsio: convert to hw_features
Also remove flags that were not used or are now redundant to hw_features bits.
No device had UDP_CSUM_CAPABLE set.
Signed-off-by: Michał Mirosław <mirq-linux@rere.qmqm.pl>
Signed-off-by: David S. Miller <davem@davemloft.net>
Michał Mirosław [Mon, 18 Apr 2011 13:31:20 +0000 (13:31 +0000)]
net: s2io: convert to hw_features
This removes advertising HW_CSUM as driver does not support it.
Note: driver advertises TSO6 but not IPV6_CSUM - bug maybe?
Signed-off-by: Michał Mirosław <mirq-linux@rere.qmqm.pl>
Signed-off-by: David S. Miller <davem@davemloft.net>
Michał Mirosław [Mon, 18 Apr 2011 13:31:20 +0000 (13:31 +0000)]
net: fix section mismatches
Fix build warnings like the following:
WARNING: drivers/net/built-in.o(.data+0x12434): Section mismatch in reference from the variable madgemc_driver to the variable .init.data:madgemc_adapter_ids
And add some consts to EISA device ID tables along the way.
Signed-off-by: Michał Mirosław <mirq-linux@rere.qmqm.pl>
Signed-off-by: David S. Miller <davem@davemloft.net>
Francois Romieu [Tue, 19 Apr 2011 05:53:24 +0000 (22:53 -0700)]
r8169: TSO fixes.
- the MSS value is actually contained in a 11 bits wide (0x7ff) field.
The extra bit in the former MSSMask did encompass the TSO command
bit ("LargeSend") as well (0xfff). Oops.
- the Tx descriptor layout is not the same through the whole chipset
family. The 8169 documentation, the 8168c documentation and Realtek's
drivers (8.020.00, 1.019.00, 6.014.00) highlight two layouts:
1. 8169, 8168 up to 8168b (included) and 8101
2. {8102e, 8168c} and beyond
- notwithstanding the "first descriptor" and "last descriptor" bits, the
same Tx descriptor content is enforced when a packet consists of several
descriptors. The chipsets are documented to require it.
Credits go to David Dillow <dave@thedillows.org> for the original patch.
Signed-off-by: Francois Romieu <romieu@fr.zoreil.com>
Cc: Realtek <nic_swsd@realtek.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Michał Mirosław [Fri, 15 Apr 2011 04:50:50 +0000 (04:50 +0000)]
net: myri10ge: convert to hw_features
Signed-off-by: Michał Mirosław <mirq-linux@rere.qmqm.pl>
Acked-by: Jon Mason <jon.mason@myri.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Mark Brown [Mon, 18 Apr 2011 01:04:37 +0000 (01:04 +0000)]
net: dm9000: Fix build
Commit c88fcb (net: dm9000: convert to hw_features) broke the build of
the dm9000 driver since it merged functions which use different names
for the board info structure used for I/O operations without updating
all the references to use the same name. Fix that.
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Ben Hutchings [Fri, 15 Apr 2011 13:47:51 +0000 (13:47 +0000)]
bonding, ipv4, ipv6, vlan: Handle NETDEV_BONDING_FAILOVER like NETDEV_NOTIFY_PEERS
It is undesirable for the bonding driver to be poking into higher
level protocols, and notifiers provide a way to avoid that. This does
mean removing the ability to configure reptitition of gratuitous ARPs
and unsolicited NAs.
Signed-off-by: Ben Hutchings <bhutchings@solarflare.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Ben Hutchings [Fri, 15 Apr 2011 13:46:49 +0000 (13:46 +0000)]
vlan: Propagate NETDEV_NOTIFY_PEERS notifier
The NETDEV_NOTIFY_PEERS notifier indicates that a device moved to a
different physical link; this also applies to any VLAN devices on top
of it.
Signed-off-by: Ben Hutchings <bhutchings@solarflare.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Ben Hutchings [Fri, 15 Apr 2011 13:46:02 +0000 (13:46 +0000)]
ipv6: Send unsolicited neighbour advertismements when notified
The NETDEV_NOTIFY_PEERS notifier is a request to send such
advertisements following migration to a different physical link,
e.g. virtual machine migration.
Signed-off-by: Ben Hutchings <bhutchings@solarflare.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
David Decotigny [Thu, 14 Apr 2011 16:11:34 +0000 (16:11 +0000)]
bnx2x: cosmetics: Using ethtool_cmd_speed() API
This updates bnx2x to use the ethtool_cmd_speed() family of functions
(see
b11f8d8c in 2.6.27-rc3 aka. "ethtool: Expand ethtool_cmd.speed to
32 bits") to get and set the link speed via ethtool. This allows to
avoid manually accessing ethtool_cmd's speed_hi field.
Signed-off-by: David Decotigny <decot@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
David S. Miller [Mon, 18 Apr 2011 03:47:07 +0000 (20:47 -0700)]
decnet: Don't leak entries when rebuilding zone.
As noticed by Ben Hutchings, when we move entries from
one table to another we leak all except the first entry.
Put back the "next" variable removed by commit
9bf9055eb716f85372c41b3fbc51f90bc7653740 ("decnet: Fix set-but-unused
variable.") and use it properly.
Reported-by: Ben Hutchings <bhutchings@solarflare.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Joe Perches [Sat, 16 Apr 2011 14:15:26 +0000 (14:15 +0000)]
via-rhine: Assign random MAC address if necessary
Roger Luethi has had several reports of Rhine NICs providing
an invalid MAC address. If so, assign a random MAC address so
the hardware can still be used.
Tested as a standalone interface, as carrier for ppp, and as a
bonding slave.
Original-patch-by: Alexandru Gagniuc <mr.nuke.me@gmail.com>
Signed-off-by: Joe Perches <joe@perches.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Joe Perches [Sat, 16 Apr 2011 14:15:25 +0000 (14:15 +0000)]
via_rhine: Use netdev_<level> and pr_<level>
Use the more current logging styles.
Add #define DEBUG to make netdev_dbg always active.
Signed-off-by: Joe Perches <joe@perches.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Stephen Hemminger [Mon, 18 Apr 2011 00:52:51 +0000 (17:52 -0700)]
bridge: fix accidental creation of sysfs directory
Commit
bb900b27a2f49b37bc38c08e656ea13048fee13b ("bridge: allow
creating bridge devices with netlink") introduced a bug in net-next
because of a typo in notifier. Every device would have the sysfs
bridge directory (and files).
Signed-off-by: Stephen Hemminger <shemminger@vyatta.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Michał Mirosław [Sat, 16 Apr 2011 13:05:08 +0000 (13:05 +0000)]
net: cxgb4{,vf}: convert to hw_features
Signed-off-by: Michał Mirosław <mirq-linux@rere.qmqm.pl>
Acked-by: Dimitris Michailidis <dm@chelsio.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Thiago Farina [Mon, 18 Apr 2011 00:49:21 +0000 (17:49 -0700)]
drivers/net/usb/usbnet.c: Use FIELD_SIZEOF macro in usbnet_init() function.
Signed-off-by: Thiago Farina <tfransosi@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Michał Mirosław [Sun, 17 Apr 2011 00:15:47 +0000 (00:15 +0000)]
net: ibm_newemac: convert to hw_features
Side effect: allow toggling of TX offloads.
Signed-off-by: Michał Mirosław <mirq-linux@rere.qmqm.pl>
Signed-off-by: David S. Miller <davem@davemloft.net>
Michał Mirosław [Sun, 17 Apr 2011 00:15:47 +0000 (00:15 +0000)]
net: greth: convert to hw_features
Note: Driver modifies its struct net_device_ops. This will break if used for
multiple devices that are not all the same (if that HW config is possible).
Signed-off-by: Michał Mirosław <mirq-linux@rere.qmqm.pl>
Signed-off-by: David S. Miller <davem@davemloft.net>
Michał Mirosław [Sun, 17 Apr 2011 00:15:47 +0000 (00:15 +0000)]
net: niu: convert to hw_features
Side effect: allow toggling of TX offloads.
Signed-off-by: Michał Mirosław <mirq-linux@rere.qmqm.pl>
Signed-off-by: David S. Miller <davem@davemloft.net>
Michał Mirosław [Sun, 17 Apr 2011 00:15:47 +0000 (00:15 +0000)]
net: ehea: convert to hw_features
Signed-off-by: Michał Mirosław <mirq-linux@rere.qmqm.pl>
Signed-off-by: David S. Miller <davem@davemloft.net>
Michał Mirosław [Sun, 17 Apr 2011 00:15:47 +0000 (00:15 +0000)]
net: benet: convert to hw_features - fixup
Remove be_set_flags() as it's already covered by hw_features.
Signed-off-by: Michał Mirosław <mirq-linux@rere.qmqm.pl>
Acked-by: Ajit Khaparde ajit.khaparde@emulex.com
Signed-off-by: David S. Miller <davem@davemloft.net>
Michał Mirosław [Sun, 17 Apr 2011 00:15:47 +0000 (00:15 +0000)]
net: typhoon: convert to hw_features
Signed-off-by: Michał Mirosław <mirq-linux@rere.qmqm.pl>
Signed-off-by: David S. Miller <davem@davemloft.net>
Michał Mirosław [Sun, 17 Apr 2011 00:15:46 +0000 (00:15 +0000)]
net: mv643xx: convert to hw_features
Side effect: don't reenable RXCSUM on every ifdown/ifup.
Signed-off-by: Michał Mirosław <mirq-linux@rere.qmqm.pl>
Signed-off-by: David S. Miller <davem@davemloft.net>
Michał Mirosław [Sun, 17 Apr 2011 00:15:46 +0000 (00:15 +0000)]
net: tehuti: convert to hw_features
As a side effect, make TX offloads changeable.
Signed-off-by: Michał Mirosław <mirq-linux@rere.qmqm.pl>
Signed-off-by: David S. Miller <davem@davemloft.net>
Michał Mirosław [Sun, 17 Apr 2011 00:15:46 +0000 (00:15 +0000)]
net: cxgb3: convert to hw_features
This removes some of the remnants of LRO -> GRO conversion.
Signed-off-by: Michał Mirosław <mirq-linux@rere.qmqm.pl>
Signed-off-by: David S. Miller <davem@davemloft.net>
Michał Mirosław [Sun, 17 Apr 2011 00:15:46 +0000 (00:15 +0000)]
net: macvlan: convert to hw_features
Not much of a conversion anyway - macvlan has no way to change the offload
settings independently to its base device.
Signed-off-by: Michał Mirosław <mirq-linux@rere.qmqm.pl>
Signed-off-by: David S. Miller <davem@davemloft.net>
David S. Miller [Mon, 18 Apr 2011 00:37:29 +0000 (17:37 -0700)]
Merge branch 'batman-adv/next' of git://git.open-mesh.org/ecsv/linux-merge
David S. Miller [Mon, 18 Apr 2011 00:08:41 +0000 (17:08 -0700)]
be2net: Fix unused-but-set variables.
The variables 'tx_min' and 'tx_max' are set but not used in
be_set_coalesce().
Similarly for 'region' in be_do_flash().
Just kill them off.
Signed-off-by: David S. Miller <davem@davemloft.net>
David S. Miller [Mon, 18 Apr 2011 00:07:57 +0000 (17:07 -0700)]
isdn: i4l: isdn_tty: Fix unused-but-set variables.
The variable 'fcr' is set but not used in isdn_tty_change_speed().
Just kill it off.
Signed-off-by: David S. Miller <davem@davemloft.net>
David S. Miller [Mon, 18 Apr 2011 00:06:15 +0000 (17:06 -0700)]
netfilter: ip6table_mangle: Fix set-but-unused variables.
The variable 'flowlabel' is set but unused in ip6t_mangle_out().
The intention here was to compare this key to the header value after
mangling, and trigger a route lookup on mismatch.
Make it so.
Signed-off-by: David S. Miller <davem@davemloft.net>
David S. Miller [Mon, 18 Apr 2011 00:04:48 +0000 (17:04 -0700)]
netfilter: ip6_tables: Fix set-but-unused variables.
The variable 'target' is set but unused in compat_copy_entry_from_user().
Just kill it off.
Signed-off-by: David S. Miller <davem@davemloft.net>
David S. Miller [Mon, 18 Apr 2011 00:03:33 +0000 (17:03 -0700)]
netfilter: nf_conntrack_standalone: Fix set-but-unused variables.
The variable 'ret' is set but unused in ct_seq_show().
This was obviously meant to be used to propagate error codes
to the caller, so make it so.
Signed-off-by: David S. Miller <davem@davemloft.net>
David S. Miller [Mon, 18 Apr 2011 00:02:29 +0000 (17:02 -0700)]
netfilter: nfnetlink_log: Fix set-but-unused variables.
The variable 'tmp_uint' is set but unused in __build_packet_message().
Just kill it off.
Signed-off-by: David S. Miller <davem@davemloft.net>
David S. Miller [Mon, 18 Apr 2011 00:01:49 +0000 (17:01 -0700)]
netlabel: Fix set-but-unused variables.
The variable 'type_str' is set but unused in netlbl_cipsov4_add().
Just kill it off.
Signed-off-by: David S. Miller <davem@davemloft.net>
David S. Miller [Mon, 18 Apr 2011 00:01:05 +0000 (17:01 -0700)]
l2tp: Fix set-but-unused variables.
The variable 'ret' is set but unused in l2tp_nl_register_ops().
This was obviously meant to maintain error codes which are
returned to the caller, make it so.
Signed-off-by: David S. Miller <davem@davemloft.net>
David S. Miller [Sun, 17 Apr 2011 23:59:50 +0000 (16:59 -0700)]
irda: irproc: Fix set-but-unused variables.
The variable 'd' is set but unused in irda_proc_register().
Just kill it off.
Signed-off-by: David S. Miller <davem@davemloft.net>
David S. Miller [Sun, 17 Apr 2011 23:59:09 +0000 (16:59 -0700)]
irda: irlap_event: Fix set-but-unused variables.
The variable 'ret' is set but unused in irlap_state_sclose().
Just kill it off.
Signed-off-by: David S. Miller <davem@davemloft.net>
David S. Miller [Sun, 17 Apr 2011 23:57:55 +0000 (16:57 -0700)]
caif: Fix set-but-unused variables.
The variable 'caifdef' is set but unused in modemcmd().
Similarly for 'net' in receive(), and 'res' in
caif_device_notify() and caif_exit_net().
Just kill them off.
Signed-off-by: David S. Miller <davem@davemloft.net>
David S. Miller [Sun, 17 Apr 2011 23:56:12 +0000 (16:56 -0700)]
bnx2x: Fix set-but-unused variables.
The variable 'rc' is set but unused in bnx2x_timer().
Similarly for 'hc_index_p' in bnx2x_init_sb(), and 'port' in
bnx2x_get_hwinfo().
Just kill them off.
Signed-off-by: David S. Miller <davem@davemloft.net>
David S. Miller [Sun, 17 Apr 2011 23:51:36 +0000 (16:51 -0700)]
bna: Fix set-but-unused variables.
The variable 'pgoff' is set but unused in bfa_nw_ioc_fwver_get()
and bfa_ioc_download_fw().
Similarly for 'cmd_h' in bna_mbox_flush_q and the entirety of
bna_rit_mod_uninit() is unused since variables are purely set but no
action is made using them.
Same for 'bna' in bna_rit_create() and 'ret' in bna_rx_create().
Just kill them off.
Signed-off-by: David S. Miller <davem@davemloft.net>
David S. Miller [Sun, 17 Apr 2011 23:48:53 +0000 (16:48 -0700)]
isdn: mISDN: socket: Fix set-but-unused variables.
The variable 'len' is set but unused in data_sock_getsockopt().
The code should use 'len' to validate that the user's socket option is
indeed the right size.
Signed-off-by: David S. Miller <davem@davemloft.net>
David S. Miller [Sun, 17 Apr 2011 23:46:50 +0000 (16:46 -0700)]
isdn: i4l: isdn_net: Fix set-but-unused variables.
The variable 'unused' is set but unused in
isdn_net_ciscohdlck_slarp_in(). Just kill it off.
Signed-off-by: David S. Miller <davem@davemloft.net>
David S. Miller [Sun, 17 Apr 2011 23:45:51 +0000 (16:45 -0700)]
isdn: i4l: isdn_common: Fix set-but-unused variables.
The variable 'ch' is set but unused in isdn_capi_rec_hl_msg(). Just
kill it off.
Similarly for 'chidx' in isdn_ioctl() and 'di' in
isdn_capi_rec_hl_msg().
Signed-off-by: David S. Miller <davem@davemloft.net>
David S. Miller [Sun, 17 Apr 2011 23:44:12 +0000 (16:44 -0700)]
isdn: teles_cs: Fix set-but-unused variables.
The variable 'dev' is set but unused in teles_cs_config(). Just
kill it off.
Signed-off-by: David S. Miller <davem@davemloft.net>
David S. Miller [Sun, 17 Apr 2011 23:43:20 +0000 (16:43 -0700)]
isdn: l3ni1: Fix set-but-unused variables.
The variable 'cause' is set but unused in ni1up(). Just
kill it off.
Signed-off-by: David S. Miller <davem@davemloft.net>
David S. Miller [Sun, 17 Apr 2011 23:42:15 +0000 (16:42 -0700)]
isdn: l3dss1: Fix set-but-unused variables.
The variable 'cause' is set but unused in dss1up(). Just
kill it off.
Signed-off-by: David S. Miller <davem@davemloft.net>
David S. Miller [Sun, 17 Apr 2011 23:41:29 +0000 (16:41 -0700)]
isdn: jade: Fix set-but-unused variables.
The variable 'i' is set but unused in JadeVersion(). Just
kill it off.
Signed-off-by: David S. Miller <davem@davemloft.net>
David S. Miller [Sun, 17 Apr 2011 23:40:30 +0000 (16:40 -0700)]
isdn: ipacx: Fix set-but-unused variables.
The variable 'cda2_cr' is set but unused in ctrl_complete(). Just
kill it off.
Keep the cs->readisac() call just in case the register read has side
effects.
Signed-off-by: David S. Miller <davem@davemloft.net>
David S. Miller [Sun, 17 Apr 2011 23:39:18 +0000 (16:39 -0700)]
isdn: hfc_usb: Fix set-but-unused variables.
The variable 'buf' is set but unused in
ctrl_complete(). Just kill it off.
Similarly for 'err' in hfc_usb_init().
Signed-off-by: David S. Miller <davem@davemloft.net>
David S. Miller [Sun, 17 Apr 2011 23:38:33 +0000 (16:38 -0700)]
isdn: elsa_ser: Fix set-but-unused variables.
The variable 'bits' is set but unused in
change_speed(). Just kill it off.
Signed-off-by: David S. Miller <davem@davemloft.net>
David S. Miller [Sun, 17 Apr 2011 23:37:11 +0000 (16:37 -0700)]
isdn: elsa_cs: Fix set-but-unused variables.
The variable 'dev' is set but unused in
elsa_cs_config(). Just kill it off.
Signed-off-by: David S. Miller <davem@davemloft.net>
David S. Miller [Sun, 17 Apr 2011 23:36:28 +0000 (16:36 -0700)]
isdn: arcofi: Fix set-but-unused variables.
The variable 'val' is set but unused in
send_arcofi(). Just kill it off.
Signed-off-by: David S. Miller <davem@davemloft.net>
David S. Miller [Sun, 17 Apr 2011 23:35:27 +0000 (16:35 -0700)]
isdn: hfcsusb: Fix set-but-unused variables.
The variable 'buf' is set but unused in
ctrl_complete(). Just kill it off.
Similarly for the variable 'err' in setup_hfcsusb().
Signed-off-by: David S. Miller <davem@davemloft.net>
David S. Miller [Sun, 17 Apr 2011 23:34:50 +0000 (16:34 -0700)]
isdn: hfcpci: Fix set-but-unused variables.
The variable 'total' is set but unused in
hfcpci_empty_bfifo(). Just kill it off.
Similarly for the variable 'val' in ph_state_nt().
Signed-off-by: David S. Miller <davem@davemloft.net>
David S. Miller [Sun, 17 Apr 2011 23:23:22 +0000 (16:23 -0700)]
isdn: eicon: Fix set-but-unused variables.
The variable 'best_id' is set but unused in
diva_mnt_add_xdi_adapter(). Just kill it off.
Similarly for the variable 'CIP' in connect_req(), 'Number' in
sig_ind(), 'Info' in dtmf_confirmation() mixer_command()
fax_connect_ack_command() fax_edata_ack_command()
rtp_connect_b3_res_command() and rtp_connect_b3_res_command(), and 'a'
in mixer_indication_coefs_set(),
Signed-off-by: David S. Miller <davem@davemloft.net>
David S. Miller [Sun, 17 Apr 2011 23:22:33 +0000 (16:22 -0700)]
isdn: gigaset: Fix set-but-unused variable.
The variable 'offset' is set but unused in
write_iso_tasklet(). Just kill it off.
Signed-off-by: David S. Miller <davem@davemloft.net>
Andrew Lunn [Sun, 17 Apr 2011 18:39:07 +0000 (20:39 +0200)]
batman-adv: Set the txqueuelen to zero when creating soft interface
Like other virtual interfaces, e.g. br0, we don't need a transmit
queue. Packets should only be queued on real interfaces which are
underneath. In practice this patch makes little difference since the
virtual interfaces can accept packets as fast as they come, but the
patch will avoid bufferbloat questions to the mailling lists in the
future.
Signed-off-by: Andrew Lunn <andrew@lunn.ch>
Tested-by: Linus Lüssing <linus.luessing@web.de>
Signed-off-by: Marek Lindner <lindner_marek@yahoo.de>
Signed-off-by: Sven Eckelmann <sven@narfation.org>
Simon Wunderlich [Sun, 17 Apr 2011 18:34:27 +0000 (20:34 +0200)]
batman-adv: protect softif_neigh by rcu
Add get/set wrapper functions for softif_neigh and
use rcu functions to manipulate the pointers.
Signed-off-by: Simon Wunderlich <siwu@hrz.tu-chemnitz.de>
Signed-off-by: Marek Lindner <lindner_marek@yahoo.de>
Signed-off-by: Sven Eckelmann <sven@narfation.org>
Marek Lindner [Wed, 23 Mar 2011 10:24:34 +0000 (11:24 +0100)]
batman-adv: concentrate all curr_gw related rcu operations in select/deselect functions
Signed-off-by: Marek Lindner <lindner_marek@yahoo.de>
Signed-off-by: Sven Eckelmann <sven@narfation.org>
Linus Lüssing [Mon, 14 Mar 2011 22:43:40 +0000 (22:43 +0000)]
batman-adv: Protect global TQ window with a spinlock
Signed-off-by: Linus Lüssing <linus.luessing@web.de>
Signed-off-by: Marek Lindner <lindner_marek@yahoo.de>
Signed-off-by: Sven Eckelmann <sven@narfation.org>
Linus Lüssing [Mon, 14 Mar 2011 22:43:37 +0000 (22:43 +0000)]
batman-adv: Make orig_node->router an rcu protected pointer
The rcu protected macros rcu_dereference() and rcu_assign_pointer()
for the orig_node->router need to be used, as well as spin/rcu locking.
Otherwise we might end up using a router pointer pointing to already
freed memory.
Therefore this commit introduces the safe getter method
orig_node_get_router().
Signed-off-by: Linus Lüssing <linus.luessing@web.de>
Signed-off-by: Marek Lindner <lindner_marek@yahoo.de>
Signed-off-by: Sven Eckelmann <sven@narfation.org>
Linus Lüssing [Mon, 14 Mar 2011 22:43:33 +0000 (22:43 +0000)]
batman-adv: Simplify gw_check_election(), use gw_get_selected()
gw_get_selected() can get us the desired orig_node directly, therefore
reusing that function in gw_check_election().
Signed-off-by: Linus Lüssing <linus.luessing@web.de>
Signed-off-by: Marek Lindner <lindner_marek@yahoo.de>
Signed-off-by: Sven Eckelmann <sven@narfation.org>
Linus Lüssing [Mon, 14 Mar 2011 22:43:30 +0000 (22:43 +0000)]
batman-adv: Make gateway_get_selected type safe
Make the return value explicit instead of (void *).
Signed-off-by: Linus Lüssing <linus.luessing@web.de>
Signed-off-by: Marek Lindner <lindner_marek@yahoo.de>
Signed-off-by: Sven Eckelmann <sven@narfation.org>
Linus Lüssing [Mon, 14 Mar 2011 22:43:27 +0000 (22:43 +0000)]
batman-adv: Move bonding / iface alternating router search to own functions
This decreases the size of find_router() by outsourcing the router
search for the bonding and interface alternating modes to their own sub
functions. This shall make it easier to keep track of the correct
refcounting later.
Signed-off-by: Linus Lüssing <linus.luessing@web.de>
Signed-off-by: Marek Lindner <lindner_marek@yahoo.de>
Signed-off-by: Sven Eckelmann <sven@narfation.org>
David S. Miller [Sun, 17 Apr 2011 07:55:20 +0000 (00:55 -0700)]
atl1c: Fix set-but-unused variable.
The variable 'extra_size' is set but unused in
atl1c_configure_tx(). Just kill it off.
Signed-off-by: David S. Miller <davem@davemloft.net>
David S. Miller [Sun, 17 Apr 2011 07:54:51 +0000 (00:54 -0700)]
atl1e: Fix set-but-unused variable.
The variable 'tx_ring' is set but unused in
atl1e_init_ring_resources(). Just kill it off.
Signed-off-by: David S. Miller <davem@davemloft.net>
David S. Miller [Sun, 17 Apr 2011 07:51:40 +0000 (00:51 -0700)]
atlx: Fix set-but-unused variable.
The variable 'tpc' is set but unused in atl1_intr_tx().
Just kill it off.
Signed-off-by: David S. Miller <davem@davemloft.net>
David S. Miller [Sun, 17 Apr 2011 07:50:58 +0000 (00:50 -0700)]
bonding: Fix set-but-unused variable.
The variable 'vlan_dev' is set but unused in
bond_send_gratuitous_arp(). Just kill it off.
Signed-off-by: David S. Miller <davem@davemloft.net>
David S. Miller [Sun, 17 Apr 2011 07:48:01 +0000 (00:48 -0700)]
atm: lec: Fix set-but-unused variables.
The variable 'eth' is set but unused in lec_handle_bridge(). Also,
the variable 'priv' is set but unused in lane_module_cleanup().
Just kill them off.
Signed-off-by: David S. Miller <davem@davemloft.net>
David S. Miller [Sun, 17 Apr 2011 07:46:45 +0000 (00:46 -0700)]
ax25: Fix set-but-unused variable.
The variable 's' is set but unused in ax25_protocol_release().
Just kill it off.
Signed-off-by: David S. Miller <davem@davemloft.net>
David S. Miller [Sun, 17 Apr 2011 07:15:22 +0000 (00:15 -0700)]
econet: Fix set-but-unused variable.
#if 0'd out code for IP handling in aun_data_available() has
been commented out since the beginning, which makes the variable
"ip" set but not used.
Kill it off as well as the stub code.
Signed-off-by: David S. Miller <davem@davemloft.net>
David S. Miller [Sun, 17 Apr 2011 07:14:09 +0000 (00:14 -0700)]
decnet: Fix set-but-unused variable.
"next" in dn_rebuild_zone() is set but not actually used,
kill it off.
Signed-off-by: David S. Miller <davem@davemloft.net>
David S. Miller [Sun, 17 Apr 2011 07:13:16 +0000 (00:13 -0700)]
pktgen: Fix set-but-unused variable.
"iph" in pktgen_output_ipsec() is set but never actually
used. Kill it off.
Signed-off-by: David S. Miller <davem@davemloft.net>
David S. Miller [Sun, 17 Apr 2011 07:11:25 +0000 (00:11 -0700)]
atm: solos-pci: Fix set-but-unused variable.
This is just a readback to entire completion of a register
write, keep the readback but kill the unused variable.
Signed-off-by: David S. Miller <davem@davemloft.net>
David S. Miller [Sun, 17 Apr 2011 07:10:17 +0000 (00:10 -0700)]
atm: idt77252: Fix set-but-unused variables.
Two cases here:
1) idt77252_rx_raw() really does not make any use of the
extracted PTI field of the atm header.
2) idt77252_collect_stat() only uses the register values
in code which has been compiled out by a "NOTDEF" cpp
test for more than 10 years. Just kill this NOTDEF
code entirely, but keep the register reads in case
they have side effects.
Signed-off-by: David S. Miller <davem@davemloft.net>
David S. Miller [Sun, 17 Apr 2011 07:07:55 +0000 (00:07 -0700)]
atm: he: Fix undefined sequence points.
GCC complains in these queue index operations because we
perform operations of the form:
x = some_operation(++x);
which is undefined. Replace with:
x = some_operation(x + 1);
which is well defined and provides the intended operation.
Signed-off-by: David S. Miller <davem@davemloft.net>
David S. Miller [Sun, 17 Apr 2011 07:03:38 +0000 (00:03 -0700)]
atm: eni: Kill set-but-unused variables.
The variable eni_dev is initialized but never subsequently used in
these two functions.
Signed-off-by: David S. Miller <davem@davemloft.net>
Michał Mirosław [Fri, 15 Apr 2011 04:50:50 +0000 (04:50 +0000)]
net: gianfar: convert to hw_features
Note: I bet that gfar_set_features() don't really need a full reset.
Signed-off-by: Michał Mirosław <mirq-linux@rere.qmqm.pl>
Signed-off-by: David S. Miller <davem@davemloft.net>
Michał Mirosław [Fri, 15 Apr 2011 04:50:49 +0000 (04:50 +0000)]
net: mlx4: convert to hw_features
Signed-off-by: Michał Mirosław <mirq-linux@rere.qmqm.pl>
Signed-off-by: David S. Miller <davem@davemloft.net>
Michał Mirosław [Fri, 15 Apr 2011 04:50:49 +0000 (04:50 +0000)]
net: forcedeth: convert to hw_features
This also fixes a race around np->txrxctl_bits while changing RXCSUM offload.
Signed-off-by: Michał Mirosław <mirq-linux@rere.qmqm.pl>
Signed-off-by: David S. Miller <davem@davemloft.net>
Michał Mirosław [Fri, 15 Apr 2011 04:50:49 +0000 (04:50 +0000)]
net: dm9000: convert to hw_features
Signed-off-by: Michał Mirosław <mirq-linux@rere.qmqm.pl>
Signed-off-by: David S. Miller <davem@davemloft.net>
Michał Mirosław [Fri, 15 Apr 2011 04:50:49 +0000 (04:50 +0000)]
net: spider_net: convert to hw_features
Signed-off-by: Michał Mirosław <mirq-linux@rere.qmqm.pl>
Signed-off-by: David S. Miller <davem@davemloft.net>
Rob Landley [Fri, 15 Apr 2011 02:26:25 +0000 (02:26 +0000)]
net: minor cleanup to net_namespace.c.
Inline a small static function that's only ever called from one place.
Signed-off-by: Rob Landley <rlandley@parallels.com>
Reviewed-by: Jiri Pirko <jpirko@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Daniel Walter [Wed, 13 Apr 2011 21:10:57 +0000 (21:10 +0000)]
ipv6: RTA_PREFSRC support for ipv6 route source address selection
[ipv6] Add support for RTA_PREFSRC
This patch allows a user to select the preferred source address
for a specific IPv6-Route. It can be set via a netlink message
setting RTA_PREFSRC to a valid IPv6 address which must be
up on the device the route will be bound to.
Signed-off-by: Daniel Walter <dwalter@barracuda.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Daniel Walter [Wed, 13 Apr 2011 21:09:25 +0000 (21:09 +0000)]
ipv6: ignore looped-back NA while dad is running
[ipv6] Ignore looped-back NAs while in Duplicate Address Detection
If we send an unsolicited NA shortly after bringing up an
IPv6 address, the duplicate address detection algorithm
fails and the ip stays in tentative mode forever.
This is due a missing check if the NA is looped-back to us.
Signed-off-by: Daniel Walter <dwalter@barracuda.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Ben Hutchings [Fri, 15 Apr 2011 06:23:45 +0000 (23:23 -0700)]
rndis_host: Quirky devices are still 'point-to-point'
My changes in commit
4d42d417be75d750b82798922b6e775915e11bce were
written some time before the introduction of FLAG_POINTTOPOINT, so
didn't include that flag in the new driver_info. Change the new
driver_info to be consistent.
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
Signed-off-by: David S. Miller <davem@davemloft.net>
David Decotigny [Wed, 13 Apr 2011 15:22:31 +0000 (15:22 +0000)]
net-bonding: Adding support for throughputs larger than 65536 Mbps
This updates the bonding driver to support v2.6.27-rc3 enhancements
(
b11f8d8c aka. "ethtool: Expand ethtool_cmd.speed to 32 bits") which
allow to encode the Mbps link speed on 32-bits (Max 4 Pbps) instead of
16 (Max 65536 Mbps).
This patch also attempts to compact struct slave by reordering its
fields.
Signed-off-by: David Decotigny <decot@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
David Decotigny [Wed, 13 Apr 2011 15:22:30 +0000 (15:22 +0000)]
net-bonding: Fix minor/cosmetic type inconsistencies
The __get_link_speed() function returns a u16 value which was stored
in a u32 local variable. This patch uses the return value directly,
thus fixing that minor type consistency.
The 'duplex' field in struct slave being encoded on 8 bits, to be more
consistent we use a u8 integer (instead of u16) whenever we copy it to
local variables.
Signed-off-by: David Decotigny <decot@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
David Decotigny [Wed, 13 Apr 2011 15:22:29 +0000 (15:22 +0000)]
net-bonding: Fix minor sparse complaints
This gets rid of minor sparse complaints:
drivers/net/bonding/bond_main.c:4361:4: warning: do-while statement is not a compound statement
drivers/net/bonding/bond_main.c:243:12: warning: symbol 'bond_mode_name' was not declared. Should it be static?
Signed-off-by: David Decotigny <decot@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
stephen hemminger [Thu, 14 Apr 2011 05:51:52 +0000 (05:51 +0000)]
qlge: make nic_operations struct const
The struct nic_operations is just function pointers and should be
declared const for added security.
Signed-off-by: Stephen Hemminger <shemminger@vyatta.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
stephen hemminger [Thu, 14 Apr 2011 05:50:12 +0000 (05:50 +0000)]
sfc: make function tables const
The phy, mac, and board information structures should be const.
Since tables contain function pointer this improves security
(at least theoretically).
Compile tested only.
Signed-off-by: Stephen Hemminger <shemminger@vyatta.com>
Acked-by: Ben Hutchings <bhutchings@solarflare.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Rémi Denis-Courmont [Tue, 12 Apr 2011 23:27:36 +0000 (23:27 +0000)]
Phonet: convert bound sockets hash list to RCU
This gets rid of the last spinlock in the Phonet stack proper.
Signed-off-by: Rémi Denis-Courmont <remi.denis-courmont@nokia.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Allan, Bruce W [Wed, 13 Apr 2011 13:09:10 +0000 (13:09 +0000)]
ethtool: allow custom interval for physical identification
When physical identification of an adapter is done by toggling the
mechanism on and off through software utilizing the set_phys_id operation,
it is done with a fixed duration for both on and off states. Some drivers
may want to set a custom duration for the on/off intervals. This patch
changes the API so the return code from the driver's entry point when it
is called with ETHTOOL_ID_ACTIVE can specify the frequency at which to
cycle the on/off states, and updates the drivers that have already been
converted to use the new set_phys_id and use the synchronous method for
identifying an adapter.
The physical identification frequency set in the updated drivers is based
on how it was done prior to the introduction of set_phys_id.
Compile tested only. Also fixes a compiler warning in sfc.
v2: drivers do not return -EINVAL for ETHOOL_ID_ACTIVE
v3: fold patchset into single patch and cleanup per Ben's feedback
Signed-off-by: Bruce Allan <bruce.w.allan@intel.com>
Cc: Ben Hutchings <bhutchings@solarflare.com>
Cc: Sathya Perla <sathya.perla@emulex.com>
Cc: Subbu Seetharaman <subbu.seetharaman@emulex.com>
Cc: Ajit Khaparde <ajit.khaparde@emulex.com>
Cc: Michael Chan <mchan@broadcom.com>
Cc: Eilon Greenstein <eilong@broadcom.com>
Cc: Divy Le Ray <divy@chelsio.com>
Cc: Don Fry <pcnet32@frontier.com>
Cc: Jon Mason <jdmason@kudzu.us>
Cc: Solarflare linux maintainers <linux-net-drivers@solarflare.com>
Cc: Steve Hodgson <shodgson@solarflare.com>
Cc: Stephen Hemminger <shemminger@linux-foundation.org>
Cc: Matt Carlson <mcarlson@broadcom.com>
Acked-by: Jon Mason <jdmason@kudzu.us>
Acked-by: Ben Hutchings <bhutchings@solarflare.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
David S. Miller [Thu, 14 Apr 2011 21:49:37 +0000 (14:49 -0700)]
ipv4: Call fib_select_default() only when actually necessary.
fib_select_default() is a complete NOP, and completely pointless
to invoke, when we have no more than 1 default route installed.
And this is far and away the common case.
So remember how many prefixlen==0 routes we have in the routing
table, and elide the call when we have no more than one of those.
This cuts output route creation time by 157 cycles on Niagara2+.
In order to add the new int to fib_table, we have to correct the type
of ->tb_data[] to unsigned long, otherwise the private area will be
unaligned on 64-bit systems.
Signed-off-by: David S. Miller <davem@davemloft.net>
Reviewed-by: Eric Dumazet <eric.dumazet@gmail.com>
Ralf Baechle [Thu, 14 Apr 2011 07:20:07 +0000 (00:20 -0700)]
NET: AX.25, NETROM, ROSE: Remove SOCK_DEBUG calls
Nobody alive seems to recall when they last were useful.
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
John Fastabend [Mon, 4 Apr 2011 04:29:46 +0000 (04:29 +0000)]
ixgbe: DCB, X540 devices do not respond to pause frames
DCB enabled X540 devices are not responding to pause frames
due to a missing register set that was added for these
devices that did not exist in other devices.
Signed-off-by: John Fastabend <john.r.fastabend@intel.com>
Tested-by: Ross Brattain <ross.b.brattain@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
John Fastabend [Mon, 4 Apr 2011 04:29:41 +0000 (04:29 +0000)]
ixgbe: DCB, misallocated packet buffer size with X540 device
The X540 device has a smaller packet buffer but the DCB configuration
never took this into account. Under stress this can result in the DMA
engine hanging and TX Unit hang occurring to reset the device. This
patch reworks the packet buffer allocation routine used for DCB on
82599 and X540 devices to account for RX packet buffer sizes.
This fixes the immediate hang. We should consolidate the various
hardware specific routines for configuring features into a single
routine. This will make it much harder to miss feature cases like
this.
Signed-off-by: John Fastabend <john.r.fastabend@intel.com>
Tested-by: Ross Brattain <ross.b.brattain@intel.com>
Tested-by: Evan Swanson <evan.swanson@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Emil Tantilov [Thu, 31 Mar 2011 09:36:18 +0000 (09:36 +0000)]
ixgbe: make device_caps() generic
x540 has the same device capability word in the EEPROM as 82599.
This patch renames ixgbe_get_device_caps_82599 to
ixgbe_get_device_caps_generic, moves it to ixgbe_common.h and
sets up the function pointer for x540.
Signed-off-by: Emil Tantilov <emil.s.tantilov@intel.com>
Tested-by: Evan Swanson <evan.swanson@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>