Пока вы не запустите kthread в своем модуле, насколько я знаю, в ps -A
ничего не будет перечислено. Объекты ядра не запускают никакие процессы, фактически функции, которые вставляют и удаляют модули, запускаются в контексте прерывания (если я не мастакен).
В любом случае, я предполагаю, что вы запрограммировали несколько обратных вызовов, зарегистрировали их в Netfilters, и каждый раз, когда ядром обрабатывается пакет, эти обратные вызовы будут вызываться. И это то, что вы подразумеваете под «пакетом, запускающим процесс». Ну, нет, потому что зарегистрированные обратные вызовы netfilter также запускаются из контекста прерывания, поэтому здесь нет понятия процесса. Это означает, что в зависимости от того, в какой точке подключения (локальный вход, локальный выход, пересылка ...) вы зарегистрировали обратный вызов, каждый пакет может вызывать прерывание. Вот почему, по моему личному мнению, вы должны стараться, чтобы ваш код делал как можно меньше в ловушке сетевого фильтра.
Наконец, вы не можете использовать мьютексы или семафоры в контексте прерываний, потому что это заблокирует все Ядро. Если вам действительно нужно синхронизировать что-либо в контексте прерывания, вы должны взглянуть на то, что называется спин-блокировкой http://www.mjmwired.net/kernel/Documentation/spinlocks.txt.
Надеюсь, это поможет.