• David Howells's avatar
    [AF_RXRPC]: Add an interface to the AF_RXRPC module for the AFS filesystem to use · 651350d1
    David Howells authored
    Add an interface to the AF_RXRPC module so that the AFS filesystem module can
    more easily make use of the services available.  AFS still opens a socket but
    then uses the action functions in lieu of sendmsg() and registers an intercept
    functions to grab messages before they're queued on the socket Rx queue.
    
    This permits AFS (or whatever) to:
    
     (1) Avoid the overhead of using the recvmsg() call.
    
     (2) Use different keys directly on individual client calls on one socket
         rather than having to open a whole slew of sockets, one for each key it
         might want to use.
    
     (3) Avoid calling request_key() at the point of issue of a call or opening of
         a socket.  This is done instead by AFS at the point of open(), unlink() or
         other VFS operation and the key handed through.
    
     (4) Request the use of something other than GFP_KERNEL to allocate memory.
    
    Furthermore:
    
     (*) The socket buffer markings used by RxRPC are made avai...
    651350d1
ar-recvmsg.c 10.7 KB