Best practices: Adding Persistent Handle support
Christopher R. Hertel
crh at samba.org
Mon Jun 5 15:23:10 UTC 2017
I really do appreciate the clarity of your explanation, and (knowing a
little something about the architecture of Windows) it makes sense to me.
My question, mostly to other Samba developers, is more of a practical issue.
From Samba's perspective, given the architecture of Samba, if there are no
shares offering CA support, should we turn on
SMB2_GLOBAL_CAP_PERSISTENT_HANDLES server-wide or leave it off to indicate
that the particular server isn't offering any CA shares?
On 06/05/2017 08:45 AM, Tom Talpey wrote:
> Snipping to just one topic for this...
>> -----Original Message-----
>> From: Christopher R. Hertel [mailto:crh at samba.org]
>> Sent: Monday, June 5, 2017 12:12 AM
>> To: Tom Talpey <ttalpey at microsoft.com>; Stefan Metzmacher
>> <metze at samba.org>; Christoph Hellwig <hch at infradead.org>
>> Cc: samba-technical at lists.samba.org
>> Subject: Re: Best practices: Adding Persistent Handle support
>> Responding to a few intertwined threads here...
>> From one pedant to another, your clear definitions of Continued Availability
>> and (vs.) Persistent Handles is quite helpful and appreciated. From a
>> practical perspective, it seems to me that if the SMB3 server does not have
>> any shares that provide Continuous Availability, then it should not send
>> SMB2_GLOBAL_CAP_PERSISTENT_HANDLES since it cannot actually provide
>> Persistent Handles.
> Well, that's not how Windows does it. Persistence is handled by an entirely
> separate component, above the filesystems, called the Resume Key Filter (RKF).
> The server global persistence *capability* reflects only the presence of this
> The persistence *implementation*, on the other hand, is per-handle, and is
> determined by the filesystem at handle creation time. Totally separate subsystems,
> and although they often come and go together, they're not monolithic*.
> * Monolithic: "One Big Rock" :-)
More information about the samba-technical