i made linker as stand alone servlet and try to restart it using sm -restart:0 -pid:xxxx but server servlet restarts together with linker.
If you have a requirement of restarting linker whenever it goes down, you should check something about "Anubis" scheduler. By enabling anubis scheduler, the system automatically handles whenver any BG system processes are down. Anubis scheduled record is calling apm.anubis application from the scheduler.
Or you can try adding following line in sm.cfg of any of your servers that you trust more (app or LB):
sm scheduler linker
Let us know how it goes.
The example in the online help included the host id. Try using the host parameter as well. https://docs.microfocus.com/SM/9.60/Codeless/Content/performance/concepts/example_restart_one_process.htm