Preview Tool

Cisco Bug: CSCtd86984 - bfd_agent process crash during bundle interface config / unconfig

Last Modified

Jan 06, 2017

Products (1)

  • Cisco Carrier Routing System

Known Affected Releases


Description (partial)


bfd_agent process crashes


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 account to be viewed.

Bug Details Include

  • Full Description (including symptoms, conditions and workarounds)
  • Status
  • Severity
  • Known Fixed Releases
  • Related Community Discussions
  • Number of Related Support Cases
Bug information is viewable for customers and partners who have a service contract. Registered users can view up to 200 bugs per month without a service contract.