I need help to resolve the following issue I am facing:

Linux version: 2.6.32.25 GNU/LINUX

When an incoming packet (ipv4) is being processed in the interrupt mode in linux kernel I need to send a request to rtnetlink (socket) to install a route in the ipv4 routing table. I found out that some functions that get executed in that code path can not be called when running in the interrupt conext as the may sleep. I.e, copy_from_user.

What is the best option to get around this issue? Any help would be appreciated.