Reloading volumes is only done when the file changes on disk. Apparently this doesn't work with system settings that may have changed and effect the results of reloading the volumes. An example of this is group memberships which effect out allow and deny options for volumes.
Enhance afpd parent to distribute SIGHUP to children AND update the mtime of the volume config file by simply calling utime(AppleVolumes.default, NULL).
This results in semantics closely matching the meaning of "reload your damn whole config NOW" without taking the risk of unwillingly reloading the config file umpty times through client actions.