как уведомить, что очередь netdev может снова получать пакеты - PullRequest
0 голосов
/ 29 декабря 2011

Я хочу поместить пакеты в очередь netdev

err = dev_queue_xmit(skb);
if (err) 
    {
    ... stop processing ... sleep ...
    }

Есть ли способ зарегистрировать уведомитель, который сообщает мне, что очередь теперь может снова получать пакеты?Если нет, я должен опросить, но мне не нравится: -)

1 Ответ

0 голосов
/ 30 декабря 2011

Очередь, поддерживаемая для невыполненных пакетов, находится в / proc / sys / net / core / netdev_max_backlog.Чтобы получить значения ядра (в данном случае полученные пакеты) из / proc / sys /, вы можете использовать системный вызов sysctl.Пожалуйста, будьте осторожны при использовании этого (не следует изменять значение).Если порог достигнут, вы можете вызвать сообщение с помощью программного прерывания через ваш уведомитель.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...