Red Hat Bugzilla – Bug 112584
reservation error code, corrupts request queue
Last modified: 2007-11-30 17:06:59 EST
From Bugzilla Helper:
User-Agent: Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)
Description of problem:
There is bug in aacraid module, in function "aac_scsi_cmd()". Due to
this request queue is getting corrupted.
int aac_scsi_cmd(Scsi_Cmnd * scsicmd)
* Unhandled commands
printk(KERN_WARNING "Unhandled SCSI Command:
scsicmd->result = DID_OK << 16 | COMMAND_COMPLETE
<< 8 | CHECK_CONDITION;
set_sense((u8 *) &sense_data[cid],
ASENCODE_INVALID_COMMAND, 0, 0, 0, 0);
In the above function, if it receives Reservation command, then it is
treating it as Unhandled command. So it came to the default case,
and the error handling code is causing the problem.
There are two error handing codes:
1. It is setting the sense code to SENKEY_ILLEGAL, and is calling
"__aac_io_done()". With this the command is retried in function
"scsi_io_completion()" (i.e the request is again put into the
2. It is also returning -1, so the caller(scsi_dispatch_cmd())is
again retrying by putting the request in the queue again.
So the same request is added two times in the request queue, and is
causing the corruption of the re
From: Salyzyn, Mark [mailto:firstname.lastname@example.org]
Sent: Friday, January 30, 2004 2:28 PM
To: Sheryl Sage
Cc: Buddhi Madhav; Neelakandan Panchaksharam
Subject: RE: linux reservation issue aac_scsi_cmd() function in
This is an old driver you are using. You will find the current aacraid
driver we ship with our products enclosed (has been submitted `badly'
the 2.4 tree, correctly to the ac tree, and is merged into the 2.6
but is missing from aging distributions).
The problem may be multiple; the result code was incorrect (needed to
shifted one bit over), sense data is not getting into the scsi layer's
sense buffer, *and* the exit code was incorrect. I hope this solves
problem, but will investigate on Monday the assertion that the
ILLEGAL_REQUEST causes a retry in the scsi layer.
Sincerely -- Mark Salyzyn
Created attachment 97890 [details]
2.6 version of aacraid with validated fix to request queue
Created attachment 98085 [details]
Updated scsi queue fix to aacraid 1.1.2 for RHEL 3 Update 2
veritas cluster server engineering team has done QA and test on this patch. It
has been clean on all TCs.
Setting state to modified as Ernie included into U2 on 2/29.
An errata has been issued which should help the problem described in this bug report.
This report is therefore being closed with a resolution of ERRATA. For more information
on the solution and/or where to find the updated files, please follow the link below. You may reopen
this bug report if the solution does not work for you.