Method and apparatus for determining failure similarity in computing device

US10235234B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-10235234-B2
Application numberUS-201615384597-A
CountryUS
Kind codeB2
Filing dateDec 20, 2016
Priority dateDec 29, 2015
Publication dateMar 19, 2019
Grant dateMar 19, 2019

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

Embodiments of the present disclosure provide a method and an apparatus for a computing device. The computing device may generate stacks for crash dump in response to failures, each of the stacks may include a plurality of stack frames from bottom to top, and each of the stack frames may include function information associated with a corresponding failure. The method may include: extracting corresponding function name information from the stack frames in the stacks; generating simplified stack frames based on the corresponding function name information to obtain simplified stacks for the stacks; and determining a similarity between the failures based on a similarity between the simplified stacks of the failures.

First claim

Opening claim text (preview).

What is claimed is: 1. A method implemented in a computing device, the computing device generating stacks for crash dump in response to failures, each of the stacks including a plurality of stack frames from bottom to top, and each of the stack frames including function information associated with a corresponding failure, the method comprising: extracting corresponding function name information from the stack frames in the stacks; generating simplified stack frames from the stack frames based on the corresponding function name information to obtain simplified stacks for the failures; and determining a similarity between the failures based on a similarity between the simplified stacks for the failures by: removing the simplified stack frames one by one from the simplified stack from bottom towards top till only a simplified stack frame at the top is left, a sub-stack being generated in response to one of the simplified stack frames being removed; determining the similarity between the failures based on a similarity between the simplified stacks and a similarity between the sub-stacks of the simplified stacks; obtaining simplified stacks and sub-stacks of the simplified stacks for a plurality of failures; and generating a mapping table between the plurality of failures and the simplified stacks for the plurality of failures and between the plurality of failures and the sub-stacks. 2. The method according to claim 1 , wherein generating simplified stack frames based on the corresponding function name information for the stack frames comprises: generating the simplified stack frames only based on the corresponding function name information for the stack frames. 3. The method according to claim 1 , wherein generating simplified stack frames based on the corresponding function name information for the stack frames comprises: generating the simplified stack frames based on the corresponding function name information and corresponding module name information for the stack frames. 4. The method according to claim 3 , further comprising: extracting the corresponding module name information from the stack frames, or determining the corresponding module name information by looking up function address information in the stack frames. 5. The method according to claim 3 , further comprising: setting separators between the corresponding function name information and the corresponding module name information in the simplified stack frames. 6. The method according to claim 1 , further comprising: determining the similarity between the failures based on common simplified stacks of the failures or the sub-stacks of the failures having a largest number of common simplified stack frames. 7. The method according to claim 1 , wherein determining a similarity between the failures based on a similarity between the simplified stacks comprises: obtaining simplified stacks and sub-stacks of the simplified stacks for a new failure; and searching for the simplified stacks and the sub-stacks of the simplified stacks for the new failure from the mapping table to determine a failure having a same simplified stack or sub-stack as the new failure. 8. The method according to claim 7 , further comprising: adding into the mapping table a simplified stack or a sub-stack for the new failure that is missed in the mapping table. 9. The method according to claim 1 , further comprising: generating the mapping table using a Hash algorithm. 10. An apparatus for a computing device, the computing device generating stacks for crash dump in response to failures, each of the stacks including a plurality of stack frames from bottom to top, and each of the stack frames including function information associated with a corresponding failure, the apparatus comprising at least one processor; and at least one memory comprising program module, wherein the at least one memory and the program modules are configured, with the at least one processor, configured to: extract, by an extracting unit, corresponding function name information from the stack frames in the stacks; generate, by a simplifying unit, simplified stack frames from the stack frames based on the corresponding function name information to obtain simplified stacks for the failures; determine, by a similarity determining unit, a similarity between the failures based on a similarity between the simplified stacks for the failures; removing, by a sub-stack generating unit, the simplified stack frames one by one from the simplified stack from bottom towards top till only a simplified stack frame at the top is left, a sub-stack being generated in response to one of the simplified stack frames being removed; and wherein the similarity determining unit is further configured to determine the similarity between the failures based on a similarity between the simplified stacks and a similarity between the sub-stacks of the simplified stacks. 11. The apparatus according to claim 10 , wherein the simplifying unit is configured to: generate the simplified stack frames only based on the corresponding function name information for the stack frames. 12. The apparatus according to claim 10 , wherein the simplifying unit is configured to: generate the simplified stack frames based on the corresponding function name information and corresponding module name information for the stack frames. 13. The apparatus according to claim 12 , wherein the simplifying unit is further configured to: extract the corresponding module name information from the stack frames, or determine the corresponding module name information by looking up function address information in the stack frames. 14. The apparatus according to claim 12 , wherein the simplifying unit is further configured to: set separators between the corresponding function name information and the corresponding module name information in the simplified stack frames. 15. The apparatus according to claim 10 , wherein the simplifying unit is configured to: determine the similarity between the failures based on common simplified stacks of the failures or the sub-stacks of the failures having a largest number of common simplified stack frames. 16. The apparatus according to claim 10 , wherein the simplifying unit is further configured to obtain simplified stacks and sub-stacks of the simplified stacks for a plurality of failures; and wherein the apparatus further comprises a mapping table generating unit configured to generate a mapping table between the plurality of failures and the simplified stacks for the plurality of failures and between the plurality of failures and the sub-stacks. 17. The apparatus according to claim 16 , wherein the simplifying unit is further configured to obtain simplified stacks and sub-stacks of the simplified stacks for a new failure; and wherein the similarity determining unit is further configured to search for the simplified stacks and the sub-stacks of the simplified stacks for the new failure from the mapping table to determine a failure having a same simplified stack or sub-stack as the new failure.

Assignees

Inventors

Classifications

  • Dumping, i.e. gathering error/state information after a fault for later diagnosis · CPC title

  • by tracing the execution of the program · CPC title

  • using diagnostics (G06F11/0703 takes precedence) · CPC title

  • the processing taking place on a specific hardware platform or in a specific software environment · CPC title

  • G06F11/079Primary

    Root cause analysis, i.e. error or fault diagnosis (in a hardware test environment G06F11/22; in a software test environment G06F11/36) · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US10235234B2 cover?
Embodiments of the present disclosure provide a method and an apparatus for a computing device. The computing device may generate stacks for crash dump in response to failures, each of the stacks may include a plurality of stack frames from bottom to top, and each of the stack frames may include function information associated with a corresponding failure. The method may include: extracting cor…
Who is the assignee on this patent?
Emc Ip Holding Co Llc
What technology area does this patent fall under?
Primary CPC classification G06F11/0778. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Mar 19 2019 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).