{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,9,28]],"date-time":"2025-09-28T04:06:49Z","timestamp":1759032409912,"version":"3.37.3"},"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":13,"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":[]},{"ORCID":"https:\/\/orcid.org\/0000-0002-6008-2656","authenticated-orcid":false,"given":"Luigi","family":"De Simone","sequence":"additional","affiliation":[]},{"ORCID":"https:\/\/orcid.org\/0000-0003-1084-4824","authenticated-orcid":false,"given":"Roberto","family":"Natella","sequence":"additional","affiliation":[]}],"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"},{"year":"2017","key":"ref38","article-title":"SAS\/SATA\/NVMe host bus adapters"},{"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"},{"year":"2017","key":"ref37","article-title":"AHCI supported chipsets"},{"journal-title":"Storage Design and Implementation in vSphere 6 A Technology Deep Dive","year":"2017","author":"khalil","key":"ref36"},{"key":"ref35","doi-asserted-by":"publisher","DOI":"10.1145\/2560012"},{"journal-title":"Linux Device Drivers Where the Kernel Meets the Hardware","year":"2005","author":"corbet","key":"ref34"},{"year":"2018","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."},{"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"},{"article-title":"Choosing a Linux Tracer.","year":"2015","author":"gregg","key":"ref65"},{"article-title":"Linux tracing systems & how they fit together.","year":"2017","author":"evans","key":"ref66"},{"year":"2017","key":"ref29","article-title":"The PCI utilities"},{"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"},{"year":"2002","key":"ref2","article-title":"Disaster recovery strategies with Tivoli Storage Management"},{"year":"2010","key":"ref1","article-title":"Best practices for data reliability with Oracle VM Server for SPARC"},{"year":"2015","key":"ref20","article-title":"IOzone filesystem benchmark"},{"journal-title":"DTrace Dynamic Tracing in Oracle Solaris Mac OS X and FreeBSD","year":"2011","author":"gregg","key":"ref22"},{"journal-title":"UNIX System Administration Handbook","year":"2000","author":"nemeth","key":"ref21"},{"article-title":"Instrumenting the Linux Kernel with SystemTap","year":"2005","author":"cohen","key":"ref24"},{"article-title":"Gaining insight into the Linux kernel with Kprobes","year":"2005","author":"cohen","key":"ref23"},{"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"},{"year":"0","key":"ref95"},{"year":"2007","key":"ref94","article-title":"Fusion-MPT Device Management User Guide"},{"journal-title":"Advanced Host Controller Interface for Serial ATA","year":"0","key":"ref93"},{"journal-title":"Serial ATA Revision 3 0","year":"0","key":"ref92"},{"key":"ref91","doi-asserted-by":"publisher","DOI":"10.1109\/ISSRE.2015.7381840"},{"key":"ref90","doi-asserted-by":"publisher","DOI":"10.1145\/3125497"},{"year":"2018","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"},{"journal-title":"LSI Logic","article-title":"MPT Fusion Linux OS driver release notes (mptlinux-4.00.13.04&#x2013;1)","year":"2007","key":"ref57"},{"year":"2018","key":"ref56","article-title":"scsi: aacraid: Fix command send race condition."},{"year":"2018","key":"ref55","article-title":"Rework AHCI LPM handling a little."},{"article-title":"On the construction of reliable device drivers","year":"2010","author":"ryzhyk","key":"ref54"},{"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"},{"journal-title":"Operating System Concepts","year":"2013","author":"silberschatz","key":"ref85"},{"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"},{"journal-title":"VMWare Inc","article-title":"VMware vSphere VMFS","year":"2017","key":"ref45"},{"year":"2015","key":"ref48","article-title":"Phoronix test suite"},{"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"},{"journal-title":"Mastering VMware VSphere 6","year":"2017","author":"mauro","key":"ref44"},{"journal-title":"Software defined storage","year":"2016","author":"hosken","key":"ref43"}],"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":[{"type":"print","value":"0018-9529"},{"type":"electronic","value":"1558-1721"}],"subject":[],"published":{"date-parts":[[2018,9]]}}}