Cisco Bug: CSCtd86984 - bfd_agent process crash during bundle interface config / unconfig
Jan 06, 2017
- Cisco Carrier Routing System
Known Affected Releases
Symptom: bfd_agent process crashes Conditions: This is a timing isue. Details of the crash: bfd_agent thread 1 punts some received GSP messages to thread 3 for processing by enqueueing the messages in a queue (bfd_ipi_punt_main_bundle_q). Condition for the crash is that this queue contains one or more BFD_IPI_MT_SESSION_PUSH message(s) when a BFD_IPI_MT_BUNDLE_PUSH message is being enqueued. When the message is being enqueued, the queue is walked to see if existing entry of same type/entity should be overridden or new entry should be enqueued. Doing the comparison of BFD_IPI_MT_SESSION_PUSH message and BFD_IPI_MT_BUNDLE_PUSH messages cause a crash. Local variables are initialized differently depending on the message type, thus comparing above two different message typs can cause the code to use an uninitialized variable (deferencing NULL new_sess_push var). Conditions which much exist in order for crash to happen: - There must be at least one BVLAN BFD session over a bundle interface which consists of memberlinks spanning at least two linecards. - BFD_IPI_MT_SESSION_PUSH message handling by thread 3 must fail at least once. This translates to BVLAN session creation failing, which can happen with variety of reasons. Conditions which can increase the chances of crash happening: - Large number of BVLAN BFD sessions spanning over large number of bundle interfaces which each consists of memberlinks spanning many linecards. Any events (config or non-config) which cause followings can trigger crash: - Bundle interface down->up - Memberlink down->up Side effects: - bfd_agent crashing can cause all physical sessions which are hosted on crashing linecard and all bvlan sessions which crashing linecard is participating in to flap.
Bug details contain sensitive information and therefore require a Cisco.com account to be viewed.
Bug Details Include
- Full Description (including symptoms, conditions and workarounds)
- Known Fixed Releases
- Related Community Discussions
- Number of Related Support Cases