printk(KERN_WARNING "BT results: bad msg_len = %d\n", msg_len); 
printk(KERN_DEBUG "BT results: bad msg_len = %d\n", msg_len); 
static int bt_get_result(struct si_sm_data *bt,			   unsigned char *data,			   unsigned int length){	int i, msg_len;	msg_len = bt->read_count - 2;		/* account for length & seq */	/* Always NetFn, Cmd, cCode */	if (msg_len < 3 || msg_len > IPMI_MAX_MSG_LENGTH) {		printk(KERN_WARNING "BT results: bad msg_len = %d\n", msg_len);		data[0] = bt->write_data[1] | 0x4;	/* Kludge a response */		data[1] = bt->write_data[3];		data[2] = IPMI_ERR_UNSPECIFIED;		msg_len = 3;	} else {		data[0] = bt->read_data[1];		data[1] = bt->read_data[3];		if (length < msg_len)		       bt->truncated = 1;		if (bt->truncated) {	/* can be set in read_all_bytes() */			data[2] = IPMI_ERR_MSG_TRUNCATED;			msg_len = 3;		} else		       memcpy(data + 2, bt->read_data + 4, msg_len - 2);		if (bt_debug & BT_DEBUG_MSG) {			printk (KERN_WARNING "BT: res (raw)");			for (i = 0; i < msg_len; i++)			       printk(" %02x", data[i]);			printk ("\n");		}	}	bt->read_count = 0;	/* paranoia */	return msg_len;}
4520	/local/tlutelli/issta_data/temp/c/2005_temp/2005/4520/c4edff1c19ef23e15aae64ca03f32c6719822d54/ipmi_bt_sm.c/clean/drivers/char/ipmi/ipmi_bt_sm.c