Academic
Publications
Error propagation analysis for file systems

Error propagation analysis for file systems,10.1145/1542476.1542506,Cindy Rubio-gonzález,Haryadi S. Gunawi,Ben Liblit,Remzi H. Arpaci-dusseau,Andrea C

Error propagation analysis for file systems   (Citations: 2)
BibTex | RIS | RefWorks Download
Unchecked errors are especially pernicious in operating system file management code. Transient or permanent hardware failures are inevitable, and error-management bugs at the file system layer can cause silent, unrecoverable data corruption. We propose an interpro- cedural static analysis that tracks errors as they propagate through file system code. Our implementation detects overwritten, out-of- scope, and unsaved unchecked errors. Analysis of four widely-used Linux file system implementations (CIFS, ext3, IBM JFS and Rei- serFS), a relatively new file system implementation (ext4), and shared virtual file system (VFS) code uncovers 312 error propa- gation bugs. Our flow- and context-sensitive approach produces more precise results than related techniques while providing bet- ter diagnostic information, including possible execution paths that demonstrate each bug found.
Cumulative Annual
View Publication
The following links allow you to view full publications. These links are maintained by other sources not affiliated with Microsoft Academic Search.
    • ...Rubio-González et al. [15] describe a static analysis that finds error propagation bugs by identifying the set of error codes that each variable may contain at each program point...
    • ...Rubio-González et al. [15] proposed an interprocedural, flowand context-sensitive static program analysis that determines, at each program point, the set of unchecked error codes each variable may contain...
    • ...The following paragraphs discuss the transfer functions for assignments without function calls on the right side (see Table 2). Rubio-González et al. [15] detail transfer functions for other language constructs, including variants that treat errors as having been copied instead of transferred...
    • ...Rubio-González et al. [15] described the use of witness tracing information for the construction of error-propagation paths; we use witnesses here to justify each error code that a function exit point is claimed to return...
    • ...Rubio-González et al. [15] required several hours to analyze file systems approaching 100,000 lines of code, and the massive XFS file system remained completely out of reach...
    • ...Because of earlier program transformations that we do not discuss here (e.g., introducing exchange variables [15]), this approach also handles other error-flow scenarios such as function parameters and return values...

    Cindy Rubio-Gonzálezet al. Expect the unexpected: error code mismatches between documentation and...

    • ...However, recent work in tracking integer error codes through operating systems suggests that this sort of inference is possible [15, 27]...

    Tristan Ravitchet al. Automatic generation of library bindings using static analysis

Sort by: