• Chuck Lever's avatar
    SUNRPC: Remove the .svo_enqueue_xprt method · a9ff2e99
    Chuck Lever authored
    We have never been able to track down and address the underlying
    cause of the performance issues with workqueue-based service
    support. svo_enqueue_xprt is called multiple times per RPC, so
    it adds instruction path length, but always ends up at the same
    function: svc_xprt_do_enqueue(). We do not anticipate needing
    this flexibility for dynamic nfsd thread management support.
    
    As a micro-optimization, remove .svo_enqueue_xprt because
    Spectre/Meltdown makes virtual function calls more costly.
    
    This change essentially reverts commit b9e13cdf ("nfsd/sunrpc:
    turn enqueueing a svc_xprt into a svc_serv operation").
    Signed-off-by: default avatarChuck Lever <chuck.lever@oracle.com>
    a9ff2e99
nfssvc.c 27.8 KB