linux/drivers/net/ethernet/mellanox/mlx5/core
Arnd Bergmann abeffce90c net/mlx5e: Fix a -Wmaybe-uninitialized warning
As found by Olof's build bot, we gain a harmless warning about a
potential uninitialized variable reference in mlx5:

drivers/net/ethernet/mellanox/mlx5/core/en_tc.c: In function 'parse_tc_fdb_actions':
drivers/net/ethernet/mellanox/mlx5/core/en_tc.c:769:13: warning: 'out_dev' may be used uninitialized in this function [-Wmaybe-uninitialized]
drivers/net/ethernet/mellanox/mlx5/core/en_tc.c:811:21: note: 'out_dev' was declared here

This was introduced through the addition of an 'IS_ERR/PTR_ERR' pair
that gcc is unfortunately unable to completely figure out.

The problem being gcc cannot tell that if(IS_ERR()) in
mlx5e_route_lookup_ipv4() is equivalent to checking if(err) later,
so it assumes that 'out_dev' is used after the 'return PTR_ERR(rt)'.

The PTR_ERR_OR_ZERO() case by comparison is fairly easy to detect
by gcc, so it can't get that wrong, so it no longer warns.

Hadar Hen Zion already attempted to fix the warning earlier by adding fake
initializations, but that ended up not fully addressing all warnings, so
I'm reverting it now that it is no longer needed.

Link: http://arm-soc.lixom.net/buildlogs/mainline/v4.10-rc3-98-gcff3b2c/
Fixes: a42485eb0e ("net/mlx5e: TC ipv4 tunnel encap offload error flow fixes")
Fixes: a757d108dc ("net/mlx5e: Fix kbuild warnings for uninitialized parameters")
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Or Gerlitz <ogerlitz@mellanox.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2017-01-16 14:48:19 -05:00
..
alloc.c net/mlx5e: use %pad format string for dma_addr_t 2016-12-08 21:30:54 -05:00
cmd.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2016-12-06 21:33:19 -05:00
cq.c net/mlx5: Unify and improve command interface 2016-08-17 17:45:58 +03:00
debugfs.c {net,IB}/mlx5: QP/XRCD commands via mlx5 ifc 2016-08-17 17:45:57 +03:00
dev.c net/mlx5: Organize device list API in one place 2016-09-10 21:21:50 -07:00
en_arfs.c net/mlx5: Support encap id when setting new steering entry 2016-11-09 13:41:56 -05:00
en_clock.c clocksource: Use a plain u64 instead of cycle_t 2016-12-25 11:04:12 +01:00
en_common.c net/mlx5e: Add support for loopback selftest 2016-11-28 15:09:36 -05:00
en_dcbnl.c net/mlx5e: Check ets capability before initializing ets settings 2016-12-28 14:36:53 -05:00
en_ethtool.c Revert "net/mlx5e: Expose PCIe statistics to ethtool" 2016-12-28 14:36:52 -05:00
en_fs_ethtool.c net/mlx5: Mask destination mac value in ethtool steering rules 2016-12-28 14:36:51 -05:00
en_fs.c net/mlx5: Support encap id when setting new steering entry 2016-11-09 13:41:56 -05:00
en_main.c net/mlx5e: Un-register uplink representor on nic_disable 2017-01-10 21:34:01 -05:00
en_rep.c net/mlx5e: Support adding ingress tc rule when egress device flag is set 2016-12-02 13:28:38 -05:00
en_rx_am.c net/mlx5e: Remove WARN_ONCE from adaptive moderation code 2017-01-10 21:34:01 -05:00
en_rx.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2016-12-06 21:33:19 -05:00
en_selftest.c net/mlx5e: skip loopback selftest with !CONFIG_INET 2016-12-02 11:55:57 -05:00
en_stats.h Revert "net/mlx5e: Expose PCIe statistics to ethtool" 2016-12-28 14:36:52 -05:00
en_tc.c net/mlx5e: Fix a -Wmaybe-uninitialized warning 2017-01-16 14:48:19 -05:00
en_tc.h
en_tx.c net/mlx5e: Change the SQ/RQ operational state to positive logic 2016-12-06 11:44:45 -05:00
en_txrx.c net/mlx5e: Change the SQ/RQ operational state to positive logic 2016-12-06 11:44:45 -05:00
en.h Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2016-12-06 21:33:19 -05:00
eq.c net/mlx5: Add handling for port module event 2016-11-18 12:08:57 -05:00
eswitch_offloads.c net/mlx5: Disable RoCE on the e-switch management port under switchdev mode 2016-12-28 14:36:50 -05:00
eswitch.c net/mlx5: Prevent setting multicast macs for VFs 2016-12-28 14:36:52 -05:00
eswitch.h net/mlx5e: Save the represntor netdevice as part of the representor 2016-12-02 13:28:37 -05:00
fs_cmd.c net/mlx5: Support encap id when setting new steering entry 2016-11-09 13:41:56 -05:00
fs_cmd.h net/mlx5: Add creation flags when adding new flow table 2016-11-09 13:41:56 -05:00
fs_core.c net/mlx5: Release FTE lock in error flow 2016-12-28 14:36:51 -05:00
fs_core.h net/mlx5: Support encap id when setting new steering entry 2016-11-09 13:41:56 -05:00
fs_counters.c net/mlx5: use rb_entry() 2016-12-20 14:22:48 -05:00
fw.c net/mlx5: Unify and improve command interface 2016-08-17 17:45:58 +03:00
health.c net/mlx5: PCI error recovery health care simulation 2016-10-29 12:00:39 -04:00
Kconfig Merge branch 'timers-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2016-12-12 19:56:15 -08:00
lag.c net/mlx5: Organize device list API in one place 2016-09-10 21:21:50 -07:00
mad.c net/mlx5: Unify and improve command interface 2016-08-17 17:45:58 +03:00
main.c net/mlx5: Only cancel recovery work when cleaning up device 2017-01-10 21:34:01 -05:00
Makefile net/mlx5e: Add support for ethtool self diagnostics test 2016-11-28 15:09:35 -05:00
mcg.c net/mlx5: Unify and improve command interface 2016-08-17 17:45:58 +03:00
mlx5_core.h clocksource: Use a plain u64 instead of cycle_t 2016-12-25 11:04:12 +01:00
mr.c net/mlx5: Unify and improve command interface 2016-08-17 17:45:58 +03:00
pagealloc.c net/mlx5: Avoid passing dma address 0 to firmware 2016-10-29 12:00:39 -04:00
pd.c net/mlx5: Unify and improve command interface 2016-08-17 17:45:58 +03:00
port.c net/mlx5: Add DCBX firmware commands support 2016-11-28 15:09:35 -05:00
qp.c net/mlx5: Unify and improve command interface 2016-08-17 17:45:58 +03:00
rl.c net/mlx5: Introduce TSAR manipulation firmware commands 2016-10-30 15:43:12 +02:00
sriov.c net/mlx5: Align sriov/eswitch modules with the new load/unload flow. 2016-09-10 21:21:50 -07:00
srq.c net/mlx5: Unify and improve command interface 2016-08-17 17:45:58 +03:00
transobj.c net/mlx5: Unify and improve command interface 2016-08-17 17:45:58 +03:00
uar.c net/mlx5: Unify and improve command interface 2016-08-17 17:45:58 +03:00
vport.c net/mlx5: Enable to query min inline for a specific vport 2016-11-24 16:01:14 -05:00
vxlan.c net/mlx5: Unify and improve command interface 2016-08-17 17:45:58 +03:00
vxlan.h
wq.c net/mlx5e: Implement Fragmented Work Queue (WQ) 2016-12-02 10:47:01 -05:00
wq.h net/mlx5e: Implement Fragmented Work Queue (WQ) 2016-12-02 10:47:01 -05:00