Решение сторожевых мертвых блокировок таймера Ethernet

Учитывая дополнительную информацию, я предполагаю, что Ваш emacsclient подключает к "несправедливости" emacs сервер. (Или лучше, первый, который был запущен: последующие вызовы emacs --daemon не запустит сервер, так как коммуникационный сокет уже используется.), Если emacs демон был запущен в предыдущем X сессий, то они используют неправильные учетные данные для соединения с этими X дисплеями и таким образом перестали работать.

Можно узнать, какой процесс emacs выполняет сервер путем соединения с ним в non-graphics/tty режиме; выполненный emacsclient в терминале с -nw опция:

emacsclient -nw

Можно уничтожить выполнение emacs путем выполнения его код LISP через emacsclient:

emacsclient -t --eval '(progn (server-save-buffers-kill-terminal 1) (save-buffers-kill-emacs 1))' 

где:

  • -t опция (искажают для -nw или --tty) должен избежать Emacs, соединяющегося с этими X дисплеями;
  • server-save-buffers-kill-terminal отсоединяет emacsclient, прежде чем Вы скажете Emacs останавливаться (иначе, что он выпустит подсказку подтверждения);
  • save-buffers-kill-emacs функция - то, что обычно вызывается C-x C-c, аргумент 1 говорит Emacs не просить подтверждение.

Кроме того, я предполагаю причину, у Вас есть так многие emacs --daemon выполнение состоит в том, что Вы вызываете emacsclient с --alternate-editor="" опция: страница справочника emacsclient (1) состояния, что:

Если значение (альтернатива) РЕДАКТОР является пустой строкой, то Emacs запускается в режиме демона, и emacsclient попытается соединиться с ним.

Это мог быть более оптимальный вариант запуститься emacs --daemon из Ваших X сценариев запуска сессии (например, .gnomerc или сессия GNOME configutation) так, чтобы менеджер сеансов заботился об уничтожении emacs демона, когда сессия завершится.

11
07.05.2012, 18:27
2 ответа

Комментирование моего кода, который звонил ethtool изменить NIC буферизует сторожевые таймеры, которым мешают, споткнуться bnx2 карта.

Я все еще хочу найти ответ на вопрос о сторожевых таймерах, но я задам другой вопрос

def _linux_buffer_alloc(iface=None, rx_ring_buffers=768,
    netdev_max_backlog=30000):

    default_rx = 255
    default_rx_jumbo = 0
    default_netdev_max_backlog = 1000
    ## Set linux rx ring buffers (to prevent tcpdump 'dropped by intf' msg)
## FIXME: removing for now due to systematic deadlocks with the bnx2 driver
#    sample: ethtool -G eth3 rx 768
#    cmd = 'ethtool -G %s rx %s' % (iface, rx_ring_buffers)
#    p = Popen(cmd.split(' '), stdout=PIPE)
#    p.communicate(); time.sleep(0.15)
#    sample: ethtool -G eth3 rx-jumbo 0
#    cmd = 'ethtool -G %s rx-jumbo %s' % (iface, default_rx_jumbo)
#    p = Popen(cmd.split(' '), stdout=PIPE)
#    p.communicate(); time.sleep(0.15)
## /FIXME
2
27.01.2020, 19:59

Я прочитал подобную историю из GeNUA. Их обходное решение должно было перезапустить сетевой драйвер (OpenBSD). На Linux это перевело бы в: ifdown eth3 && rmmod bnx2 && modprobe bnx2 && ifup eth3.

Базовой проблемой была внутренняя проблема кодирования с указателями в системе PAE в сочетании с broadcom-драйвером.

5
27.01.2020, 19:59
  • 1
    Когда точно Вы предполагаете, что я выполняю те команды? Только после того, как я изменяю MTU? –  Mike Pennington 01.05.2012, 23:23
  • 2
    @MikePennington я изменил ссылку от своего ответа до английской версии. Считайте его... Я думаю, что необходимо изменять его каждые 30 минут. –  Nils 01.05.2012, 23:28
  • 3
    я должен выполнить это в производстве в течение нескольких дней, прежде чем я смогу принять... его, это работает, я буду награждать щедрость также. Это ударяло мой зад в течение двух недель –  Mike Pennington 01.05.2012, 23:29
  • 4
    По-видимому, я не должен видеть эту проблему, если мой интерфейс MTU по умолчанию (1500), правильно? Я удалил код, который изменил мой MTU, но я все еще вижу мертвые блокировки –  Mike Pennington 02.05.2012, 18:55
  • 5
    Все Ваши интерфейсы того же типа? Посмотрите на них с ethtool -g возможно, Ваш может повысить получение или буферы передачи для предотвращения этой проблемы. –  Nils 02.05.2012, 23:58

Теги

Похожие вопросы