diff mbox series

tests/nvme: Set clear_ids for passthru targets

Message ID 20220705205632.1720-1-alan.adamson@oracle.com (mailing list archive)
State New, archived
Headers show
Series tests/nvme: Set clear_ids for passthru targets | expand

Commit Message

Alan Adamson July 5, 2022, 8:56 p.m. UTC
This allows to connect to passthru targets when the client and target
are on the same host.

Signed-off-by: Alan Adamson <alan.adamson@oracle.com>
---
 tests/nvme/rc | 3 +++
 1 file changed, 3 insertions(+)

Comments

Chaitanya Kulkarni July 6, 2022, 12:18 a.m. UTC | #1
On 7/5/22 13:56, Alan Adamson wrote:
> This allows to connect to passthru targets when the client and target
> are on the same host.
> 
> Signed-off-by: Alan Adamson <alan.adamson@oracle.com>
> ---
>   tests/nvme/rc | 3 +++
>   1 file changed, 3 insertions(+)
> 
> diff --git a/tests/nvme/rc b/tests/nvme/rc
> index 4bebbc762cbb..5e50e69fb3f0 100644
> --- a/tests/nvme/rc
> +++ b/tests/nvme/rc
> @@ -303,6 +303,9 @@ _create_nvmet_passthru() {
>   
>   	_test_dev_nvme_ctrl > "${passthru_path}/device_path"
>   	echo 1 > "${passthru_path}/enable"
> +	if [ -f "${passthru_path}/clear_ids" ]; then
> +		echo 1 > "${passthru_path}/clear_ids"
> +	fi
>   }
>   
>   _remove_nvmet_passhtru() {

without looking into the code, just wondering whether we need
an explicit check to ensure that both host and target on the
same machine something like checking nvme_trtype=loop ?

-ck
Alan Adamson July 6, 2022, 3:58 p.m. UTC | #2
> On Jul 5, 2022, at 5:18 PM, Chaitanya Kulkarni <chaitanyak@nvidia.com> wrote:
> 
> On 7/5/22 13:56, Alan Adamson wrote:
>> This allows to connect to passthru targets when the client and target
>> are on the same host.
>> 
>> Signed-off-by: Alan Adamson <alan.adamson@oracle.com>
>> ---
>>  tests/nvme/rc | 3 +++
>>  1 file changed, 3 insertions(+)
>> 
>> diff --git a/tests/nvme/rc b/tests/nvme/rc
>> index 4bebbc762cbb..5e50e69fb3f0 100644
>> --- a/tests/nvme/rc
>> +++ b/tests/nvme/rc
>> @@ -303,6 +303,9 @@ _create_nvmet_passthru() {
>> 
>>  	_test_dev_nvme_ctrl > "${passthru_path}/device_path"
>>  	echo 1 > "${passthru_path}/enable"
>> +	if [ -f "${passthru_path}/clear_ids" ]; then
>> +		echo 1 > "${passthru_path}/clear_ids"
>> +	fi
>>  }
>> 
>>  _remove_nvmet_passhtru() {
> 
> without looking into the code, just wondering whether we need
> an explicit check to ensure that both host and target on the
> same machine something like checking nvme_trtype=loop ?

If nvme_trtype=loop, this code isn’t necessary because loop defaults
to clear_ids, but it is necessary for tcp and rdma.  The check is
for necessary when running a pre 5.19 kernel where clear_ids
isn’t present just to prevent a error message.

Alan
Alan Adamson July 14, 2022, 4:25 p.m. UTC | #3
> On Jul 6, 2022, at 8:58 AM, Alan Adamson <alan.adamson@oracle.com> wrote:
> 
> 
> 
>> On Jul 5, 2022, at 5:18 PM, Chaitanya Kulkarni <chaitanyak@nvidia.com> wrote:
>> 
>> On 7/5/22 13:56, Alan Adamson wrote:
>>> This allows to connect to passthru targets when the client and target
>>> are on the same host.
>>> 
>>> Signed-off-by: Alan Adamson <alan.adamson@oracle.com>
>>> ---
>>> tests/nvme/rc | 3 +++
>>> 1 file changed, 3 insertions(+)
>>> 
>>> diff --git a/tests/nvme/rc b/tests/nvme/rc
>>> index 4bebbc762cbb..5e50e69fb3f0 100644
>>> --- a/tests/nvme/rc
>>> +++ b/tests/nvme/rc
>>> @@ -303,6 +303,9 @@ _create_nvmet_passthru() {
>>> 
>>> 	_test_dev_nvme_ctrl > "${passthru_path}/device_path"
>>> 	echo 1 > "${passthru_path}/enable"
>>> +	if [ -f "${passthru_path}/clear_ids" ]; then
>>> +		echo 1 > "${passthru_path}/clear_ids"
>>> +	fi
>>> }
>>> 
>>> _remove_nvmet_passhtru() {
>> 
>> without looking into the code, just wondering whether we need
>> an explicit check to ensure that both host and target on the
>> same machine something like checking nvme_trtype=loop ?
> 
> If nvme_trtype=loop, this code isn’t necessary because loop defaults
> to clear_ids, but it is necessary for tcp and rdma.  The check is
> for necessary when running a pre 5.19 kernel where clear_ids
> isn’t present just to prevent a error message.
> 
> Alan

Any other comments or feedback?

Alan
Shinichiro Kawasaki July 15, 2022, 8:46 a.m. UTC | #4
On Jul 14, 2022 / 16:25, Alan Adamson wrote:
> 
> 
> > On Jul 6, 2022, at 8:58 AM, Alan Adamson <alan.adamson@oracle.com> wrote:
> > 
> > 
> > 
> >> On Jul 5, 2022, at 5:18 PM, Chaitanya Kulkarni <chaitanyak@nvidia.com> wrote:
> >> 
> >> On 7/5/22 13:56, Alan Adamson wrote:
> >>> This allows to connect to passthru targets when the client and target
> >>> are on the same host.
> >>> 
> >>> Signed-off-by: Alan Adamson <alan.adamson@oracle.com>
> >>> ---
> >>> tests/nvme/rc | 3 +++
> >>> 1 file changed, 3 insertions(+)
> >>> 
> >>> diff --git a/tests/nvme/rc b/tests/nvme/rc
> >>> index 4bebbc762cbb..5e50e69fb3f0 100644
> >>> --- a/tests/nvme/rc
> >>> +++ b/tests/nvme/rc
> >>> @@ -303,6 +303,9 @@ _create_nvmet_passthru() {
> >>> 
> >>> 	_test_dev_nvme_ctrl > "${passthru_path}/device_path"
> >>> 	echo 1 > "${passthru_path}/enable"
> >>> +	if [ -f "${passthru_path}/clear_ids" ]; then
> >>> +		echo 1 > "${passthru_path}/clear_ids"
> >>> +	fi
> >>> }
> >>> 
> >>> _remove_nvmet_passhtru() {
> >> 
> >> without looking into the code, just wondering whether we need
> >> an explicit check to ensure that both host and target on the
> >> same machine something like checking nvme_trtype=loop ?
> > 
> > If nvme_trtype=loop, this code isn’t necessary because loop defaults
> > to clear_ids, but it is necessary for tcp and rdma.  The check is
> > for necessary when running a pre 5.19 kernel where clear_ids
> > isn’t present just to prevent a error message.
> > 
> > Alan
> 
> Any other comments or feedback?

I've applied the patch with an edit to replace single bracket to double
brackets. Wish this edit is ok for you. Thanks!
Alan Adamson July 15, 2022, 5:22 p.m. UTC | #5
> On Jul 15, 2022, at 1:46 AM, Shinichiro Kawasaki <shinichiro.kawasaki@wdc.com> wrote:
> 
> On Jul 14, 2022 / 16:25, Alan Adamson wrote:
>> 
>> 
>>> On Jul 6, 2022, at 8:58 AM, Alan Adamson <alan.adamson@oracle.com> wrote:
>>> 
>>> 
>>> 
>>>> On Jul 5, 2022, at 5:18 PM, Chaitanya Kulkarni <chaitanyak@nvidia.com> wrote:
>>>> 
>>>> On 7/5/22 13:56, Alan Adamson wrote:
>>>>> This allows to connect to passthru targets when the client and target
>>>>> are on the same host.
>>>>> 
>>>>> Signed-off-by: Alan Adamson <alan.adamson@oracle.com>
>>>>> ---
>>>>> tests/nvme/rc | 3 +++
>>>>> 1 file changed, 3 insertions(+)
>>>>> 
>>>>> diff --git a/tests/nvme/rc b/tests/nvme/rc
>>>>> index 4bebbc762cbb..5e50e69fb3f0 100644
>>>>> --- a/tests/nvme/rc
>>>>> +++ b/tests/nvme/rc
>>>>> @@ -303,6 +303,9 @@ _create_nvmet_passthru() {
>>>>> 
>>>>> 	_test_dev_nvme_ctrl > "${passthru_path}/device_path"
>>>>> 	echo 1 > "${passthru_path}/enable"
>>>>> +	if [ -f "${passthru_path}/clear_ids" ]; then
>>>>> +		echo 1 > "${passthru_path}/clear_ids"
>>>>> +	fi
>>>>> }
>>>>> 
>>>>> _remove_nvmet_passhtru() {
>>>> 
>>>> without looking into the code, just wondering whether we need
>>>> an explicit check to ensure that both host and target on the
>>>> same machine something like checking nvme_trtype=loop ?
>>> 
>>> If nvme_trtype=loop, this code isn’t necessary because loop defaults
>>> to clear_ids, but it is necessary for tcp and rdma.  The check is
>>> for necessary when running a pre 5.19 kernel where clear_ids
>>> isn’t present just to prevent a error message.
>>> 
>>> Alan
>> 
>> Any other comments or feedback?
> 
> I've applied the patch with an edit to replace single bracket to double
> brackets. Wish this edit is ok for you. Thanks!
Looks good.

Thanks!

Alan


> 
> -- 
> Shin'ichiro Kawasaki
diff mbox series

Patch

diff --git a/tests/nvme/rc b/tests/nvme/rc
index 4bebbc762cbb..5e50e69fb3f0 100644
--- a/tests/nvme/rc
+++ b/tests/nvme/rc
@@ -303,6 +303,9 @@  _create_nvmet_passthru() {
 
 	_test_dev_nvme_ctrl > "${passthru_path}/device_path"
 	echo 1 > "${passthru_path}/enable"
+	if [ -f "${passthru_path}/clear_ids" ]; then
+		echo 1 > "${passthru_path}/clear_ids"
+	fi
 }
 
 _remove_nvmet_passhtru() {