mbox series

[v4,0/2] NFSD: delay unmount source's export after inter-server copy completed.

Message ID 20210423205946.24407-1-dai.ngo@oracle.com (mailing list archive)
Headers show
Series NFSD: delay unmount source's export after inter-server copy completed. | expand

Message

Dai Ngo April 23, 2021, 8:59 p.m. UTC
Hi Olga,

Currently the source's export is mounted and unmounted on every
inter-server copy operation. This causes unnecessary overhead
for each copy.

This patch series is an enhancement to allow the export to remain
mounted for a configurable period (default to 15 minutes). If the 
export is not being used for the configured time it will be unmounted
by a delayed task. If it's used again then its expiration time is
extended for another period.

Since mount and unmount are no longer done on every copy request,
the restriction of copy size (14*rsize), in __nfs4_copy_file_range,
is removed.

-Dai

v2: fix compiler warning of missing prototype.
v3: remove the used of semaphore.
    eliminated all RPC calls for subsequence mount by allowing
       all exports from one server to share one vfsmount.
    make inter-server threshold a module configuration parameter.
v4: convert nsui_refcnt to use refcount_t.
    add note about 20secs wait in nfsd4_interssc_connect.
    removed (14*rsize) restriction from __nfs4_copy_file_range.

Comments

Dai Ngo May 3, 2021, 4:37 p.m. UTC | #1
Hi Olga,

Just a reminder that v4 patch is available for your review.

Thanks,

-Dai

On 4/23/21 1:59 PM, Dai Ngo wrote:
> Hi Olga,
>
> Currently the source's export is mounted and unmounted on every
> inter-server copy operation. This causes unnecessary overhead
> for each copy.
>
> This patch series is an enhancement to allow the export to remain
> mounted for a configurable period (default to 15 minutes). If the
> export is not being used for the configured time it will be unmounted
> by a delayed task. If it's used again then its expiration time is
> extended for another period.
>
> Since mount and unmount are no longer done on every copy request,
> the restriction of copy size (14*rsize), in __nfs4_copy_file_range,
> is removed.
>
> -Dai
>
> v2: fix compiler warning of missing prototype.
> v3: remove the used of semaphore.
>      eliminated all RPC calls for subsequence mount by allowing
>         all exports from one server to share one vfsmount.
>      make inter-server threshold a module configuration parameter.
> v4: convert nsui_refcnt to use refcount_t.
>      add note about 20secs wait in nfsd4_interssc_connect.
>      removed (14*rsize) restriction from __nfs4_copy_file_range.
>
>
>
Dai Ngo May 12, 2021, 4:53 p.m. UTC | #2
On 5/3/21 9:37 AM, dai.ngo@oracle.com wrote:

> Hi Olga,
>
> Just a reminder that v4 patch is available for your review.

Ping again in case you did not get the last reminder.

-Dai

>
> Thanks,
>
> -Dai
>
> On 4/23/21 1:59 PM, Dai Ngo wrote:
>> Hi Olga,
>>
>> Currently the source's export is mounted and unmounted on every
>> inter-server copy operation. This causes unnecessary overhead
>> for each copy.
>>
>> This patch series is an enhancement to allow the export to remain
>> mounted for a configurable period (default to 15 minutes). If the
>> export is not being used for the configured time it will be unmounted
>> by a delayed task. If it's used again then its expiration time is
>> extended for another period.
>>
>> Since mount and unmount are no longer done on every copy request,
>> the restriction of copy size (14*rsize), in __nfs4_copy_file_range,
>> is removed.
>>
>> -Dai
>>
>> v2: fix compiler warning of missing prototype.
>> v3: remove the used of semaphore.
>>      eliminated all RPC calls for subsequence mount by allowing
>>         all exports from one server to share one vfsmount.
>>      make inter-server threshold a module configuration parameter.
>> v4: convert nsui_refcnt to use refcount_t.
>>      add note about 20secs wait in nfsd4_interssc_connect.
>>      removed (14*rsize) restriction from __nfs4_copy_file_range.
>>
>>
>>