Introducing Stack Decoder

Welcome to the Stack Decoder!

Stack Decoder will help in those rare circumstances when a Cisco router encounters a set of conditions it has not been programmed to handle (for example during a hardware failure) and the router generates a stack trace.

Stack traces can be displayed by executing the privileged command show stack from the exec prompt of the router. The stack trace is an important feature of the Cisco IOS(tm) that allows the subsequent diagnosis and repair of the underlying cause. [Cisco considers any situation which results in a stack trace and restart (often called a crash) that is not due to a hardware failure to be a software defect (even if the root cause is in fact another malfunctioning device on the net).

How it works

Stack Decoder decodes the stack trace that the device generates and creates a "symbol file". The symbol file, plus the other information in the trace usually provides enough information to isolate the cause. Prior to Stack Decoder, you would send the trace to the TAC to decode the trace, analyze the related data, and compare the results to our bug tracking database, diagnostic rules, and hardware address information.

Thanks to CCO's Bug Toolkit, you can use the same techniques that the TAC uses and automates the process. Once the trace has been analyzed, Stack Decoder presents an ordered list of candidate diagnoses in a results list. The results list will usually include a list of Bug ID's and/or a hardware diagnostic.

The last step is the most crucial and requires your input. The first few defects listed usually contain the root cause of the problem. Occasionally however, the diagnostic shows no clear winners. At this point, careful attention must be paid to the software release levels, protocols and conditions described in the bug citation. After comparing all of the data, it is usually easy to identify the root cause.

Q&A

If I can't figure out the cause of the stack trace, what should I do?

Select Open a case from the results page and Stack Decoder and simply paste the stack trace and any other relevant info (changes at the time the crash occurred, etc) and your contact information and CCO will open a case directly with the TAC. Even though no cause was identified, time will be saved by knowing what it is not!

If I identify a bug as the probable cause what should I do?
The bug citation will usually show the lowest software release that the bug has been fixed in. In general, upgrading to the highest maintenance revision available for that software release is the optimal choice.

For example, suppose the citation shows 10.2(5) as being the release a bug is fixed in. At the same time, 10.2(8) is the current maintenance revision level for that release. In this case, you would probably want to upgrade to 10.2(8). Use of the Bug Navigator and careful consideration of the Release Notes can help in determining your action plan. As always when making changes to your network, be sure and follow proper change control procedures for optimum success.

What if it looks like a hardware failure?
In this situation it's best to open a case with the TAC, since their assistance is still needed to ship the parts. Later releases of the Stack Decoder will help in identifying the specific hardware part that is at fault for improved problem resolution.