INFO: ERROR_BUS_RESET May Be Benign (111837)



The information in this article applies to:

  • Microsoft Win32 Application Programming Interface (API), when used with:
    • the operating system: Microsoft Windows NT 3.1
    • the operating system: Microsoft Windows NT 3.5
    • the operating system: Microsoft Windows NT 3.51
    • the operating system: Microsoft Windows NT 4.0
    • the operating system: Microsoft Windows 2000
    • the operating system: Microsoft Windows XP

This article was previously published under Q111837

SUMMARY

Tape API (application programming interface) functions may return an error code of ERROR_BUS_RESET when operating on SCSI tape devices. In many cases, you can ignore this error value and retry the operation. However, this error is fatal if received during a series of write operations because a tape drive cannot recover from a bus reset and continue writing.

MORE INFORMATION

When Windows NT starts it resets the SCSI bus. This bus reset is reported by the tape drive in response to the first operation after the reset.

The code fragment shown below in the Sample Code section could be used to check for ERROR_BUS_RESET and clear it. The same technique could be used for other informational errors, such as ERROR_MEDIA_CHANGED, that may not be relevant at application startup.

Sample Code

   /*
   ** This is a code fragment only and will not compile and run as is.
   */ 

      ...
      do {
         dwError = GetTapeStatus(hTape);
      } while (dwError == ERROR_BUS_RESET);
      ...
				

Modification Type:MajorLast Reviewed:3/15/2004
Keywords:kbAPI kbBackUp kbcode kberrmsg kbinfo kbKernBase KB111837