void
scsi_print_sense_hdr(const char *name, struct scsi_sense_hdr *sshdr)
{
	printk(KERN_INFO "%s: ", name);
	scsi_show_sense_hdr(sshdr);
	printk(KERN_INFO "%s: ", name);
	scsi_show_extd_sense(sshdr->asc, sshdr->ascq);
}
Пример #2
0
/*
 * Print normalized SCSI sense header with a prefix.
 */
void
scsi_print_sense_hdr(const char *name, struct scsi_sense_hdr *sshdr)
{
;
	scsi_show_sense_hdr(sshdr);
;
	scsi_show_extd_sense(sshdr->asc, sshdr->ascq);
}
void
scsi_cmd_print_sense_hdr(struct scsi_cmnd *scmd, const char *desc,
			  struct scsi_sense_hdr *sshdr)
{
	scmd_printk(KERN_INFO, scmd, "%s: ", desc);
	scsi_show_sense_hdr(sshdr);
	scmd_printk(KERN_INFO, scmd, "%s: ", desc);
	scsi_show_extd_sense(sshdr->asc, sshdr->ascq);
}
Пример #4
0
/*
 * Print normalized SCSI sense header with device information and a prefix.
 */
void
scsi_cmd_print_sense_hdr(struct scsi_cmnd *scmd, const char *desc,
			  struct scsi_sense_hdr *sshdr)
{
;
	scsi_show_sense_hdr(sshdr);
;
	scsi_show_extd_sense(sshdr->asc, sshdr->ascq);
}
/* Normalize and print sense buffer with name prefix */
void __scsi_print_sense(const char *name, const unsigned char *sense_buffer,
			int sense_len)
{
	struct scsi_sense_hdr sshdr;

	printk(KERN_INFO "%s: ", name);
	scsi_decode_sense_buffer(sense_buffer, sense_len, &sshdr);
	scsi_show_sense_hdr(&sshdr);
	scsi_decode_sense_extras(sense_buffer, sense_len, &sshdr);
	printk(KERN_INFO "%s: ", name);
	scsi_show_extd_sense(sshdr.asc, sshdr.ascq);
}
/* Normalize and print sense buffer in SCSI command */
void scsi_print_sense(char *name, struct scsi_cmnd *cmd)
{
	struct scsi_sense_hdr sshdr;

	scmd_printk(KERN_INFO, cmd, "");
	scsi_decode_sense_buffer(cmd->sense_buffer, SCSI_SENSE_BUFFERSIZE,
				 &sshdr);
	scsi_show_sense_hdr(&sshdr);
	scsi_decode_sense_extras(cmd->sense_buffer, SCSI_SENSE_BUFFERSIZE,
				 &sshdr);
	scmd_printk(KERN_INFO, cmd, "");
	scsi_show_extd_sense(sshdr.asc, sshdr.ascq);
}
Пример #7
0
void
scsi_print_sense_hdr(const char *name, struct scsi_sense_hdr *sshdr)
{
	const char *sense_txt;
	/* An example of deferred is when an earlier write to disk cache
	 * succeeded, but now the disk discovers that it cannot write the
	 * data to the magnetic media.
	 */
	const char *error = scsi_sense_is_deferred(sshdr) ? 
		"<<DEFERRED>>" : "Current";
	printk(KERN_INFO "%s: %s", name, error);
	if (sshdr->response_code >= 0x72)
		printk(" [descriptor]");

	sense_txt = scsi_sense_key_string(sshdr->sense_key);
	if (sense_txt)
		printk(": sense key: %s\n", sense_txt);
	else
		printk(": sense key=0x%x\n", sshdr->sense_key);
	printk(KERN_INFO "    ");
	scsi_show_extd_sense(sshdr->asc, sshdr->ascq);
	printk("\n");
}