numam-dpdk/lib
Ferruh Yigit 369db3ae8e igb_uio: remove device reset in release
More error reported for device reset in release() [1],
when device pass-through to the guest, host kernel crash on guest exit.

Removing the reset completely.

This is close to reverting commit b58eedfc7d [2], taking into account
previous fix to remove reset in open as well [3], but not exactly same.

With latest code, interrupts are enabled in uio open() callback and
disabled in uio release() callback, so when a DPDK application exit
device interrupts are disabled. Previously interrupts were only enabled
once in igb_uio module insert and disabled in module removal.

Also with latest code device set as bus master in open() and master
cleared in release(), clearing bus master should prevent further DMA
which was one of the target of the initial patch.

The initial intention was also to reset the device to be sure it has
been left in proper state, but currently that part is missing because of
reported problem(s).

Still igb_uio should be safer comparing to the pre b58eedfc7d state.

[1]
http://dpdk.org/ml/archives/dev/2017-November/081459.html

[2]
b58eedfc7d ("igb_uio: issue FLR during open and release of device file")

[3]
f73b38e924 ("igb_uio: remove device reset in open")

Fixes: e3a64deae2 ("igb_uio: prevent reset for bnx2x devices")
Fixes: b58eedfc7d ("igb_uio: issue FLR during open and release of device file")
Cc: stable@dpdk.org

Signed-off-by: Ferruh Yigit <ferruh.yigit@intel.com>
2017-11-08 00:51:21 +01:00
..
librte_acl remove useless memzone includes 2017-11-06 22:12:08 +01:00
librte_bitratestats mk: do not generate LDLIBS from directory dependencies 2017-10-24 02:14:57 +02:00
librte_cfgfile cfgfile: fix leak on creation error 2017-11-07 02:18:42 +01:00
librte_cmdline mk: do not generate LDLIBS from directory dependencies 2017-10-24 02:14:57 +02:00
librte_compat fix typos using codespell utility 2017-06-14 23:54:13 +02:00
librte_cryptodev cryptodev: remove vdev create function 2017-11-07 16:28:47 +01:00
librte_distributor distributor: fix some typos 2017-11-07 01:50:48 +01:00
librte_eal igb_uio: remove device reset in release 2017-11-08 00:51:21 +01:00
librte_efd eal/x86: revert select optimized memcpy at run-time 2017-11-07 01:16:03 +01:00
librte_ether bus/vdev: move code from EAL into a new driver 2017-11-07 16:54:07 +01:00
librte_eventdev bus/vdev: move code from EAL into a new driver 2017-11-07 16:54:07 +01:00
librte_flow_classify flow_classify: fix logging 2017-10-27 00:13:51 +02:00
librte_gro mk: do not generate LDLIBS from directory dependencies 2017-10-24 02:14:57 +02:00
librte_gso mk: do not generate LDLIBS from directory dependencies 2017-10-24 02:14:57 +02:00
librte_hash remove useless memzone includes 2017-11-06 22:12:08 +01:00
librte_ip_frag mk: do not generate LDLIBS from directory dependencies 2017-10-24 02:14:57 +02:00
librte_jobstats mk: do not generate LDLIBS from directory dependencies 2017-10-24 02:14:57 +02:00
librte_kni lib: fix some typos 2017-11-07 01:46:22 +01:00
librte_kvargs mk: do not generate LDLIBS from directory dependencies 2017-10-24 02:14:57 +02:00
librte_latencystats mk: do not generate LDLIBS from directory dependencies 2017-10-24 02:14:57 +02:00
librte_lpm remove useless memzone includes 2017-11-06 22:12:08 +01:00
librte_mbuf mbuf: rename data address helpers to IOVA 2017-11-06 22:44:26 +01:00
librte_member remove useless memzone includes 2017-11-06 22:12:08 +01:00
librte_mempool mempool: increase ABI version 2017-11-06 23:59:19 +01:00
librte_meter mk: do not generate LDLIBS from directory dependencies 2017-10-24 02:14:57 +02:00
librte_metrics mk: do not generate LDLIBS from directory dependencies 2017-10-24 02:14:57 +02:00
librte_net use macro to declare constructor functions 2017-11-06 21:56:07 +01:00
librte_pci remove useless memzone includes 2017-11-06 22:12:08 +01:00
librte_pdump mk: do not generate LDLIBS from directory dependencies 2017-10-24 02:14:57 +02:00
librte_pipeline remove useless memzone includes 2017-11-06 22:12:08 +01:00
librte_port mk: do not generate LDLIBS from directory dependencies 2017-10-24 02:14:57 +02:00
librte_power mk: do not generate LDLIBS from directory dependencies 2017-10-24 02:14:57 +02:00
librte_reorder remove useless memzone includes 2017-11-06 22:12:08 +01:00
librte_ring mk: do not generate LDLIBS from directory dependencies 2017-10-24 02:14:57 +02:00
librte_sched mk: do not generate LDLIBS from directory dependencies 2017-10-24 02:14:57 +02:00
librte_security security: introduce security API and framework 2017-10-26 03:10:51 +02:00
librte_table table: fix LRU hash table parameters check 2017-11-07 02:00:01 +01:00
librte_timer remove useless memzone includes 2017-11-06 22:12:08 +01:00
librte_vhost vhost: add flag to enable IOMMU support 2017-11-07 14:19:11 +01:00
Makefile pci: introduce library and driver 2017-10-26 23:17:31 +02:00