The documentation of effective_io_concurrency says
Asynchronous I/O depends on an effective <function>posix_fadvise</>
function, which some operating systems lack. If the function is not
present then setting this parameter to anything but zero will result
in an error.
This is not correct, because on unsupported systems, it is an error to
set this parameter to anything, including zero, because it is set to
PGC_INTERNAL.
I think this is a mistake. For example, we allow setting ssl to false
even if SSL support is not compiled in.
I propose the attached patch to correct this.