diff options
Diffstat (limited to 'drivers/scsi')
-rw-r--r-- | drivers/scsi/ibmvscsi/rpa_vscsi.c | 11 | ||||
-rw-r--r-- | drivers/scsi/iscsi_tcp.c | 134 | ||||
-rw-r--r-- | drivers/scsi/iscsi_tcp.h | 9 | ||||
-rw-r--r-- | drivers/scsi/mac53c94.c | 2 | ||||
-rw-r--r-- | drivers/scsi/mesh.c | 5 | ||||
-rw-r--r-- | drivers/scsi/sata_svw.c | 2 |
6 files changed, 87 insertions, 76 deletions
diff --git a/drivers/scsi/ibmvscsi/rpa_vscsi.c b/drivers/scsi/ibmvscsi/rpa_vscsi.c index ed22b96580c6..01b8ac641eb8 100644 --- a/drivers/scsi/ibmvscsi/rpa_vscsi.c +++ b/drivers/scsi/ibmvscsi/rpa_vscsi.c | |||
@@ -156,8 +156,8 @@ static void gather_partition_info(void) | |||
156 | { | 156 | { |
157 | struct device_node *rootdn; | 157 | struct device_node *rootdn; |
158 | 158 | ||
159 | char *ppartition_name; | 159 | const char *ppartition_name; |
160 | unsigned int *p_number_ptr; | 160 | const unsigned int *p_number_ptr; |
161 | 161 | ||
162 | /* Retrieve information about this partition */ | 162 | /* Retrieve information about this partition */ |
163 | rootdn = find_path_device("/"); | 163 | rootdn = find_path_device("/"); |
@@ -165,14 +165,11 @@ static void gather_partition_info(void) | |||
165 | return; | 165 | return; |
166 | } | 166 | } |
167 | 167 | ||
168 | ppartition_name = | 168 | ppartition_name = get_property(rootdn, "ibm,partition-name", NULL); |
169 | get_property(rootdn, "ibm,partition-name", NULL); | ||
170 | if (ppartition_name) | 169 | if (ppartition_name) |
171 | strncpy(partition_name, ppartition_name, | 170 | strncpy(partition_name, ppartition_name, |
172 | sizeof(partition_name)); | 171 | sizeof(partition_name)); |
173 | p_number_ptr = | 172 | p_number_ptr = get_property(rootdn, "ibm,partition-no", NULL); |
174 | (unsigned int *)get_property(rootdn, "ibm,partition-no", | ||
175 | NULL); | ||
176 | if (p_number_ptr) | 173 | if (p_number_ptr) |
177 | partition_number = *p_number_ptr; | 174 | partition_number = *p_number_ptr; |
178 | } | 175 | } |
diff --git a/drivers/scsi/iscsi_tcp.c b/drivers/scsi/iscsi_tcp.c index 058f094f945a..66a1ae1d6982 100644 --- a/drivers/scsi/iscsi_tcp.c +++ b/drivers/scsi/iscsi_tcp.c | |||
@@ -26,6 +26,7 @@ | |||
26 | * Zhenyu Wang | 26 | * Zhenyu Wang |
27 | */ | 27 | */ |
28 | 28 | ||
29 | #include <linux/err.h> | ||
29 | #include <linux/types.h> | 30 | #include <linux/types.h> |
30 | #include <linux/list.h> | 31 | #include <linux/list.h> |
31 | #include <linux/inet.h> | 32 | #include <linux/inet.h> |
@@ -107,8 +108,11 @@ iscsi_hdr_digest(struct iscsi_conn *conn, struct iscsi_buf *buf, | |||
107 | u8* crc) | 108 | u8* crc) |
108 | { | 109 | { |
109 | struct iscsi_tcp_conn *tcp_conn = conn->dd_data; | 110 | struct iscsi_tcp_conn *tcp_conn = conn->dd_data; |
111 | struct hash_desc desc; | ||
110 | 112 | ||
111 | crypto_digest_digest(tcp_conn->tx_tfm, &buf->sg, 1, crc); | 113 | desc.tfm = tcp_conn->tx_tfm; |
114 | desc.flags = 0; | ||
115 | crypto_hash_digest(&desc, &buf->sg, buf->sg.length, crc); | ||
112 | buf->sg.length += sizeof(uint32_t); | 116 | buf->sg.length += sizeof(uint32_t); |
113 | } | 117 | } |
114 | 118 | ||
@@ -452,11 +456,14 @@ iscsi_tcp_hdr_recv(struct iscsi_conn *conn) | |||
452 | } | 456 | } |
453 | 457 | ||
454 | if (conn->hdrdgst_en) { | 458 | if (conn->hdrdgst_en) { |
459 | struct hash_desc desc; | ||
455 | struct scatterlist sg; | 460 | struct scatterlist sg; |
456 | 461 | ||
457 | sg_init_one(&sg, (u8 *)hdr, | 462 | sg_init_one(&sg, (u8 *)hdr, |
458 | sizeof(struct iscsi_hdr) + ahslen); | 463 | sizeof(struct iscsi_hdr) + ahslen); |
459 | crypto_digest_digest(tcp_conn->rx_tfm, &sg, 1, (u8 *)&cdgst); | 464 | desc.tfm = tcp_conn->rx_tfm; |
465 | desc.flags = 0; | ||
466 | crypto_hash_digest(&desc, &sg, sg.length, (u8 *)&cdgst); | ||
460 | rdgst = *(uint32_t*)((char*)hdr + sizeof(struct iscsi_hdr) + | 467 | rdgst = *(uint32_t*)((char*)hdr + sizeof(struct iscsi_hdr) + |
461 | ahslen); | 468 | ahslen); |
462 | if (cdgst != rdgst) { | 469 | if (cdgst != rdgst) { |
@@ -673,7 +680,7 @@ partial_sg_digest_update(struct iscsi_tcp_conn *tcp_conn, | |||
673 | memcpy(&temp, sg, sizeof(struct scatterlist)); | 680 | memcpy(&temp, sg, sizeof(struct scatterlist)); |
674 | temp.offset = offset; | 681 | temp.offset = offset; |
675 | temp.length = length; | 682 | temp.length = length; |
676 | crypto_digest_update(tcp_conn->data_rx_tfm, &temp, 1); | 683 | crypto_hash_update(&tcp_conn->data_rx_hash, &temp, length); |
677 | } | 684 | } |
678 | 685 | ||
679 | static void | 686 | static void |
@@ -682,7 +689,7 @@ iscsi_recv_digest_update(struct iscsi_tcp_conn *tcp_conn, char* buf, int len) | |||
682 | struct scatterlist tmp; | 689 | struct scatterlist tmp; |
683 | 690 | ||
684 | sg_init_one(&tmp, buf, len); | 691 | sg_init_one(&tmp, buf, len); |
685 | crypto_digest_update(tcp_conn->data_rx_tfm, &tmp, 1); | 692 | crypto_hash_update(&tcp_conn->data_rx_hash, &tmp, len); |
686 | } | 693 | } |
687 | 694 | ||
688 | static int iscsi_scsi_data_in(struct iscsi_conn *conn) | 695 | static int iscsi_scsi_data_in(struct iscsi_conn *conn) |
@@ -736,9 +743,9 @@ static int iscsi_scsi_data_in(struct iscsi_conn *conn) | |||
736 | if (!rc) { | 743 | if (!rc) { |
737 | if (conn->datadgst_en) { | 744 | if (conn->datadgst_en) { |
738 | if (!offset) | 745 | if (!offset) |
739 | crypto_digest_update( | 746 | crypto_hash_update( |
740 | tcp_conn->data_rx_tfm, | 747 | &tcp_conn->data_rx_hash, |
741 | &sg[i], 1); | 748 | &sg[i], sg[i].length); |
742 | else | 749 | else |
743 | partial_sg_digest_update(tcp_conn, | 750 | partial_sg_digest_update(tcp_conn, |
744 | &sg[i], | 751 | &sg[i], |
@@ -877,8 +884,7 @@ more: | |||
877 | rc = iscsi_tcp_hdr_recv(conn); | 884 | rc = iscsi_tcp_hdr_recv(conn); |
878 | if (!rc && tcp_conn->in.datalen) { | 885 | if (!rc && tcp_conn->in.datalen) { |
879 | if (conn->datadgst_en) { | 886 | if (conn->datadgst_en) { |
880 | BUG_ON(!tcp_conn->data_rx_tfm); | 887 | crypto_hash_init(&tcp_conn->data_rx_hash); |
881 | crypto_digest_init(tcp_conn->data_rx_tfm); | ||
882 | } | 888 | } |
883 | tcp_conn->in_progress = IN_PROGRESS_DATA_RECV; | 889 | tcp_conn->in_progress = IN_PROGRESS_DATA_RECV; |
884 | } else if (rc) { | 890 | } else if (rc) { |
@@ -931,11 +937,11 @@ more: | |||
931 | tcp_conn->in.padding); | 937 | tcp_conn->in.padding); |
932 | memset(pad, 0, tcp_conn->in.padding); | 938 | memset(pad, 0, tcp_conn->in.padding); |
933 | sg_init_one(&sg, pad, tcp_conn->in.padding); | 939 | sg_init_one(&sg, pad, tcp_conn->in.padding); |
934 | crypto_digest_update(tcp_conn->data_rx_tfm, | 940 | crypto_hash_update(&tcp_conn->data_rx_hash, |
935 | &sg, 1); | 941 | &sg, sg.length); |
936 | } | 942 | } |
937 | crypto_digest_final(tcp_conn->data_rx_tfm, | 943 | crypto_hash_final(&tcp_conn->data_rx_hash, |
938 | (u8 *) & tcp_conn->in.datadgst); | 944 | (u8 *)&tcp_conn->in.datadgst); |
939 | debug_tcp("rx digest 0x%x\n", tcp_conn->in.datadgst); | 945 | debug_tcp("rx digest 0x%x\n", tcp_conn->in.datadgst); |
940 | tcp_conn->in_progress = IN_PROGRESS_DDIGEST_RECV; | 946 | tcp_conn->in_progress = IN_PROGRESS_DDIGEST_RECV; |
941 | } else | 947 | } else |
@@ -1181,8 +1187,7 @@ iscsi_data_digest_init(struct iscsi_tcp_conn *tcp_conn, | |||
1181 | { | 1187 | { |
1182 | struct iscsi_tcp_cmd_task *tcp_ctask = ctask->dd_data; | 1188 | struct iscsi_tcp_cmd_task *tcp_ctask = ctask->dd_data; |
1183 | 1189 | ||
1184 | BUG_ON(!tcp_conn->data_tx_tfm); | 1190 | crypto_hash_init(&tcp_conn->data_tx_hash); |
1185 | crypto_digest_init(tcp_conn->data_tx_tfm); | ||
1186 | tcp_ctask->digest_count = 4; | 1191 | tcp_ctask->digest_count = 4; |
1187 | } | 1192 | } |
1188 | 1193 | ||
@@ -1196,7 +1201,7 @@ iscsi_digest_final_send(struct iscsi_conn *conn, struct iscsi_cmd_task *ctask, | |||
1196 | int sent = 0; | 1201 | int sent = 0; |
1197 | 1202 | ||
1198 | if (final) | 1203 | if (final) |
1199 | crypto_digest_final(tcp_conn->data_tx_tfm, (u8*)digest); | 1204 | crypto_hash_final(&tcp_conn->data_tx_hash, (u8 *)digest); |
1200 | 1205 | ||
1201 | iscsi_buf_init_iov(buf, (char*)digest, 4); | 1206 | iscsi_buf_init_iov(buf, (char*)digest, 4); |
1202 | rc = iscsi_sendpage(conn, buf, &tcp_ctask->digest_count, &sent); | 1207 | rc = iscsi_sendpage(conn, buf, &tcp_ctask->digest_count, &sent); |
@@ -1491,16 +1496,17 @@ handle_xmstate_imm_data(struct iscsi_conn *conn, struct iscsi_cmd_task *ctask) | |||
1491 | if (rc) { | 1496 | if (rc) { |
1492 | tcp_ctask->xmstate |= XMSTATE_IMM_DATA; | 1497 | tcp_ctask->xmstate |= XMSTATE_IMM_DATA; |
1493 | if (conn->datadgst_en) { | 1498 | if (conn->datadgst_en) { |
1494 | crypto_digest_final(tcp_conn->data_tx_tfm, | 1499 | crypto_hash_final(&tcp_conn->data_tx_hash, |
1495 | (u8*)&tcp_ctask->immdigest); | 1500 | (u8 *)&tcp_ctask->immdigest); |
1496 | debug_tcp("tx imm sendpage fail 0x%x\n", | 1501 | debug_tcp("tx imm sendpage fail 0x%x\n", |
1497 | tcp_ctask->datadigest); | 1502 | tcp_ctask->datadigest); |
1498 | } | 1503 | } |
1499 | return rc; | 1504 | return rc; |
1500 | } | 1505 | } |
1501 | if (conn->datadgst_en) | 1506 | if (conn->datadgst_en) |
1502 | crypto_digest_update(tcp_conn->data_tx_tfm, | 1507 | crypto_hash_update(&tcp_conn->data_tx_hash, |
1503 | &tcp_ctask->sendbuf.sg, 1); | 1508 | &tcp_ctask->sendbuf.sg, |
1509 | tcp_ctask->sendbuf.sg.length); | ||
1504 | 1510 | ||
1505 | if (!ctask->imm_count) | 1511 | if (!ctask->imm_count) |
1506 | break; | 1512 | break; |
@@ -1577,8 +1583,8 @@ handle_xmstate_uns_data(struct iscsi_conn *conn, struct iscsi_cmd_task *ctask) | |||
1577 | tcp_ctask->xmstate |= XMSTATE_UNS_DATA; | 1583 | tcp_ctask->xmstate |= XMSTATE_UNS_DATA; |
1578 | /* will continue with this ctask later.. */ | 1584 | /* will continue with this ctask later.. */ |
1579 | if (conn->datadgst_en) { | 1585 | if (conn->datadgst_en) { |
1580 | crypto_digest_final(tcp_conn->data_tx_tfm, | 1586 | crypto_hash_final(&tcp_conn->data_tx_hash, |
1581 | (u8 *)&dtask->digest); | 1587 | (u8 *)&dtask->digest); |
1582 | debug_tcp("tx uns data fail 0x%x\n", | 1588 | debug_tcp("tx uns data fail 0x%x\n", |
1583 | dtask->digest); | 1589 | dtask->digest); |
1584 | } | 1590 | } |
@@ -1593,8 +1599,9 @@ handle_xmstate_uns_data(struct iscsi_conn *conn, struct iscsi_cmd_task *ctask) | |||
1593 | * so pass it | 1599 | * so pass it |
1594 | */ | 1600 | */ |
1595 | if (conn->datadgst_en && tcp_ctask->sent - start > 0) | 1601 | if (conn->datadgst_en && tcp_ctask->sent - start > 0) |
1596 | crypto_digest_update(tcp_conn->data_tx_tfm, | 1602 | crypto_hash_update(&tcp_conn->data_tx_hash, |
1597 | &tcp_ctask->sendbuf.sg, 1); | 1603 | &tcp_ctask->sendbuf.sg, |
1604 | tcp_ctask->sendbuf.sg.length); | ||
1598 | 1605 | ||
1599 | if (!ctask->data_count) | 1606 | if (!ctask->data_count) |
1600 | break; | 1607 | break; |
@@ -1668,7 +1675,7 @@ solicit_again: | |||
1668 | tcp_ctask->xmstate |= XMSTATE_SOL_DATA; | 1675 | tcp_ctask->xmstate |= XMSTATE_SOL_DATA; |
1669 | /* will continue with this ctask later.. */ | 1676 | /* will continue with this ctask later.. */ |
1670 | if (conn->datadgst_en) { | 1677 | if (conn->datadgst_en) { |
1671 | crypto_digest_final(tcp_conn->data_tx_tfm, | 1678 | crypto_hash_final(&tcp_conn->data_tx_hash, |
1672 | (u8 *)&dtask->digest); | 1679 | (u8 *)&dtask->digest); |
1673 | debug_tcp("r2t data send fail 0x%x\n", dtask->digest); | 1680 | debug_tcp("r2t data send fail 0x%x\n", dtask->digest); |
1674 | } | 1681 | } |
@@ -1677,8 +1684,8 @@ solicit_again: | |||
1677 | 1684 | ||
1678 | BUG_ON(r2t->data_count < 0); | 1685 | BUG_ON(r2t->data_count < 0); |
1679 | if (conn->datadgst_en) | 1686 | if (conn->datadgst_en) |
1680 | crypto_digest_update(tcp_conn->data_tx_tfm, &r2t->sendbuf.sg, | 1687 | crypto_hash_update(&tcp_conn->data_tx_hash, &r2t->sendbuf.sg, |
1681 | 1); | 1688 | r2t->sendbuf.sg.length); |
1682 | 1689 | ||
1683 | if (r2t->data_count) { | 1690 | if (r2t->data_count) { |
1684 | BUG_ON(ctask->sc->use_sg == 0); | 1691 | BUG_ON(ctask->sc->use_sg == 0); |
@@ -1766,8 +1773,9 @@ handle_xmstate_w_pad(struct iscsi_conn *conn, struct iscsi_cmd_task *ctask) | |||
1766 | } | 1773 | } |
1767 | 1774 | ||
1768 | if (conn->datadgst_en) { | 1775 | if (conn->datadgst_en) { |
1769 | crypto_digest_update(tcp_conn->data_tx_tfm, | 1776 | crypto_hash_update(&tcp_conn->data_tx_hash, |
1770 | &tcp_ctask->sendbuf.sg, 1); | 1777 | &tcp_ctask->sendbuf.sg, |
1778 | tcp_ctask->sendbuf.sg.length); | ||
1771 | /* imm data? */ | 1779 | /* imm data? */ |
1772 | if (!dtask) { | 1780 | if (!dtask) { |
1773 | rc = iscsi_digest_final_send(conn, ctask, | 1781 | rc = iscsi_digest_final_send(conn, ctask, |
@@ -1963,13 +1971,13 @@ iscsi_tcp_conn_destroy(struct iscsi_cls_conn *cls_conn) | |||
1963 | /* now free tcp_conn */ | 1971 | /* now free tcp_conn */ |
1964 | if (digest) { | 1972 | if (digest) { |
1965 | if (tcp_conn->tx_tfm) | 1973 | if (tcp_conn->tx_tfm) |
1966 | crypto_free_tfm(tcp_conn->tx_tfm); | 1974 | crypto_free_hash(tcp_conn->tx_tfm); |
1967 | if (tcp_conn->rx_tfm) | 1975 | if (tcp_conn->rx_tfm) |
1968 | crypto_free_tfm(tcp_conn->rx_tfm); | 1976 | crypto_free_hash(tcp_conn->rx_tfm); |
1969 | if (tcp_conn->data_tx_tfm) | 1977 | if (tcp_conn->data_tx_hash.tfm) |
1970 | crypto_free_tfm(tcp_conn->data_tx_tfm); | 1978 | crypto_free_hash(tcp_conn->data_tx_hash.tfm); |
1971 | if (tcp_conn->data_rx_tfm) | 1979 | if (tcp_conn->data_rx_hash.tfm) |
1972 | crypto_free_tfm(tcp_conn->data_rx_tfm); | 1980 | crypto_free_hash(tcp_conn->data_rx_hash.tfm); |
1973 | } | 1981 | } |
1974 | 1982 | ||
1975 | kfree(tcp_conn); | 1983 | kfree(tcp_conn); |
@@ -2130,44 +2138,48 @@ iscsi_conn_set_param(struct iscsi_cls_conn *cls_conn, enum iscsi_param param, | |||
2130 | if (conn->hdrdgst_en) { | 2138 | if (conn->hdrdgst_en) { |
2131 | tcp_conn->hdr_size += sizeof(__u32); | 2139 | tcp_conn->hdr_size += sizeof(__u32); |
2132 | if (!tcp_conn->tx_tfm) | 2140 | if (!tcp_conn->tx_tfm) |
2133 | tcp_conn->tx_tfm = crypto_alloc_tfm("crc32c", | 2141 | tcp_conn->tx_tfm = |
2134 | 0); | 2142 | crypto_alloc_hash("crc32c", 0, |
2135 | if (!tcp_conn->tx_tfm) | 2143 | CRYPTO_ALG_ASYNC); |
2136 | return -ENOMEM; | 2144 | if (IS_ERR(tcp_conn->tx_tfm)) |
2145 | return PTR_ERR(tcp_conn->tx_tfm); | ||
2137 | if (!tcp_conn->rx_tfm) | 2146 | if (!tcp_conn->rx_tfm) |
2138 | tcp_conn->rx_tfm = crypto_alloc_tfm("crc32c", | 2147 | tcp_conn->rx_tfm = |
2139 | 0); | 2148 | crypto_alloc_hash("crc32c", 0, |
2140 | if (!tcp_conn->rx_tfm) { | 2149 | CRYPTO_ALG_ASYNC); |
2141 | crypto_free_tfm(tcp_conn->tx_tfm); | 2150 | if (IS_ERR(tcp_conn->rx_tfm)) { |
2142 | return -ENOMEM; | 2151 | crypto_free_hash(tcp_conn->tx_tfm); |
2152 | return PTR_ERR(tcp_conn->rx_tfm); | ||
2143 | } | 2153 | } |
2144 | } else { | 2154 | } else { |
2145 | if (tcp_conn->tx_tfm) | 2155 | if (tcp_conn->tx_tfm) |
2146 | crypto_free_tfm(tcp_conn->tx_tfm); | 2156 | crypto_free_hash(tcp_conn->tx_tfm); |
2147 | if (tcp_conn->rx_tfm) | 2157 | if (tcp_conn->rx_tfm) |
2148 | crypto_free_tfm(tcp_conn->rx_tfm); | 2158 | crypto_free_hash(tcp_conn->rx_tfm); |
2149 | } | 2159 | } |
2150 | break; | 2160 | break; |
2151 | case ISCSI_PARAM_DATADGST_EN: | 2161 | case ISCSI_PARAM_DATADGST_EN: |
2152 | iscsi_set_param(cls_conn, param, buf, buflen); | 2162 | iscsi_set_param(cls_conn, param, buf, buflen); |
2153 | if (conn->datadgst_en) { | 2163 | if (conn->datadgst_en) { |
2154 | if (!tcp_conn->data_tx_tfm) | 2164 | if (!tcp_conn->data_tx_hash.tfm) |
2155 | tcp_conn->data_tx_tfm = | 2165 | tcp_conn->data_tx_hash.tfm = |
2156 | crypto_alloc_tfm("crc32c", 0); | 2166 | crypto_alloc_hash("crc32c", 0, |
2157 | if (!tcp_conn->data_tx_tfm) | 2167 | CRYPTO_ALG_ASYNC); |
2158 | return -ENOMEM; | 2168 | if (IS_ERR(tcp_conn->data_tx_hash.tfm)) |
2159 | if (!tcp_conn->data_rx_tfm) | 2169 | return PTR_ERR(tcp_conn->data_tx_hash.tfm); |
2160 | tcp_conn->data_rx_tfm = | 2170 | if (!tcp_conn->data_rx_hash.tfm) |
2161 | crypto_alloc_tfm("crc32c", 0); | 2171 | tcp_conn->data_rx_hash.tfm = |
2162 | if (!tcp_conn->data_rx_tfm) { | 2172 | crypto_alloc_hash("crc32c", 0, |
2163 | crypto_free_tfm(tcp_conn->data_tx_tfm); | 2173 | CRYPTO_ALG_ASYNC); |
2164 | return -ENOMEM; | 2174 | if (IS_ERR(tcp_conn->data_rx_hash.tfm)) { |
2175 | crypto_free_hash(tcp_conn->data_tx_hash.tfm); | ||
2176 | return PTR_ERR(tcp_conn->data_rx_hash.tfm); | ||
2165 | } | 2177 | } |
2166 | } else { | 2178 | } else { |
2167 | if (tcp_conn->data_tx_tfm) | 2179 | if (tcp_conn->data_tx_hash.tfm) |
2168 | crypto_free_tfm(tcp_conn->data_tx_tfm); | 2180 | crypto_free_hash(tcp_conn->data_tx_hash.tfm); |
2169 | if (tcp_conn->data_rx_tfm) | 2181 | if (tcp_conn->data_rx_hash.tfm) |
2170 | crypto_free_tfm(tcp_conn->data_rx_tfm); | 2182 | crypto_free_hash(tcp_conn->data_rx_hash.tfm); |
2171 | } | 2183 | } |
2172 | tcp_conn->sendpage = conn->datadgst_en ? | 2184 | tcp_conn->sendpage = conn->datadgst_en ? |
2173 | sock_no_sendpage : tcp_conn->sock->ops->sendpage; | 2185 | sock_no_sendpage : tcp_conn->sock->ops->sendpage; |
diff --git a/drivers/scsi/iscsi_tcp.h b/drivers/scsi/iscsi_tcp.h index 6a4ee704e46e..e35701305fc9 100644 --- a/drivers/scsi/iscsi_tcp.h +++ b/drivers/scsi/iscsi_tcp.h | |||
@@ -51,6 +51,7 @@ | |||
51 | #define ISCSI_SG_TABLESIZE SG_ALL | 51 | #define ISCSI_SG_TABLESIZE SG_ALL |
52 | #define ISCSI_TCP_MAX_CMD_LEN 16 | 52 | #define ISCSI_TCP_MAX_CMD_LEN 16 |
53 | 53 | ||
54 | struct crypto_hash; | ||
54 | struct socket; | 55 | struct socket; |
55 | 56 | ||
56 | /* Socket connection recieve helper */ | 57 | /* Socket connection recieve helper */ |
@@ -84,8 +85,8 @@ struct iscsi_tcp_conn { | |||
84 | /* iSCSI connection-wide sequencing */ | 85 | /* iSCSI connection-wide sequencing */ |
85 | int hdr_size; /* PDU header size */ | 86 | int hdr_size; /* PDU header size */ |
86 | 87 | ||
87 | struct crypto_tfm *rx_tfm; /* CRC32C (Rx) */ | 88 | struct crypto_hash *rx_tfm; /* CRC32C (Rx) */ |
88 | struct crypto_tfm *data_rx_tfm; /* CRC32C (Rx) for data */ | 89 | struct hash_desc data_rx_hash; /* CRC32C (Rx) for data */ |
89 | 90 | ||
90 | /* control data */ | 91 | /* control data */ |
91 | struct iscsi_tcp_recv in; /* TCP receive context */ | 92 | struct iscsi_tcp_recv in; /* TCP receive context */ |
@@ -97,8 +98,8 @@ struct iscsi_tcp_conn { | |||
97 | void (*old_write_space)(struct sock *); | 98 | void (*old_write_space)(struct sock *); |
98 | 99 | ||
99 | /* xmit */ | 100 | /* xmit */ |
100 | struct crypto_tfm *tx_tfm; /* CRC32C (Tx) */ | 101 | struct crypto_hash *tx_tfm; /* CRC32C (Tx) */ |
101 | struct crypto_tfm *data_tx_tfm; /* CRC32C (Tx) for data */ | 102 | struct hash_desc data_tx_hash; /* CRC32C (Tx) for data */ |
102 | 103 | ||
103 | /* MIB custom statistics */ | 104 | /* MIB custom statistics */ |
104 | uint32_t sendpage_failures_cnt; | 105 | uint32_t sendpage_failures_cnt; |
diff --git a/drivers/scsi/mac53c94.c b/drivers/scsi/mac53c94.c index 89ef34df5a1d..6422de72bf43 100644 --- a/drivers/scsi/mac53c94.c +++ b/drivers/scsi/mac53c94.c | |||
@@ -431,7 +431,7 @@ static int mac53c94_probe(struct macio_dev *mdev, const struct of_device_id *mat | |||
431 | struct fsc_state *state; | 431 | struct fsc_state *state; |
432 | struct Scsi_Host *host; | 432 | struct Scsi_Host *host; |
433 | void *dma_cmd_space; | 433 | void *dma_cmd_space; |
434 | unsigned char *clkprop; | 434 | const unsigned char *clkprop; |
435 | int proplen, rc = -ENODEV; | 435 | int proplen, rc = -ENODEV; |
436 | 436 | ||
437 | if (macio_resource_count(mdev) != 2 || macio_irq_count(mdev) != 2) { | 437 | if (macio_resource_count(mdev) != 2 || macio_irq_count(mdev) != 2) { |
diff --git a/drivers/scsi/mesh.c b/drivers/scsi/mesh.c index 5572981a9f92..592b52afe658 100644 --- a/drivers/scsi/mesh.c +++ b/drivers/scsi/mesh.c | |||
@@ -1850,7 +1850,8 @@ static int mesh_probe(struct macio_dev *mdev, const struct of_device_id *match) | |||
1850 | { | 1850 | { |
1851 | struct device_node *mesh = macio_get_of_node(mdev); | 1851 | struct device_node *mesh = macio_get_of_node(mdev); |
1852 | struct pci_dev* pdev = macio_get_pci_dev(mdev); | 1852 | struct pci_dev* pdev = macio_get_pci_dev(mdev); |
1853 | int tgt, *cfp, minper; | 1853 | int tgt, minper; |
1854 | const int *cfp; | ||
1854 | struct mesh_state *ms; | 1855 | struct mesh_state *ms; |
1855 | struct Scsi_Host *mesh_host; | 1856 | struct Scsi_Host *mesh_host; |
1856 | void *dma_cmd_space; | 1857 | void *dma_cmd_space; |
@@ -1939,7 +1940,7 @@ static int mesh_probe(struct macio_dev *mdev, const struct of_device_id *match) | |||
1939 | ms->tgts[tgt].current_req = NULL; | 1940 | ms->tgts[tgt].current_req = NULL; |
1940 | } | 1941 | } |
1941 | 1942 | ||
1942 | if ((cfp = (int *) get_property(mesh, "clock-frequency", NULL))) | 1943 | if ((cfp = get_property(mesh, "clock-frequency", NULL))) |
1943 | ms->clk_freq = *cfp; | 1944 | ms->clk_freq = *cfp; |
1944 | else { | 1945 | else { |
1945 | printk(KERN_INFO "mesh: assuming 50MHz clock frequency\n"); | 1946 | printk(KERN_INFO "mesh: assuming 50MHz clock frequency\n"); |
diff --git a/drivers/scsi/sata_svw.c b/drivers/scsi/sata_svw.c index 7d0858095e1f..6b70c3c76dfd 100644 --- a/drivers/scsi/sata_svw.c +++ b/drivers/scsi/sata_svw.c | |||
@@ -268,7 +268,7 @@ static int k2_sata_proc_info(struct Scsi_Host *shost, char *page, char **start, | |||
268 | /* Match it to a port node */ | 268 | /* Match it to a port node */ |
269 | index = (ap == ap->host_set->ports[0]) ? 0 : 1; | 269 | index = (ap == ap->host_set->ports[0]) ? 0 : 1; |
270 | for (np = np->child; np != NULL; np = np->sibling) { | 270 | for (np = np->child; np != NULL; np = np->sibling) { |
271 | u32 *reg = (u32 *)get_property(np, "reg", NULL); | 271 | const u32 *reg = get_property(np, "reg", NULL); |
272 | if (!reg) | 272 | if (!reg) |
273 | continue; | 273 | continue; |
274 | if (index == *reg) | 274 | if (index == *reg) |