Permalink
Please sign in to comment.
Browse files
update ena driver to version 1.1.2
Changes from our previous release (1.0.2):
New Features:
* Add ndo busy poll callback, that will typically reduce network latency.
* Use napi_schedule_irqoff when possible
* move from ena_trc_* to pr_* functions and ENA_ASSERT to WARN
* Indentations and fix comments structure
* Add prefetch to the driver
* Add hardware hints
* Remove affinity hints in the driver, allowing the irq balancer to move
it depending on the load.
Developers can still override affinity using /proc/irq/*/smp_affinity
Bug Fixes:
* Initialized last_keep_alive_jiffies
Can cause watchdog reset if the value isn't initialized
After this watchdog driver reset it initiated, it will not happen again
while the OS is running.
* Reorder the initialization of the workqueues and the timer service
In the highly unlikely event of driver failing on probe the reset workqueue
cause access to freed aread.
* Remove redundant logic in napi callback for busy poll mode.
Impact the performance on kernel >= 4.5 when CONFIG_NET_RX_BUSY_POLL is enable
and socket is openned with SO_BUSY_POLL
* In RSS hash configuration add missing variable initialization.
* Fix type mismatch in structs initialization
* Fix kernel starvation when get_statistics is called from atomic context
* Fix potential memory corruption during reset and restart flow.
* Fix kernel panic when driver reset fail
Minor changes:
* Reduce the number of printouts
* Move printing of unsupported negotiated feature to _dbg instead of _notice
* Increase default admin timeout to 3 sec and Keep-Alive to 5 sec.
* Change the behaiver of Tx xmit in case of an error.
drop the packet and return NETDEV_TX_OK instead of retunring NETDEV_TX_BUSY- Loading branch information...
Showing
with
1,406 additions
and 1,344 deletions.
- +202 −430 kernel/linux/common/ena_com/ena_admin_defs.h
- +319 −393 kernel/linux/common/ena_com/ena_com.c
- +22 −29 kernel/linux/common/ena_com/ena_com.h
- +2 −6 kernel/linux/common/ena_com/ena_common_defs.h
- +24 −30 kernel/linux/common/ena_com/ena_eth_com.c
- +4 −4 kernel/linux/common/ena_com/ena_eth_com.h
- +26 −70 kernel/linux/common/ena_com/ena_eth_io_defs.h
- +2 −0 kernel/linux/common/ena_com/ena_regs_defs.h
- +51 −69 kernel/linux/ena/README
- +51 −0 kernel/linux/ena/RELEASENOTES.md
- +113 −25 kernel/linux/ena/ena_ethtool.c
- +391 −250 kernel/linux/ena/ena_netdev.c
- +147 −12 kernel/linux/ena/ena_netdev.h
- +25 −26 kernel/linux/ena/ena_sysfs.c
- +27 −0 kernel/linux/ena/kcompat.h
Oops, something went wrong.
0 comments on commit
a485656