Preinit pid across kernels

Not sure if this is the right category for this post. I have a tp-link wdr-3600. I have been using lede kernel with debian userland (inspired by debwrt). I have a resident lede firmware which acts as a pseudo boot loader which loads and kexec a lede kernel specified in a config file, both of which reside on a usb drive. I accomplish this in a custom preinit script. I have been using this mechanism for some time and it worked fine until I switched to the new 4.9 kernel. With 4.9 kernel, debian's systemd refuses to boot. I found that with 4.9 kernel, the pid of preinit script is not 1 because of which systemd complains. It continues to work fine if I boot to 4.4 kernel with no other changes. Is there a way around this?

I break into a shell in the preinit script and following is th ps output.

4.4 kernel

/ # ps w
PID USER VSZ STAT COMMAND
1 root 1192 S /bin/sh

4.9 Kernel

/ # ps w
PID USER VSZ STAT COMMAND
1 root 1348 S /sbin/init
...
414 root 1380 S /sbin/procd -h /etc/hotplug-preinit.json
415 root 1196 S /bin/sh