aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drivers/scsi/qla4xxx/ql4_os.c7
1 files changed, 3 insertions, 4 deletions
diff --git a/drivers/scsi/qla4xxx/ql4_os.c b/drivers/scsi/qla4xxx/ql4_os.c
index 9eef7d41522f..320206376206 100644
--- a/drivers/scsi/qla4xxx/ql4_os.c
+++ b/drivers/scsi/qla4xxx/ql4_os.c
@@ -3565,14 +3565,13 @@ static int qla4xxx_copy_from_fwddb_param(struct iscsi_bus_flash_session *sess,
3565 if (test_bit(OPT_IPV6_DEVICE, &options)) { 3565 if (test_bit(OPT_IPV6_DEVICE, &options)) {
3566 conn->ipv6_traffic_class = fw_ddb_entry->ipv4_tos; 3566 conn->ipv6_traffic_class = fw_ddb_entry->ipv4_tos;
3567 3567
3568 conn->link_local_ipv6_addr = kzalloc(IPv6_ADDR_LEN, GFP_KERNEL); 3568 conn->link_local_ipv6_addr = kmemdup(
3569 fw_ddb_entry->link_local_ipv6_addr,
3570 IPv6_ADDR_LEN, GFP_KERNEL);
3569 if (!conn->link_local_ipv6_addr) { 3571 if (!conn->link_local_ipv6_addr) {
3570 rc = -ENOMEM; 3572 rc = -ENOMEM;
3571 goto exit_copy; 3573 goto exit_copy;
3572 } 3574 }
3573
3574 memcpy(conn->link_local_ipv6_addr,
3575 fw_ddb_entry->link_local_ipv6_addr, IPv6_ADDR_LEN);
3576 } else { 3575 } else {
3577 conn->ipv4_tos = fw_ddb_entry->ipv4_tos; 3576 conn->ipv4_tos = fw_ddb_entry->ipv4_tos;
3578 } 3577 }