/etc/sysctl.conf values are of no use to kernel modules that are inserted after init scripts call sysctl for the values in /etc/sysctl.conf
For modules to use the values stored in the file /etc/sysctl.conf, sysctl kernel code can keep record of 'limited' values, for sysctl entries which haven't been registered yet. During registration, sysctl code can check against the stored values and call the appropriate strategy and proc_handler routines if a match is found.
Attached patch does just that. This patch is NOT tested and is just to get opinions, if something like this is a right way of addressing this problem.