aboutsummaryrefslogtreecommitdiff
path: root/src/sg_rdac.c
diff options
context:
space:
mode:
authorDouglas Gilbert <dgilbert@interlog.com>2015-04-10 15:00:15 +0000
committerDouglas Gilbert <dgilbert@interlog.com>2015-04-10 15:00:15 +0000
commite3aba3876d339f3a1c22ca00f37e4ec56ad17db6 (patch)
tree044f794b14d685275dcce9738002424c3c78b948 /src/sg_rdac.c
parentbaa91c3f8356cf0b5ff94a778070c3c6714ac5f9 (diff)
downloadsg3_utils-e3aba3876d339f3a1c22ca00f37e4ec56ad17db6.tar.gz
sg_inq: version descriptor list to 20150126; sg_lib_data: sync asc/ascq codes with T10 20150406
git-svn-id: https://svn.bingwo.ca/repos/sg3_utils/trunk@641 6180dd3e-e324-4e3e-922d-17de1ae2f315
Diffstat (limited to 'src/sg_rdac.c')
-rw-r--r--src/sg_rdac.c45
1 files changed, 27 insertions, 18 deletions
diff --git a/src/sg_rdac.c b/src/sg_rdac.c
index 6488e982..71fe8714 100644
--- a/src/sg_rdac.c
+++ b/src/sg_rdac.c
@@ -25,7 +25,7 @@
#include "sg_cmds_basic.h"
-static const char * version_str = "1.07 20150401";
+static const char * version_str = "1.08 20150407";
unsigned char mode6_hdr[] = {
0x75, /* Length */
@@ -130,11 +130,14 @@ static int fail_all_paths(int fd, int use_6_byte)
rdac_common = &rdac_page->attr;
} else {
memcpy(fail_paths_pg, mode10_hdr, 8);
- rdac_page_exp = (struct rdac_expanded_page *)(fail_paths_pg + 8);
+ rdac_page_exp = (struct rdac_expanded_page *)
+ (fail_paths_pg + 8);
rdac_page_exp->page_code = RDAC_CONTROLLER_PAGE | 0x40;
rdac_page_exp->subpage_code = 0x1;
- rdac_page_exp->page_length[0] = EXPANDED_LUN_SPACE_PAGE_LEN >> 8;
- rdac_page_exp->page_length[1] = EXPANDED_LUN_SPACE_PAGE_LEN & 0xFF;
+ rdac_page_exp->page_length[0] =
+ EXPANDED_LUN_SPACE_PAGE_LEN >> 8;
+ rdac_page_exp->page_length[1] =
+ EXPANDED_LUN_SPACE_PAGE_LEN & 0xFF;
rdac_common = &rdac_page_exp->attr;
}
@@ -192,11 +195,14 @@ static int fail_this_path(int fd, int lun, int use_6_byte)
rdac_page->lun_table[lun] = 0x81;
} else {
memcpy(fail_paths_pg, mode10_hdr, 8);
- rdac_page_exp = (struct rdac_expanded_page *)(fail_paths_pg + 8);
+ rdac_page_exp = (struct rdac_expanded_page *)
+ (fail_paths_pg + 8);
rdac_page_exp->page_code = RDAC_CONTROLLER_PAGE | 0x40;
rdac_page_exp->subpage_code = 0x1;
- rdac_page_exp->page_length[0] = EXPANDED_LUN_SPACE_PAGE_LEN >> 8;
- rdac_page_exp->page_length[1] = EXPANDED_LUN_SPACE_PAGE_LEN & 0xFF;
+ rdac_page_exp->page_length[0] =
+ EXPANDED_LUN_SPACE_PAGE_LEN >> 8;
+ rdac_page_exp->page_length[1] =
+ EXPANDED_LUN_SPACE_PAGE_LEN & 0xFF;
rdac_common = &rdac_page_exp->attr;
memset(rdac_page_exp->lun_table, 0x0, 256);
rdac_page_exp->lun_table[lun] = 0x81;
@@ -321,8 +327,10 @@ static void print_rdac_mode( unsigned char *ptr, int subpg)
}
printf(" Quiescence timeout: %d\n", rdac_ptr->quiescence);
printf(" RDAC option 0x%x\n", rdac_ptr->options);
- printf(" ALUA: %s\n", (rdac_ptr->options & 0x4 ? "Enabled" : "Disabled" ));
- printf(" Force Quiescence: %s\n", (rdac_ptr->options & 0x2 ? "Enabled" : "Disabled" ));
+ printf(" ALUA: %s\n", (rdac_ptr->options & 0x4 ? "Enabled" :
+ "Disabled" ));
+ printf(" Force Quiescence: %s\n", (rdac_ptr->options & 0x2 ?
+ "Enabled" : "Disabled" ));
printf (" LUN Table: (p = preferred, a = alternate, u = utm lun)\n");
printf(" 0 1 2 3 4 5 6 7 8 9 a b c d e f\n");
for (k = 0; k < lun_table_len; k += 16) {
@@ -434,15 +442,16 @@ int main(int argc, char * argv[])
} else if (fail_path) {
res = fail_this_path(fd, lun, use_6_byte);
} else {
- if (use_6_byte) {
- res = sg_ll_mode_sense6(fd, /*DBD*/ 0, /* page control */0,
- 0x2c, 0, rsp_buff, 252,
- 1, do_verbose);
- } else {
- res = sg_ll_mode_sense10(fd, /*llbaa*/ 0, /*DBD*/ 0, /* page control */0,
- 0x2c, 0x1, rsp_buff, 308,
- 1, do_verbose);
- }
+ if (use_6_byte)
+ res = sg_ll_mode_sense6(fd, /* DBD */ 0, /* PC */0,
+ 0x2c, 0, rsp_buff, 252,
+ 1, do_verbose);
+ else
+ res = sg_ll_mode_sense10(fd, /* llbaa */ 0,
+ /* DBD */ 0,
+ /* page control */0,
+ 0x2c, 0x1, rsp_buff, 308,
+ 1, do_verbose);
if (!res) {
if (do_verbose)