{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,8,25]],"date-time":"2026-08-25T10:09:01Z","timestamp":1787652541523,"version":"build-2736575974"},"reference-count":95,"publisher":"Institute of Electrical and Electronics Engineers (IEEE)","issue":"3","license":[{"start":{"date-parts":[[2018,9,1]],"date-time":"2018-09-01T00:00:00Z","timestamp":1535760000000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/ieeexplore.ieee.org\/Xplorehelp\/downloads\/license-information\/IEEE.html"}],"funder":[{"name":"UniNA and Compagnia di San Paolo in the frame of \u015eProgramma STAR\u0164"}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":["IEEE Trans. Rel."],"published-print":{"date-parts":[[2018,9]]},"DOI":"10.1109\/tr.2018.2841203","type":"journal-article","created":{"date-parts":[[2018,6,20]],"date-time":"2018-06-20T18:51:39Z","timestamp":1529520699000},"page":"847-869","source":"Crossref","is-referenced-by-count":15,"title":["Run-Time Detection of Protocol Bugs in Storage I\/O Device Drivers"],"prefix":"10.1109","volume":"67","author":[{"ORCID":"https:\/\/orcid.org\/0000-0001-7103-592X","authenticated-orcid":false,"given":"Domenico","family":"Cotroneo","sequence":"first","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]},{"ORCID":"https:\/\/orcid.org\/0000-0002-6008-2656","authenticated-orcid":false,"given":"Luigi","family":"De Simone","sequence":"additional","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]},{"ORCID":"https:\/\/orcid.org\/0000-0003-1084-4824","authenticated-orcid":false,"given":"Roberto","family":"Natella","sequence":"additional","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]}],"member":"263","reference":[{"key":"ref73","first-page":"437","article-title":"Representativeness analysis of injected\n software faults in complex software","author":"natella","year":"2010","journal-title":"Proc IEEE\/IFIP Int Conf Dependable Syst Netw"},{"key":"ref72","doi-asserted-by":"publisher","DOI":"10.1145\/1062455.1062530"},{"key":"ref71","doi-asserted-by":"publisher","DOI":"10.1109\/FTCS.1996.534615"},{"key":"ref70","doi-asserted-by":"publisher","DOI":"10.1109\/ICDSN.2000.857571"},{"key":"ref76","doi-asserted-by":"publisher","DOI":"10.1109\/DSN.2011.5958216"},{"key":"ref77","doi-asserted-by":"publisher","DOI":"10.1145\/1346281.1346303"},{"key":"ref74","doi-asserted-by":"publisher","DOI":"10.1109\/TSE.2011.124"},{"key":"ref39","doi-asserted-by":"publisher","DOI":"10.1109\/CCGRID.2010.72"},{"key":"ref75","first-page":"144","article-title":"HSFI: Accurate fault injection scalable to large code bases","author":"van der kouwe","year":"2016","journal-title":"Proc 46th Annu IEEE\/IFIP Int Conf Dependable Syst Netw"},{"key":"ref38","article-title":"SAS\/SATA\/NVMe host bus adapters","year":"2017"},{"key":"ref78","first-page":"241","article-title":"Device driver safety through a reference validation mechanism","author":"williams","year":"2008","journal-title":"Proc 8th USENIX Conf Oper Syst Des Implementation"},{"key":"ref79","first-page":"9","article-title":"Tolerating malicious device drivers in Linux","author":"boyd-wickizer","year":"2010","journal-title":"Proc Conf USENIX Annu Tech Conf"},{"key":"ref33","article-title":"Howard: A\n dynamic excavator for reverse engineering data structures","author":"slowinska","year":"2011","journal-title":"Proc Symp Network and Distributed System Security"},{"key":"ref32","first-page":"5:1","article-title":"Automatic reverse engineering\n of data structures from binary execution","author":"lin","year":"2010","journal-title":"Proc Symp Network and Distributed System Security"},{"key":"ref31","doi-asserted-by":"publisher","DOI":"10.1145\/1315245.1315286"},{"key":"ref30","doi-asserted-by":"publisher","DOI":"10.1002\/spe.4380160304"},{"key":"ref37","article-title":"AHCI supported chipsets","year":"2017"},{"key":"ref36","author":"khalil","year":"2017","journal-title":"Storage Design and Implementation in vSphere 6 A Technology Deep Dive"},{"key":"ref35","doi-asserted-by":"publisher","DOI":"10.1145\/2560012"},{"key":"ref34","author":"corbet","year":"2005","journal-title":"Linux Device Drivers Where the Kernel Meets the Hardware"},{"key":"ref60","article-title":"JMicron JM20337 USB-SATA data corruption bugfix.","year":"2018"},{"key":"ref62","article-title":"scsi: qla2xxx: Get mutex lock before checking optrom_state.","year":"2018"},{"key":"ref61","article-title":"[PATCH] - fusion - mptfc bug fix's to prevent deadlock\n situations.","year":"2018"},{"key":"ref63","first-page":"53","article-title":"Tuning programs with OProfile","volume":"1","author":"cohen","year":"2004","journal-title":"Wide Open Magazine"},{"key":"ref28","doi-asserted-by":"publisher","DOI":"10.1109\/DSN.2007.85"},{"key":"ref64","doi-asserted-by":"publisher","DOI":"10.1145\/2610384.2610418"},{"key":"ref27","doi-asserted-by":"publisher","DOI":"10.1109\/DSN.2004.1311957"},{"key":"ref65","article-title":"Choosing a Linux Tracer.","author":"gregg","year":"2015"},{"key":"ref66","article-title":"Linux tracing systems & how they fit together.","author":"evans","year":"2017"},{"key":"ref29","article-title":"The PCI utilities","year":"2017"},{"key":"ref67","doi-asserted-by":"publisher","DOI":"10.1109\/PRDC.2002.1185651"},{"key":"ref68","doi-asserted-by":"publisher","DOI":"10.1109\/RELDIS.1999.805094"},{"key":"ref69","doi-asserted-by":"publisher","DOI":"10.1145\/229000.226313"},{"key":"ref2","article-title":"Disaster recovery strategies with Tivoli Storage Management","year":"2002"},{"key":"ref1","article-title":"Best practices for data reliability with Oracle VM Server for SPARC","year":"2010"},{"key":"ref20","article-title":"IOzone filesystem benchmark","year":"2015"},{"key":"ref22","author":"gregg","year":"2011","journal-title":"DTrace Dynamic Tracing in Oracle Solaris Mac OS X and FreeBSD"},{"key":"ref21","author":"nemeth","year":"2000","journal-title":"UNIX System Administration Handbook"},{"key":"ref24","article-title":"Instrumenting the Linux Kernel with SystemTap","author":"cohen","year":"2005"},{"key":"ref23","article-title":"Gaining insight into the Linux kernel with Kprobes","author":"cohen","year":"2005"},{"key":"ref26","article-title":"Detours: Binary interception of Win32 functions","author":"hunt","year":"1999","journal-title":"Proc 3rd Usenix Windows NT Symp"},{"key":"ref25","article-title":"VProbes: Deep observability into the ESXi\n hypervisor","author":"carbone","year":"2014","journal-title":"VMware Tech J Summer"},{"key":"ref50","doi-asserted-by":"publisher","DOI":"10.1109\/FTCS.1991.146625"},{"key":"ref51","doi-asserted-by":"publisher","DOI":"10.1109\/TSE.2006.113"},{"key":"ref95","year":"0"},{"key":"ref94","article-title":"Fusion-MPT Device Management User Guide","year":"2007"},{"key":"ref93","year":"0","journal-title":"Advanced Host Controller Interface for Serial ATA"},{"key":"ref92","year":"0","journal-title":"Serial ATA Revision 3 0"},{"key":"ref91","doi-asserted-by":"publisher","DOI":"10.1109\/ISSRE.2015.7381840"},{"key":"ref90","doi-asserted-by":"publisher","DOI":"10.1145\/3125497"},{"key":"ref59","article-title":"LSI Logic MPT driver mapping of scsi device busy to scsi\n host+device busy leads to read-only ext3 fs remounts on VMware ESX Server.","year":"2018"},{"key":"ref58","article-title":"Storage related regression in linux-next 20120824","year":"2018"},{"key":"ref57","article-title":"MPT Fusion Linux OS driver release notes (mptlinux-4.00.13.04&#x2013;1)","year":"2007","journal-title":"LSI Logic"},{"key":"ref56","article-title":"scsi: aacraid: Fix command send race condition.","year":"2018"},{"key":"ref55","article-title":"Rework AHCI LPM handling a little.","year":"2018"},{"key":"ref54","article-title":"On the construction of reliable device drivers","author":"ryzhyk","year":"2010"},{"key":"ref53","doi-asserted-by":"publisher","DOI":"10.1109\/TDSC.2016.2522968"},{"key":"ref52","doi-asserted-by":"publisher","DOI":"10.1109\/EDCC.2012.12"},{"key":"ref10","doi-asserted-by":"publisher","DOI":"10.1145\/1519065.1519095"},{"key":"ref11","doi-asserted-by":"publisher","DOI":"10.3233\/JCS-980109"},{"key":"ref40","doi-asserted-by":"publisher","DOI":"10.1109\/LADC.2013.24"},{"key":"ref12","doi-asserted-by":"publisher","DOI":"10.1016\/j.cose.2016.04.009"},{"key":"ref13","doi-asserted-by":"publisher","DOI":"10.1109\/TSE.2010.93"},{"key":"ref14","doi-asserted-by":"publisher","DOI":"10.1145\/945445.945466"},{"key":"ref15","doi-asserted-by":"publisher","DOI":"10.1145\/1189256.1189257"},{"key":"ref82","doi-asserted-by":"publisher","DOI":"10.1145\/1629575.1629581"},{"key":"ref16","doi-asserted-by":"publisher","DOI":"10.1109\/DSN.2009.5270357"},{"key":"ref81","first-page":"4","article-title":"SafeDrive: Safe and recoverable extensions\n using language-based techniques","author":"zhou","year":"2006","journal-title":"Proc 7th USENIX Symp Oper Syst Des Implementation"},{"key":"ref17","first-page":"31","article-title":"Microreboot: A technique for cheap recovery","author":"candea","year":"2004","journal-title":"Proc 6th Conf Symp Oper Syst Des Implementation"},{"key":"ref84","doi-asserted-by":"publisher","DOI":"10.1145\/1294261.1294290"},{"key":"ref18","doi-asserted-by":"publisher","DOI":"10.1109\/SRDS.2009.26"},{"key":"ref83","doi-asserted-by":"publisher","DOI":"10.1109\/DSN.2005.65"},{"key":"ref19","doi-asserted-by":"publisher","DOI":"10.1109\/EDCC.2010.13"},{"key":"ref80","doi-asserted-by":"publisher","DOI":"10.1145\/168619.168635"},{"key":"ref89","first-page":"15","article-title":"Protocol-aware recovery for consensus-based\n storage","author":"alagappan","year":"2018","journal-title":"Proc USENIX Conf File Storage Technol"},{"key":"ref4","first-page":"149","article-title":"Windows XP kernel crash analysis","author":"ganapathi","year":"2006","journal-title":"Proc 20th Conf Large Install Syst Admin"},{"key":"ref3","doi-asserted-by":"publisher","DOI":"10.1145\/502034.502042"},{"key":"ref6","doi-asserted-by":"publisher","DOI":"10.1145\/1416944.1416946"},{"key":"ref5","doi-asserted-by":"publisher","DOI":"10.1145\/1950365.1950401"},{"key":"ref85","author":"silberschatz","year":"2013","journal-title":"Operating System Concepts"},{"key":"ref8","article-title":"Testing\n closed-source binary device drivers with DDT","author":"kuznetsov","year":"2010","journal-title":"Proc USENIX Annu Tech Conf"},{"key":"ref86","doi-asserted-by":"publisher","DOI":"10.1145\/2560011"},{"key":"ref7","first-page":"22","article-title":"Don&#x2019;t blame disks for every storage\n subsystem failure","volume":"33","author":"jiang","year":"2008","journal-title":"login"},{"key":"ref49","doi-asserted-by":"publisher","DOI":"10.1109\/12.919278"},{"key":"ref87","doi-asserted-by":"publisher","DOI":"10.1145\/2541940.2541970"},{"key":"ref88","doi-asserted-by":"publisher","DOI":"10.1109\/LADC.2009.12"},{"key":"ref9","first-page":"279","article-title":"SymDrive:\n Testing drivers without devices","author":"renzelmann","year":"2012","journal-title":"Proc 10th USENIX Conf Oper Syst Des Implementation"},{"key":"ref46","doi-asserted-by":"publisher","DOI":"10.1145\/1367829.1367831"},{"key":"ref45","article-title":"VMware vSphere VMFS","year":"2017","journal-title":"VMWare Inc"},{"key":"ref48","article-title":"Phoronix test suite","year":"2015"},{"key":"ref47","first-page":"10","article-title":"Benchmarking the dependability of Windows and Linux using PostMark\n$^{TM}$ workloads","author":"kanoun","year":"2005","journal-title":"Proc 16th IEEE Int Symp Softw Rel Eng"},{"key":"ref42","doi-asserted-by":"publisher","DOI":"10.1145\/2382553.2382554"},{"key":"ref41","doi-asserted-by":"publisher","DOI":"10.1109\/ICSE.2015.67"},{"key":"ref44","author":"mauro","year":"2017","journal-title":"Mastering VMware VSphere 6"},{"key":"ref43","author":"hosken","year":"2016","journal-title":"Software defined storage"}],"container-title":["IEEE Transactions on Reliability"],"original-title":[],"link":[{"URL":"http:\/\/xplorestaging.ieee.org\/ielx7\/24\/8452065\/08390705.pdf?arnumber=8390705","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2022,1,26]],"date-time":"2022-01-26T10:50:26Z","timestamp":1643194226000},"score":1,"resource":{"primary":{"URL":"https:\/\/ieeexplore.ieee.org\/document\/8390705\/"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2018,9]]},"references-count":95,"journal-issue":{"issue":"3"},"URL":"https:\/\/doi.org\/10.1109\/tr.2018.2841203","relation":{},"ISSN":["0018-9529","1558-1721"],"issn-type":[{"value":"0018-9529","type":"print"},{"value":"1558-1721","type":"electronic"}],"subject":[],"published":{"date-parts":[[2018,9]]}}}