diff options
author | Andy Grover <agrover@redhat.com> | 2015-05-19 17:44:41 -0400 |
---|---|---|
committer | Nicholas Bellinger <nab@linux-iscsi.org> | 2015-05-30 22:58:11 -0400 |
commit | a3541703ebbf99d499656b15987175f6579b42ac (patch) | |
tree | e89b458123a97639550974de649c3da382144219 /drivers/target | |
parent | 7bfea53b5c936d706d0bf60ec218fa72cde77121 (diff) |
target: Use a PASSTHROUGH flag instead of transport_types
It seems like we only care if a transport is passthrough or not. Convert
transport_type to a flags field and replace TRANSPORT_PLUGIN_* with a
flag, TRANSPORT_FLAG_PASSTHROUGH.
Signed-off-by: Andy Grover <agrover@redhat.com>
Reviewed-by: Ilias Tsitsimpis <iliastsi@arrikto.com>
Signed-off-by: Nicholas Bellinger <nab@linux-iscsi.org>
Diffstat (limited to 'drivers/target')
-rw-r--r-- | drivers/target/target_core_alua.c | 4 | ||||
-rw-r--r-- | drivers/target/target_core_configfs.c | 10 | ||||
-rw-r--r-- | drivers/target/target_core_device.c | 4 | ||||
-rw-r--r-- | drivers/target/target_core_file.c | 1 | ||||
-rw-r--r-- | drivers/target/target_core_iblock.c | 1 | ||||
-rw-r--r-- | drivers/target/target_core_pr.c | 2 | ||||
-rw-r--r-- | drivers/target/target_core_pscsi.c | 2 | ||||
-rw-r--r-- | drivers/target/target_core_rd.c | 1 | ||||
-rw-r--r-- | drivers/target/target_core_transport.c | 6 | ||||
-rw-r--r-- | drivers/target/target_core_user.c | 2 |
10 files changed, 15 insertions, 18 deletions
diff --git a/drivers/target/target_core_alua.c b/drivers/target/target_core_alua.c index 75cbde1f7c5b..4f8d4d459aa4 100644 --- a/drivers/target/target_core_alua.c +++ b/drivers/target/target_core_alua.c | |||
@@ -704,7 +704,7 @@ target_alua_state_check(struct se_cmd *cmd) | |||
704 | 704 | ||
705 | if (dev->se_hba->hba_flags & HBA_FLAGS_INTERNAL_USE) | 705 | if (dev->se_hba->hba_flags & HBA_FLAGS_INTERNAL_USE) |
706 | return 0; | 706 | return 0; |
707 | if (dev->transport->transport_type == TRANSPORT_PLUGIN_PHBA_PDEV) | 707 | if (dev->transport->transport_flags & TRANSPORT_FLAG_PASSTHROUGH) |
708 | return 0; | 708 | return 0; |
709 | 709 | ||
710 | if (!port) | 710 | if (!port) |
@@ -2377,7 +2377,7 @@ ssize_t core_alua_store_secondary_write_metadata( | |||
2377 | 2377 | ||
2378 | int core_setup_alua(struct se_device *dev) | 2378 | int core_setup_alua(struct se_device *dev) |
2379 | { | 2379 | { |
2380 | if (dev->transport->transport_type != TRANSPORT_PLUGIN_PHBA_PDEV && | 2380 | if (!(dev->transport->transport_flags & TRANSPORT_FLAG_PASSTHROUGH) && |
2381 | !(dev->se_hba->hba_flags & HBA_FLAGS_INTERNAL_USE)) { | 2381 | !(dev->se_hba->hba_flags & HBA_FLAGS_INTERNAL_USE)) { |
2382 | struct t10_alua_lu_gp_member *lu_gp_mem; | 2382 | struct t10_alua_lu_gp_member *lu_gp_mem; |
2383 | 2383 | ||
diff --git a/drivers/target/target_core_configfs.c b/drivers/target/target_core_configfs.c index 1580077971f8..e7b0430a0575 100644 --- a/drivers/target/target_core_configfs.c +++ b/drivers/target/target_core_configfs.c | |||
@@ -811,7 +811,7 @@ static ssize_t target_core_dev_pr_show_attr_res_holder(struct se_device *dev, | |||
811 | { | 811 | { |
812 | int ret; | 812 | int ret; |
813 | 813 | ||
814 | if (dev->transport->transport_type == TRANSPORT_PLUGIN_PHBA_PDEV) | 814 | if (dev->transport->transport_flags & TRANSPORT_FLAG_PASSTHROUGH) |
815 | return sprintf(page, "Passthrough\n"); | 815 | return sprintf(page, "Passthrough\n"); |
816 | 816 | ||
817 | spin_lock(&dev->dev_reservation_lock); | 817 | spin_lock(&dev->dev_reservation_lock); |
@@ -962,7 +962,7 @@ SE_DEV_PR_ATTR_RO(res_pr_type); | |||
962 | static ssize_t target_core_dev_pr_show_attr_res_type( | 962 | static ssize_t target_core_dev_pr_show_attr_res_type( |
963 | struct se_device *dev, char *page) | 963 | struct se_device *dev, char *page) |
964 | { | 964 | { |
965 | if (dev->transport->transport_type == TRANSPORT_PLUGIN_PHBA_PDEV) | 965 | if (dev->transport->transport_flags & TRANSPORT_FLAG_PASSTHROUGH) |
966 | return sprintf(page, "SPC_PASSTHROUGH\n"); | 966 | return sprintf(page, "SPC_PASSTHROUGH\n"); |
967 | else if (dev->dev_reservation_flags & DRF_SPC2_RESERVATIONS) | 967 | else if (dev->dev_reservation_flags & DRF_SPC2_RESERVATIONS) |
968 | return sprintf(page, "SPC2_RESERVATIONS\n"); | 968 | return sprintf(page, "SPC2_RESERVATIONS\n"); |
@@ -975,7 +975,7 @@ SE_DEV_PR_ATTR_RO(res_type); | |||
975 | static ssize_t target_core_dev_pr_show_attr_res_aptpl_active( | 975 | static ssize_t target_core_dev_pr_show_attr_res_aptpl_active( |
976 | struct se_device *dev, char *page) | 976 | struct se_device *dev, char *page) |
977 | { | 977 | { |
978 | if (dev->transport->transport_type == TRANSPORT_PLUGIN_PHBA_PDEV) | 978 | if (dev->transport->transport_flags & TRANSPORT_FLAG_PASSTHROUGH) |
979 | return 0; | 979 | return 0; |
980 | 980 | ||
981 | return sprintf(page, "APTPL Bit Status: %s\n", | 981 | return sprintf(page, "APTPL Bit Status: %s\n", |
@@ -990,7 +990,7 @@ SE_DEV_PR_ATTR_RO(res_aptpl_active); | |||
990 | static ssize_t target_core_dev_pr_show_attr_res_aptpl_metadata( | 990 | static ssize_t target_core_dev_pr_show_attr_res_aptpl_metadata( |
991 | struct se_device *dev, char *page) | 991 | struct se_device *dev, char *page) |
992 | { | 992 | { |
993 | if (dev->transport->transport_type == TRANSPORT_PLUGIN_PHBA_PDEV) | 993 | if (dev->transport->transport_flags & TRANSPORT_FLAG_PASSTHROUGH) |
994 | return 0; | 994 | return 0; |
995 | 995 | ||
996 | return sprintf(page, "Ready to process PR APTPL metadata..\n"); | 996 | return sprintf(page, "Ready to process PR APTPL metadata..\n"); |
@@ -1037,7 +1037,7 @@ static ssize_t target_core_dev_pr_store_attr_res_aptpl_metadata( | |||
1037 | u16 port_rpti = 0, tpgt = 0; | 1037 | u16 port_rpti = 0, tpgt = 0; |
1038 | u8 type = 0, scope; | 1038 | u8 type = 0, scope; |
1039 | 1039 | ||
1040 | if (dev->transport->transport_type == TRANSPORT_PLUGIN_PHBA_PDEV) | 1040 | if (dev->transport->transport_flags & TRANSPORT_FLAG_PASSTHROUGH) |
1041 | return 0; | 1041 | return 0; |
1042 | if (dev->dev_reservation_flags & DRF_SPC2_RESERVATIONS) | 1042 | if (dev->dev_reservation_flags & DRF_SPC2_RESERVATIONS) |
1043 | return 0; | 1043 | return 0; |
diff --git a/drivers/target/target_core_device.c b/drivers/target/target_core_device.c index 56b20dc54087..ce5f768181ff 100644 --- a/drivers/target/target_core_device.c +++ b/drivers/target/target_core_device.c | |||
@@ -528,7 +528,7 @@ static void core_export_port( | |||
528 | list_add_tail(&port->sep_list, &dev->dev_sep_list); | 528 | list_add_tail(&port->sep_list, &dev->dev_sep_list); |
529 | spin_unlock(&dev->se_port_lock); | 529 | spin_unlock(&dev->se_port_lock); |
530 | 530 | ||
531 | if (dev->transport->transport_type != TRANSPORT_PLUGIN_PHBA_PDEV && | 531 | if (!(dev->transport->transport_flags & TRANSPORT_FLAG_PASSTHROUGH) && |
532 | !(dev->se_hba->hba_flags & HBA_FLAGS_INTERNAL_USE)) { | 532 | !(dev->se_hba->hba_flags & HBA_FLAGS_INTERNAL_USE)) { |
533 | tg_pt_gp_mem = core_alua_allocate_tg_pt_gp_mem(port); | 533 | tg_pt_gp_mem = core_alua_allocate_tg_pt_gp_mem(port); |
534 | if (IS_ERR(tg_pt_gp_mem) || !tg_pt_gp_mem) { | 534 | if (IS_ERR(tg_pt_gp_mem) || !tg_pt_gp_mem) { |
@@ -1604,7 +1604,7 @@ int target_configure_device(struct se_device *dev) | |||
1604 | * anything virtual (IBLOCK, FILEIO, RAMDISK), but not for TCM/pSCSI | 1604 | * anything virtual (IBLOCK, FILEIO, RAMDISK), but not for TCM/pSCSI |
1605 | * passthrough because this is being provided by the backend LLD. | 1605 | * passthrough because this is being provided by the backend LLD. |
1606 | */ | 1606 | */ |
1607 | if (dev->transport->transport_type != TRANSPORT_PLUGIN_PHBA_PDEV) { | 1607 | if (!(dev->transport->transport_flags & TRANSPORT_FLAG_PASSTHROUGH)) { |
1608 | strncpy(&dev->t10_wwn.vendor[0], "LIO-ORG", 8); | 1608 | strncpy(&dev->t10_wwn.vendor[0], "LIO-ORG", 8); |
1609 | strncpy(&dev->t10_wwn.model[0], | 1609 | strncpy(&dev->t10_wwn.model[0], |
1610 | dev->transport->inquiry_prod, 16); | 1610 | dev->transport->inquiry_prod, 16); |
diff --git a/drivers/target/target_core_file.c b/drivers/target/target_core_file.c index f7e6e51aed36..3f27bfd816d8 100644 --- a/drivers/target/target_core_file.c +++ b/drivers/target/target_core_file.c | |||
@@ -958,7 +958,6 @@ static struct se_subsystem_api fileio_template = { | |||
958 | .inquiry_prod = "FILEIO", | 958 | .inquiry_prod = "FILEIO", |
959 | .inquiry_rev = FD_VERSION, | 959 | .inquiry_rev = FD_VERSION, |
960 | .owner = THIS_MODULE, | 960 | .owner = THIS_MODULE, |
961 | .transport_type = TRANSPORT_PLUGIN_VHBA_PDEV, | ||
962 | .attach_hba = fd_attach_hba, | 961 | .attach_hba = fd_attach_hba, |
963 | .detach_hba = fd_detach_hba, | 962 | .detach_hba = fd_detach_hba, |
964 | .alloc_device = fd_alloc_device, | 963 | .alloc_device = fd_alloc_device, |
diff --git a/drivers/target/target_core_iblock.c b/drivers/target/target_core_iblock.c index 1b7947c2510f..8c965683789f 100644 --- a/drivers/target/target_core_iblock.c +++ b/drivers/target/target_core_iblock.c | |||
@@ -904,7 +904,6 @@ static struct se_subsystem_api iblock_template = { | |||
904 | .inquiry_prod = "IBLOCK", | 904 | .inquiry_prod = "IBLOCK", |
905 | .inquiry_rev = IBLOCK_VERSION, | 905 | .inquiry_rev = IBLOCK_VERSION, |
906 | .owner = THIS_MODULE, | 906 | .owner = THIS_MODULE, |
907 | .transport_type = TRANSPORT_PLUGIN_VHBA_PDEV, | ||
908 | .attach_hba = iblock_attach_hba, | 907 | .attach_hba = iblock_attach_hba, |
909 | .detach_hba = iblock_detach_hba, | 908 | .detach_hba = iblock_detach_hba, |
910 | .alloc_device = iblock_alloc_device, | 909 | .alloc_device = iblock_alloc_device, |
diff --git a/drivers/target/target_core_pr.c b/drivers/target/target_core_pr.c index b7c81acf08d0..a15411c79ae9 100644 --- a/drivers/target/target_core_pr.c +++ b/drivers/target/target_core_pr.c | |||
@@ -4093,7 +4093,7 @@ target_check_reservation(struct se_cmd *cmd) | |||
4093 | return 0; | 4093 | return 0; |
4094 | if (dev->se_hba->hba_flags & HBA_FLAGS_INTERNAL_USE) | 4094 | if (dev->se_hba->hba_flags & HBA_FLAGS_INTERNAL_USE) |
4095 | return 0; | 4095 | return 0; |
4096 | if (dev->transport->transport_type == TRANSPORT_PLUGIN_PHBA_PDEV) | 4096 | if (dev->transport->transport_flags & TRANSPORT_FLAG_PASSTHROUGH) |
4097 | return 0; | 4097 | return 0; |
4098 | 4098 | ||
4099 | spin_lock(&dev->dev_reservation_lock); | 4099 | spin_lock(&dev->dev_reservation_lock); |
diff --git a/drivers/target/target_core_pscsi.c b/drivers/target/target_core_pscsi.c index 53bd0eb57095..ecc5eaef13d6 100644 --- a/drivers/target/target_core_pscsi.c +++ b/drivers/target/target_core_pscsi.c | |||
@@ -1141,7 +1141,7 @@ static struct configfs_attribute *pscsi_backend_dev_attrs[] = { | |||
1141 | static struct se_subsystem_api pscsi_template = { | 1141 | static struct se_subsystem_api pscsi_template = { |
1142 | .name = "pscsi", | 1142 | .name = "pscsi", |
1143 | .owner = THIS_MODULE, | 1143 | .owner = THIS_MODULE, |
1144 | .transport_type = TRANSPORT_PLUGIN_PHBA_PDEV, | 1144 | .transport_flags = TRANSPORT_FLAG_PASSTHROUGH, |
1145 | .attach_hba = pscsi_attach_hba, | 1145 | .attach_hba = pscsi_attach_hba, |
1146 | .detach_hba = pscsi_detach_hba, | 1146 | .detach_hba = pscsi_detach_hba, |
1147 | .pmode_enable_hba = pscsi_pmode_enable_hba, | 1147 | .pmode_enable_hba = pscsi_pmode_enable_hba, |
diff --git a/drivers/target/target_core_rd.c b/drivers/target/target_core_rd.c index a263bf5fab8d..d16489b6a1a4 100644 --- a/drivers/target/target_core_rd.c +++ b/drivers/target/target_core_rd.c | |||
@@ -733,7 +733,6 @@ static struct se_subsystem_api rd_mcp_template = { | |||
733 | .name = "rd_mcp", | 733 | .name = "rd_mcp", |
734 | .inquiry_prod = "RAMDISK-MCP", | 734 | .inquiry_prod = "RAMDISK-MCP", |
735 | .inquiry_rev = RD_MCP_VERSION, | 735 | .inquiry_rev = RD_MCP_VERSION, |
736 | .transport_type = TRANSPORT_PLUGIN_VHBA_VDEV, | ||
737 | .attach_hba = rd_attach_hba, | 736 | .attach_hba = rd_attach_hba, |
738 | .detach_hba = rd_detach_hba, | 737 | .detach_hba = rd_detach_hba, |
739 | .alloc_device = rd_alloc_device, | 738 | .alloc_device = rd_alloc_device, |
diff --git a/drivers/target/target_core_transport.c b/drivers/target/target_core_transport.c index 90c92f04a586..675f2d9d1f14 100644 --- a/drivers/target/target_core_transport.c +++ b/drivers/target/target_core_transport.c | |||
@@ -1196,7 +1196,7 @@ transport_check_alloc_task_attr(struct se_cmd *cmd) | |||
1196 | * Check if SAM Task Attribute emulation is enabled for this | 1196 | * Check if SAM Task Attribute emulation is enabled for this |
1197 | * struct se_device storage object | 1197 | * struct se_device storage object |
1198 | */ | 1198 | */ |
1199 | if (dev->transport->transport_type == TRANSPORT_PLUGIN_PHBA_PDEV) | 1199 | if (dev->transport->transport_flags & TRANSPORT_FLAG_PASSTHROUGH) |
1200 | return 0; | 1200 | return 0; |
1201 | 1201 | ||
1202 | if (cmd->sam_task_attr == TCM_ACA_TAG) { | 1202 | if (cmd->sam_task_attr == TCM_ACA_TAG) { |
@@ -1787,7 +1787,7 @@ static bool target_handle_task_attr(struct se_cmd *cmd) | |||
1787 | { | 1787 | { |
1788 | struct se_device *dev = cmd->se_dev; | 1788 | struct se_device *dev = cmd->se_dev; |
1789 | 1789 | ||
1790 | if (dev->transport->transport_type == TRANSPORT_PLUGIN_PHBA_PDEV) | 1790 | if (dev->transport->transport_flags & TRANSPORT_FLAG_PASSTHROUGH) |
1791 | return false; | 1791 | return false; |
1792 | 1792 | ||
1793 | /* | 1793 | /* |
@@ -1912,7 +1912,7 @@ static void transport_complete_task_attr(struct se_cmd *cmd) | |||
1912 | { | 1912 | { |
1913 | struct se_device *dev = cmd->se_dev; | 1913 | struct se_device *dev = cmd->se_dev; |
1914 | 1914 | ||
1915 | if (dev->transport->transport_type == TRANSPORT_PLUGIN_PHBA_PDEV) | 1915 | if (dev->transport->transport_flags & TRANSPORT_FLAG_PASSTHROUGH) |
1916 | return; | 1916 | return; |
1917 | 1917 | ||
1918 | if (cmd->sam_task_attr == TCM_SIMPLE_TAG) { | 1918 | if (cmd->sam_task_attr == TCM_SIMPLE_TAG) { |
diff --git a/drivers/target/target_core_user.c b/drivers/target/target_core_user.c index 2768ea2cfd7a..07d2996d8c1f 100644 --- a/drivers/target/target_core_user.c +++ b/drivers/target/target_core_user.c | |||
@@ -1077,7 +1077,7 @@ static struct se_subsystem_api tcmu_template = { | |||
1077 | .inquiry_prod = "USER", | 1077 | .inquiry_prod = "USER", |
1078 | .inquiry_rev = TCMU_VERSION, | 1078 | .inquiry_rev = TCMU_VERSION, |
1079 | .owner = THIS_MODULE, | 1079 | .owner = THIS_MODULE, |
1080 | .transport_type = TRANSPORT_PLUGIN_PHBA_PDEV, | 1080 | .transport_flags = TRANSPORT_FLAG_PASSTHROUGH, |
1081 | .attach_hba = tcmu_attach_hba, | 1081 | .attach_hba = tcmu_attach_hba, |
1082 | .detach_hba = tcmu_detach_hba, | 1082 | .detach_hba = tcmu_detach_hba, |
1083 | .alloc_device = tcmu_alloc_device, | 1083 | .alloc_device = tcmu_alloc_device, |