- The message that sense data is truncated is now generated via the
  PRINT_WARNING() macro instead of TRACE_DBG().
- Cleaned up code for sense data truncation.
- Compiles again on RHEL and CentOS systems.


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@1363 d57e44dd-8a1f-0410-8b47-8ef2f437770f
This commit is contained in:
Bart Van Assche
2009-11-27 17:52:47 +00:00
parent 1065e2d317
commit e6f5aa8865
+16 -8
View File
@@ -2597,18 +2597,18 @@ static int srpt_xmit_response(struct scst_cmd *scmnd)
srp_rsp = ioctx->buf;
if (SCST_SENSE_VALID(scst_cmd_get_sense_buffer(scmnd))) {
unsigned int max_sense_len;
srp_rsp->sense_data_len = scst_cmd_get_sense_buffer_len(scmnd);
BUILD_BUG_ON(MIN_MAX_MESSAGE_SIZE <= sizeof(*srp_rsp));
WARN_ON(srp_max_message_size <= sizeof(*srp_rsp));
if (srp_rsp->sense_data_len >
(srp_max_message_size - sizeof *srp_rsp)) {
TRACE_DBG("truncated sense data from %d to %zd bytes",
srp_rsp->sense_data_len,
srp_max_message_size - sizeof *srp_rsp);
srp_rsp->sense_data_len =
srp_max_message_size - sizeof *srp_rsp;
max_sense_len = srp_max_message_size - sizeof(*srp_rsp);
if (srp_rsp->sense_data_len > max_sense_len) {
PRINT_WARNING("truncated sense data from %d to %d"
" bytes", srp_rsp->sense_data_len,
max_sense_len);
srp_rsp->sense_data_len = max_sense_len;
}
WARN_ON(srp_rsp->sense_data_len <= 0);
memcpy((u8 *) (srp_rsp + 1), scst_cmd_get_sense_buffer(scmnd),
srp_rsp->sense_data_len);
@@ -2962,7 +2962,11 @@ static struct class_attribute srpt_class_attrs[] = {
__ATTR_NULL,
};
#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 26)
static struct class_device_attribute srpt_dev_attrs[] = {
#else
static struct device_attribute srpt_dev_attrs[] = {
#endif
__ATTR(login_info, S_IRUGO, show_login_info, NULL),
__ATTR_NULL,
};
@@ -2975,7 +2979,11 @@ static struct class srpt_class = {
.dev_release = srpt_release_class_dev,
#endif
.class_attrs = srpt_class_attrs,
#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 26)
.class_dev_attrs = srpt_dev_attrs,
#else
.dev_attrs = srpt_dev_attrs,
#endif
};
/*