• Dr. David Alan Gilbert's avatar
    fuse: reserve values for mapping protocol · c4bb667e
    Dr. David Alan Gilbert authored
    
    
    SETUPMAPPING is a command for use with 'virtiofsd', a fuse-over-virtio
    implementation; it may find use in other fuse impelementations as well in
    which the kernel does not have access to the address space of the daemon
    directly.
    
    A SETUPMAPPING operation causes a section of a file to be mapped into a
    memory window visible to the kernel.  The offsets in the file and the
    window are defined by the kernel performing the operation.
    
    The daemon may reject the request, for reasons including permissions and
    limited resources.
    
    When a request perfectly overlaps a previous mapping, the previous mapping
    is replaced.  When a mapping partially overlaps a previous mapping, the
    previous mapping is split into one or two smaller mappings.
    
    REMOVEMAPPING is the complement to SETUPMAPPING; it unmaps a range of
    mapped files from the window visible to the kernel.
    
    The map_alignment field communicates the alignment constraint for
    FUSE_SETUPMAPPING/FUSE_REMOVEMAPPING and allows the daemon to constrain the
    addresses and file offsets chosen by the kernel.
    Signed-off-by: default avatarDr. David Alan Gilbert <dgilbert@redhat.com>
    Signed-off-by: default avatarVivek Goyal <vgoyal@redhat.com>
    Signed-off-by: default avatarStefan Hajnoczi <stefanha@redhat.com>
    Signed-off-by: default avatarMiklos Szeredi <mszeredi@redhat.com>
    c4bb667e
fuse.h 18.9 KB