static ssize_t target_stat_lu_rev_show(struct config_item *item, char *page) { struct se_device *dev = to_stat_lu_dev(item); return snprintf(page, PAGE_SIZE, "%-" __stringify(INQUIRY_REVISION_LEN) "s\n", dev->t10_wwn.revision); }
static ssize_t target_stat_lu_prod_show(struct config_item *item, char *page) { struct se_device *dev = to_stat_lu_dev(item); return snprintf(page, PAGE_SIZE, "%-" __stringify(INQUIRY_MODEL_LEN) "s\n", dev->t10_wwn.model); }
static ssize_t target_stat_lu_resets_show(struct config_item *item, char *page) { struct se_device *dev = to_stat_lu_dev(item); /* scsiLuInResets */ return snprintf(page, PAGE_SIZE, "%lu\n", atomic_long_read(&dev->num_resets)); }
static ssize_t target_stat_lu_status_show(struct config_item *item, char *page) { struct se_device *dev = to_stat_lu_dev(item); /* scsiLuStatus */ return snprintf(page, PAGE_SIZE, "%s\n", (dev->export_count) ? "available" : "notavailable"); }
static ssize_t target_stat_lu_dev_type_show(struct config_item *item, char *page) { struct se_device *dev = to_stat_lu_dev(item); /* scsiLuPeripheralType */ return snprintf(page, PAGE_SIZE, "%u\n", dev->transport->get_device_type(dev)); }
static ssize_t target_stat_lu_creation_time_show(struct config_item *item, char *page) { struct se_device *dev = to_stat_lu_dev(item); /* scsiLuCreationTime */ return snprintf(page, PAGE_SIZE, "%u\n", (u32)(((u32)dev->creation_time - INITIAL_JIFFIES) * 100 / HZ)); }
static ssize_t target_stat_lu_write_mbytes_show(struct config_item *item, char *page) { struct se_device *dev = to_stat_lu_dev(item); /* scsiLuWrittenMegaBytes */ return snprintf(page, PAGE_SIZE, "%lu\n", atomic_long_read(&dev->write_bytes) >> 20); }
static ssize_t target_stat_lu_lu_name_show(struct config_item *item, char *page) { struct se_device *dev = to_stat_lu_dev(item); /* scsiLuWwnName */ return snprintf(page, PAGE_SIZE, "%s\n", (strlen(dev->t10_wwn.unit_serial)) ? dev->t10_wwn.unit_serial : "None"); }
static ssize_t target_stat_lu_rev_show(struct config_item *item, char *page) { struct se_device *dev = to_stat_lu_dev(item); int i; char str[sizeof(dev->t10_wwn.revision)+1]; /* scsiLuRevisionId */ for (i = 0; i < sizeof(dev->t10_wwn.revision); i++) str[i] = ISPRINT(dev->t10_wwn.revision[i]) ? dev->t10_wwn.revision[i] : ' '; str[i] = '\0'; return snprintf(page, PAGE_SIZE, "%s\n", str); }
static ssize_t target_stat_lu_dev_show(struct config_item *item, char *page) { return snprintf(page, PAGE_SIZE, "%u\n", to_stat_lu_dev(item)->dev_index); }
static ssize_t target_stat_lu_inst_show(struct config_item *item, char *page) { struct se_hba *hba = to_stat_lu_dev(item)->se_hba; return snprintf(page, PAGE_SIZE, "%u\n", hba->hba_index); }