Abstract:
This application relates to a key rolling process for a file system of a computing device. The key rolling process allows for files to be transparently re-encrypted in a background process while still allowing applications to access files being re-encrypted. During re-encryption, a portion of the file is decrypted using a current key for the file and re-encrypted using a new key for the file. During re-encryption, the portion of the file can be relocated to another location in memory. Metadata associated with the file can be updated to include information pertaining to the location of the re-encrypted portion. The metadata can also be updated include information pertaining to how much of the file has been re-encrypted with the new key and how much of the file remains encrypted with the current key.
Abstract:
The invention provides a technique for managing hard-mounted network file systems (NFSs). First, a network file system (NFS) interface detects that a hard-mounted NFS is inaccessible. In response, the NFS interface obtains a list of virtual nodes (vNodes) associated with the hard-mounted NFS. If the NFS interface determines that each vNode in the list of vNodes is only associated with a read IN/OUT (I/O) operation, then the NFS interface automatically unmounts the hard-mounted NFS since doing so does not compromise the coherency of the hard-mounted NFS. Alternatively, if the NFS interface determines that at least one vNode in the list of vNodes is associated with data that is open for a write I/O operation, is mapped into a memory, or is associated with at least one dirty page, then the NFS interface does not unmount the hard-mounted NFS since doing so will compromise the coherency of the hard-mounted NFS.