Shouldn't this happen inside UpdateLastSeenMaxReaders() ?
If something other than this code calls that function, we've changed the maxreaders value but not changed the global LSD_MAXREADERS.
Worse, if something has already called the function with a value bigger than either LSD_MAXREADERS or CFD_MAXPROCESSES, but the first of these is still less than the second, we're here going to *reduce* max-readers to this default, after it's been set to something specific.