unsigned char *sense = scmd->data; 
unsigned char *sense = sc->top_sense; 
static void ub_top_sense_done(struct ub_dev *sc, struct ub_scsi_cmd *scmd){	unsigned char *sense = scmd->data;	struct ub_scsi_cmd *cmd;	/*	 * Ignoring scmd->act_len, because the buffer was pre-zeroed.	 */	ub_cmdtr_sense(sc, scmd, sense);	/*	 * Find the command which triggered the unit attention or a check,	 * save the sense into it, and advance its state machine.	 */	if ((cmd = ub_cmdq_peek(sc)) == NULL) {		printk(KERN_WARNING "%s: sense done while idle\n", sc->name);		return;	}	if (cmd != scmd->back) {		printk(KERN_WARNING "%s: "		    "sense done for wrong command 0x%x\n",		    sc->name, cmd->tag);		return;	}	if (cmd->state != UB_CMDST_SENSE) {		printk(KERN_WARNING "%s: "		    "sense done with bad cmd state %d\n",		    sc->name, cmd->state);		return;	}	cmd->key = sense[2] & 0x0F;	cmd->asc = sense[12];	cmd->ascq = sense[13];	ub_scsi_urb_compl(sc, cmd);}
4520	/local/tlutelli/issta_data/temp/c/2005_temp/2005/4520/a1cf96efbabac2f8af6f75286ffcefd40b0a466c/ub.c/buggy/drivers/block/ub.c