Bug 1293230
Summary: | rt: netpoll: live lock with NAPI polling and busy polling on realtime kernel | |||
---|---|---|---|---|
Product: | Red Hat Enterprise Linux 7 | Reporter: | Jan Kurik <jkurik> | |
Component: | kernel-rt | Assignee: | Luis Claudio R. Goncalves <lgoncalv> | |
kernel-rt sub component: | Misc | QA Contact: | Zhenjie Chen <zhchen> | |
Status: | CLOSED ERRATA | Docs Contact: | ||
Severity: | high | |||
Priority: | high | CC: | bhu, daolivei, kzhang, lgoncalv, mleitner, williams, zhchen | |
Version: | 7.3 | Keywords: | ZStream | |
Target Milestone: | rc | |||
Target Release: | --- | |||
Hardware: | x86_64 | |||
OS: | Linux | |||
Whiteboard: | ||||
Fixed In Version: | Doc Type: | Bug Fix | ||
Doc Text: |
Cause: As the realtime kernel replaces most of the spinlocks by rtmutexes, in order to maximize the preemption points inside the kernel, the locking scheme used in both NAPI polling and busy polling could become out of synchronization with the State Machine they protected. That could be observed when a machine with faster NICs (10g or 40g) was subject to a heavy pressure receiving network packets.
Consequence: The system could experience a livelock that would either slowly degrade the system performance up to a halt or disable the network adapter and halt.
Fix: the locking schemes on NAPI polling and busy polling routines were hardened to enforce the State machine sanity.
Result: the system works fine under pressure.
|
Story Points: | --- | |
Clone Of: | 1292902 | |||
: | 1295884 (view as bug list) | Environment: | ||
Last Closed: | 2016-02-16 10:50:02 UTC | Type: | --- | |
Regression: | --- | Mount Type: | --- | |
Documentation: | --- | CRM: | ||
Verified Versions: | Category: | --- | ||
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | ||
Cloudforms Team: | --- | Target Upstream Version: | ||
Embargoed: | ||||
Bug Depends On: | 1292902 | |||
Bug Blocks: | 1295884 | |||
Attachments: |
Description
Jan Kurik
2015-12-21 07:06:59 UTC
Created attachment 1112330 [details]
netpoll: Always take poll_lock when doing polling
Created attachment 1112331 [details]
Revert "ixgbevf: Prevent livelock spinning grabbing ixgbevf_qv_lock"
Created attachment 1112332 [details]
revert "ixgbe: Prevent livelock spinning grabbing ixgbe_qv_lock"
Created attachment 1112333 [details]
revert "sfc: Prevent livelock spinning grabbing efx_channel_lock"
Created attachment 1120448 [details]
Setup notes for hp-dl388g8-09.rhts.eng.nay.redhat.com
Notes for reproducing this bug on an HP DL388 with SolarFlare (sfc) NIC
Created attachment 1120449 [details]
Setup notes for rhelrt-17.farm.hsv.redhat.com
setup notes for test box in HSV lab
Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory, and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. https://rhn.redhat.com/errata/RHSA-2016-0212.html |