linux/drivers/net/ethernet/intel/i40e
Jesse Brandeburg 8ddb332689 i40e/i40evf: avoid mutex re-init
If the driver were to happen to have a mutex held while
the i40e_init_adminq call was called, the init_adminq might
inadvertently call mutex_init on a lock that was held
which is a violation of the calling semantics.

Fix this by avoiding adminq.c code allocating/freeing this memory, and
then do the same work only once in probe/remove.

Testing Hints (Required if no HSD): for VF, load i40evf in bare metal
and echo 32 > sriov_numvfs; echo 0 > sriov_numvfs in a loop.  Yes this
is a horrible thing to do.

Change-ID: Ida263c51b34e195252179e7e5e400d73a99be7a2
Reported-by: Stefan Assmann <sassmann@redhat.com>
Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Tested-by: Andrew Bowers <andrewx.bowers@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
2015-12-03 13:43:06 -08:00
..
i40e_adminq_cmd.h i40e: Add support for non-willing Apps 2015-10-16 04:48:11 -07:00
i40e_adminq.c i40e/i40evf: avoid mutex re-init 2015-12-03 13:43:06 -08:00
i40e_adminq.h i40e/i40evf: fix a potential type compare issue 2015-10-07 13:38:11 -07:00
i40e_alloc.h
i40e_common.c i40e: re-use %*ph specifier to hexdump a data 2015-10-23 05:22:13 -07:00
i40e_dcb_nl.c i40e: Change some messages from info to debug only 2015-10-15 01:58:41 -07:00
i40e_dcb.c i40e: Convert CEE App TLV selector to IEEE selector 2015-10-13 23:27:37 -07:00
i40e_dcb.h i40e: Add parsing for CEE DCBX TLVs 2015-10-08 15:11:38 -07:00
i40e_debugfs.c i40e: fix a bug in debugfs with add/del macaddr 2015-10-23 04:22:49 -07:00
i40e_devids.h i40e/i40evf: split device ids into a separate file 2015-10-13 23:37:13 -07:00
i40e_diag.c
i40e_diag.h
i40e_ethtool.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2015-10-24 06:54:12 -07:00
i40e_fcoe.c i40e: Lock for VSI's MAC filter list 2015-10-19 15:15:08 -07:00
i40e_fcoe.h
i40e_hmc.c
i40e_hmc.h
i40e_lan_hmc.c i40e/i40evf: clean up some code 2015-10-08 16:19:55 -07:00
i40e_lan_hmc.h
i40e_main.c i40e/i40evf: avoid mutex re-init 2015-12-03 13:43:06 -08:00
i40e_nvm.c i40e: fix unconditional execution of cpu_to_le16() 2015-10-23 05:40:49 -07:00
i40e_osdep.h move io-64-nonatomic*.h out of asm-generic 2015-10-15 00:21:07 +02:00
i40e_prototype.h i40e/i40evf: Add a workaround to drop all flow control frames 2015-10-23 04:17:55 -07:00
i40e_ptp.c i40e: generate fewer startup messages 2015-10-16 04:36:13 -07:00
i40e_register.h
i40e_status.h
i40e_txrx.c i40e: add missing kernel-doc argument 2015-10-23 05:28:58 -07:00
i40e_txrx.h i40e/i40evf: adjust interrupt throttle less frequently 2015-10-19 15:35:12 -07:00
i40e_type.h i40e/i40evf: Fix an accidental error with BIT_ULL replacement 2015-10-19 15:35:45 -07:00
i40e_virtchnl_pf.c i40e: Disable VEB bridge mode with SR-IOV failure 2015-10-23 04:51:51 -07:00
i40e_virtchnl_pf.h i40e: reset the invalid msg counter in vf when a valid msg is received 2015-10-16 04:53:04 -07:00
i40e_virtchnl.h i40e/i40evf: Add WB_ON_ITR offload support 2015-10-15 02:03:29 -07:00
i40e.h i40e: Fix an incorrect OEM version string 2015-10-23 04:38:35 -07:00
Makefile