The commit that introduced the generator has this explanation:
commit 3892174834ea1a4729348f0ecd3078cc1d5458e4
Author: Scott Mayhew <email address hidden>
Date: Mon Apr 10 07:10:45 2017 -0400
systemd: add a generator for the rpc_pipefs mountpoint
The nfs.conf has config options for the rpc_pipefs mountpoint.
Currently, changing these from the default also requires manually
overriding the systemd unit files that are hard-coded to mount the
filesystem on /var/lib/nfs/rpc_pipefs.
This patch adds a generator that creates a mount unit file for the
rpc_pipefs when a non-default value is specified in /etc/nfs.conf, as
well as a target unit file to override the dependencies for the systemd
units using the rpc_pipefs. The blkmapd, idmapd, and gssd service unit
files have been modified to define their dependencies on the rpc_pipefs
mountpoint indirectly via the rpc_pipefs target unit file. Since both
rpc-pipefs-generator.c and nfs-server-generator.c need to convert path
names to unit file names, that functionality has been moved to
systemd.c.
This patch also removes the dependency on the rpc_pipefs from the
rpc-svcgssd.service unit file. rpc.svcgssd uses the sunrpc cache
mechanism to exchange data with the kernel, not the rpc_pipefs.
I guess one way to avoid this would be for us to ship the var-lib-... mount unit with a path matching the default we have in /etc/nfs.conf...
The commit that introduced the generator has this explanation: 729348f0ecd3078 cc1d5458e4
commit 3892174834ea1a4
Author: Scott Mayhew <email address hidden>
Date: Mon Apr 10 07:10:45 2017 -0400
systemd: add a generator for the rpc_pipefs mountpoint
The nfs.conf has config options for the rpc_pipefs mountpoint. nfs/rpc_ pipefs.
Currently, changing these from the default also requires manually
overriding the systemd unit files that are hard-coded to mount the
filesystem on /var/lib/
This patch adds a generator that creates a mount unit file for the pipefs- generator. c and nfs-server- generator. c need to convert path
rpc_pipefs when a non-default value is specified in /etc/nfs.conf, as
well as a target unit file to override the dependencies for the systemd
units using the rpc_pipefs. The blkmapd, idmapd, and gssd service unit
files have been modified to define their dependencies on the rpc_pipefs
mountpoint indirectly via the rpc_pipefs target unit file. Since both
rpc-
names to unit file names, that functionality has been moved to
systemd.c.
This patch also removes the dependency on the rpc_pipefs from the svcgssd. service unit file. rpc.svcgssd uses the sunrpc cache
rpc-
mechanism to exchange data with the kernel, not the rpc_pipefs.
I guess one way to avoid this would be for us to ship the var-lib-... mount unit with a path matching the default we have in /etc/nfs.conf...