Fatal trap 12: page fault while in kernel mode

Проблемы установки, настройки и работы Правильной Операционной Системы

Модератор: terminus

Правила форума
Убедительная просьба юзать теги [cоde] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
pfsense
рядовой
Сообщения: 44
Зарегистрирован: 2011-11-05 20:39:55

Fatal trap 12: page fault while in kernel mode

Непрочитанное сообщение pfsense » 2014-05-18 22:48:22

Доброго времени суток всем.

Работал себе NAS не один год. Но тут понадобилось апгрейдить сетевые интерфейсы, попутно обновляясь до 9.2. На аналогичном сервере все прошло успешно. Разница лишь в том, что карточка на нормальном сервере - 2-х портовая ET. А на этом - 4-х портовая. Остальное железо, набор ПО, ядро и тюнинг полностью идентичны...

И вот, ни с того ни с сего он начал валиться следующим образом:

Код: Выделить всё

May 18 15:18:52 zeus kernel: Fatal trap 12: page fault while in kernel mode
May 18 15:18:52 zeus kernel: cpuid = 2; apic id = 04
May 18 15:18:52 zeus kernel: fault virtual address      = 0x37646dc7
May 18 15:18:52 zeus kernel: fault code         = supervisor read data, page not present
May 18 15:18:52 zeus kernel: instruction pointer        = 0x20:0xffffffff806800e9
May 18 15:18:52 zeus kernel: stack pointer              = 0x28:0xffffff8000386c90
May 18 15:18:52 zeus kernel: frame pointer              = 0x28:0xffffff8000386d30
May 18 15:18:52 zeus kernel: code segment               = base 0x0, limit 0xfffff, type 0x1b
May 18 15:18:52 zeus kernel: = DPL 0, pres 1, long 1, def32 0, gran 1
May 18 15:18:52 zeus kernel: processor eflags   = interrupt enabled, resume, IOPL = 0
May 18 15:18:52 zeus kernel: current process            = 12 (irq267: igb1:que 0)
May 18 15:18:52 zeus kernel: trap number                = 12
Это сегодня. В предыдущий раз это было 10 дней назад, тогда в логе была только одна запись: Fatal trap 12: page fault while in kernel mode. Сегодня уже в 22:20 снова ребут, но вообще без записей в логах.

Система:

Код: Выделить всё

# uname -a
FreeBSD zeus 9.2-RELEASE-p5 FreeBSD 9.2-RELEASE-p5 #0 r265893M: Mon May 12 02:49:08 MSK 2014     root@zeus:/usr/obj/usr/src/sys/v81ni  amd64

Код: Выделить всё

pciconf -lv
hostb0@pci0:0:0:0:      class=0x060000 card=0x062415d9 chip=0x01588086 rev=0x09 hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'Ivy Bridge DRAM Controller'
    class      = bridge
    subclass   = HOST-PCI
pcib1@pci0:0:1:0:       class=0x060400 card=0x062415d9 chip=0x01518086 rev=0x09 hdr=0x01
    vendor     = 'Intel Corporation'
    device     = 'Ivy Bridge PCI Express Root Port'
    class      = bridge
    subclass   = PCI-PCI
pcib2@pci0:0:1:1:       class=0x060400 card=0x062415d9 chip=0x01558086 rev=0x09 hdr=0x01
    vendor     = 'Intel Corporation'
    device     = 'Ivy Bridge PCI Express Root Port'
    class      = bridge
    subclass   = PCI-PCI
em0@pci0:0:25:0:        class=0x020000 card=0x150215d9 chip=0x15028086 rev=0x05 hdr=0x00
    vendor     = 'Intel Corporation'
    device     = '82579LM Gigabit Network Connection'
    class      = network
    subclass   = ethernet
ehci0@pci0:0:26:0:      class=0x0c0320 card=0x062415d9 chip=0x1c2d8086 rev=0x05 hdr=0x00
    vendor     = 'Intel Corporation'
    device     = '6 Series/C200 Series Chipset Family USB Enhanced Host Controller'
    class      = serial bus
    subclass   = USB
pcib6@pci0:0:28:0:      class=0x060400 card=0x062415d9 chip=0x1c108086 rev=0xb5 hdr=0x01
    vendor     = 'Intel Corporation'
    device     = '6 Series/C200 Series Chipset Family PCI Express Root Port 1'
    class      = bridge
    subclass   = PCI-PCI
pcib7@pci0:0:28:4:      class=0x060400 card=0x062415d9 chip=0x1c188086 rev=0xb5 hdr=0x01
    vendor     = 'Intel Corporation'
    device     = '6 Series/C200 Series Chipset Family PCI Express Root Port 5'
    class      = bridge
    subclass   = PCI-PCI
ehci1@pci0:0:29:0:      class=0x0c0320 card=0x062415d9 chip=0x1c268086 rev=0x05 hdr=0x00
    vendor     = 'Intel Corporation'
    device     = '6 Series/C200 Series Chipset Family USB Enhanced Host Controller'
    class      = serial bus
    subclass   = USB
pcib8@pci0:0:30:0:      class=0x060401 card=0x062415d9 chip=0x244e8086 rev=0xa5 hdr=0x01
    vendor     = 'Intel Corporation'
    device     = '82801 PCI Bridge'
    class      = bridge
    subclass   = PCI-PCI
isab0@pci0:0:31:0:      class=0x060100 card=0x062415d9 chip=0x1c528086 rev=0x05 hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'C202 Chipset Family LPC Controller'
    class      = bridge
    subclass   = PCI-ISA
atapci0@pci0:0:31:2:    class=0x010400 card=0x062415d9 chip=0x28228086 rev=0x05 hdr=0x00
    vendor     = 'Intel Corporation'
    device     = '82801 SATA RAID Controller'
    class      = mass storage
    subclass   = RAID
none0@pci0:0:31:3:      class=0x0c0500 card=0x062415d9 chip=0x1c228086 rev=0x05 hdr=0x00
    vendor     = 'Intel Corporation'
    device     = '6 Series/C200 Series Chipset Family SMBus Controller'
    class      = serial bus
    subclass   = SMBus
pcib3@pci0:2:0:0:       class=0x060400 card=0x00000000 chip=0x8018111d rev=0x0c hdr=0x01
    vendor     = 'Integrated Device Technology, Inc.'
    device     = 'PES12N3A PCI Express Switch'
    class      = bridge
    subclass   = PCI-PCI
pcib4@pci0:3:2:0:       class=0x060400 card=0x00000000 chip=0x8018111d rev=0x0c hdr=0x01
    vendor     = 'Integrated Device Technology, Inc.'
    device     = 'PES12N3A PCI Express Switch'
    class      = bridge
    subclass   = PCI-PCI
pcib5@pci0:3:4:0:       class=0x060400 card=0x00000000 chip=0x8018111d rev=0x0c hdr=0x01
    vendor     = 'Integrated Device Technology, Inc.'
    device     = 'PES12N3A PCI Express Switch'
    class      = bridge
    subclass   = PCI-PCI
igb0@pci0:4:0:0:        class=0x020000 card=0xa06c8086 chip=0x15268086 rev=0x01 hdr=0x00
    vendor     = 'Intel Corporation'
    device     = '82576 Gigabit Network Connection'
    class      = network
    subclass   = ethernet
igb1@pci0:4:0:1:        class=0x020000 card=0xa06c8086 chip=0x15268086 rev=0x01 hdr=0x00
    vendor     = 'Intel Corporation'
    device     = '82576 Gigabit Network Connection'
    class      = network
    subclass   = ethernet
igb2@pci0:6:0:0:        class=0x020000 card=0xa06c8086 chip=0x15268086 rev=0x01 hdr=0x00
    vendor     = 'Intel Corporation'
    device     = '82576 Gigabit Network Connection'
    class      = network
    subclass   = ethernet
igb3@pci0:6:0:1:        class=0x020000 card=0xa06c8086 chip=0x15268086 rev=0x01 hdr=0x00
    vendor     = 'Intel Corporation'
    device     = '82576 Gigabit Network Connection'
    class      = network
    subclass   = ethernet
em1@pci0:9:0:0: class=0x020000 card=0x000015d9 chip=0x10d38086 rev=0x00 hdr=0x00
    vendor     = 'Intel Corporation'
    device     = '82574L Gigabit Network Connection'
    class      = network
    subclass   = ethernet
vgapci0@pci0:10:3:0:    class=0x030000 card=0x062415d9 chip=0x0532102b rev=0x0a hdr=0x00
    vendor     = 'Matrox Graphics, Inc.'
    device     = 'MGA G200eW WPCM450'
    class      = display
    subclass   = VGA

Код: Выделить всё

# cat /boot/loader.conf
net.graph.maxalloc="65536"
net.graph.maxdata="65536"
kern.maxusers="2048"
kern.ipc.maxpipekva="200000000"

vm.kmem_size_max=2G
vm.kmem_size=2G
vm.kmem_size_scale="2"

net.inet.tcp.syncache.hashsize=1024
net.inet.tcp.syncache.bucketlimit=100

kern.ipc.semmnu=256
kern.ipc.semmns=32000
kern.ipc.shmmni=4096

net.inet.tcp.tcbhashsize=4096
net.isr.maxthreads=2

hw.em.rxd=4096
hw.em.txd=4096

hw.igb.rxd=4096
hw.igb.txd=4096
hw.igb.enable_aim=0
hw.igb.max_interrupt_rate=32000
hw.igb.rx_process_limit=2048
hw.igb.num_queues=2

net.isr.defaultqlimit=4096
net.link.ifqmaxlen=10240

Код: Выделить всё

# cat /etc/sysctl.conf
net.inet.tcp.blackhole=2
net.inet.udp.blackhole=1
kern.ipc.somaxconn=8192
net.inet.tcp.drop_synfin=1

net.inet.icmp.drop_redirect=1
net.inet.icmp.log_redirect=0
net.inet.ip.redirect=0
net.inet6.ip6.redirect=0

net.inet.icmp.icmplim=1000

net.inet.tcp.sendspace=3217968
net.inet.tcp.recvspace=3217968

net.inet.tcp.msl=7500

net.inet.ip.portrange.first=11000
net.inet.ip.portrange.last=65535

kern.ipc.maxsockets=204800
net.inet.ip.portrange.randomized=0
net.inet.tcp.nolocaltimewait=1
kern.ipc.shmall=262144
net.link.ether.inet.max_age=600

net.inet.tcp.maxtcptw=40960

dev.em.0.rx_int_delay=200
dev.em.0.tx_int_delay=200
dev.em.0.rx_abs_int_delay=4000
dev.em.0.tx_abs_int_delay=4000
dev.em.0.rx_processing_limit=4096
dev.em.0.max_interrupt_rate=32000

dev.em.1.rx_int_delay=200
dev.em.1.tx_int_delay=200
dev.em.1.rx_abs_int_delay=4000
dev.em.1.tx_abs_int_delay=4000
dev.em.1.rx_processing_limit=4096
dev.em.1.max_interrupt_rate=32000

dev.igb.0.rx_processing_limit=4096
dev.igb.1.rx_processing_limit=4096
dev.igb.2.rx_processing_limit=4096
dev.igb.3.rx_processing_limit=4096
dev.igb.0.enable_aim=0
dev.igb.1.enable_aim=0
dev.igb.2.enable_aim=0
dev.igb.3.enable_aim=0

net.graph.maxdgram=8388608
net.graph.recvspace=8388608

kern.ipc.nmbclusters=400000
kern.ipc.maxsockbuf=83886080

net.inet.ip.dummynet.pipe_slot_limit=1000
net.inet.ip.dummynet.io_fast=1

net.inet.ip.fastforwarding=1
net.inet.ip.intr_queue_maxlen=10240

net.isr.direct=0
net.isr.direct_force=0
Инициализация сетевых:

Код: Выделить всё

ifconfig_igb0="inet x.x.x.x/x -rxcsum -txcsum -lro -tso"
ifconfig_igb1="inet y.y.y.y/y -rxcsum -txcsum -lro -tso"
Вобщем, закажу пока еще платы, много куда нужны, но у меня нет четкой уверенности, что проблема аппаратная.
По сему, прошу компетентных лиц о помощи в решении проблемы. Узел крайне ответственный...

Да, патчи на драйверы отсюда:
http://www.grosbein.net/freebsd/patches ... .3.diff.gz
http://www.grosbein.net/freebsd/patches ... .2.diff.gz

Заранее благодарен.

Хостинговая компания Host-Food.ru
Хостинг HostFood.ru
 

Услуги хостинговой компании Host-Food.ru

Хостинг HostFood.ru

Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/

Аватара пользователя
Alex Keda
стреляли...
Сообщения: 35476
Зарегистрирован: 2004-10-18 14:25:19
Откуда: Made in USSR
Контактная информация:

Re: Fatal trap 12: page fault while in kernel mode

Непрочитанное сообщение Alex Keda » 2014-05-18 22:52:01

потестить раму, если выпадает в дебаггер, в нём набратть вывод - сюда
Убей их всех! Бог потом рассортирует...

pfsense2
проходил мимо
Сообщения: 4
Зарегистрирован: 2014-05-28 4:36:24

Re: Fatal trap 12: page fault while in kernel mode

Непрочитанное сообщение pfsense2 » 2014-05-28 5:05:07

Что-то случилось с моим аккаунтом, не смог восстановить...

Только сейчас получил доступ к серверу.
Сегодня ночью:

Код: Выделить всё

May 28 00:56:27 zeus kernel: Fatal trap 12: page fault while in kernel mode
May 28 00:56:27 zeus kernel: cpuid = 1; apic id = 02
May 28 00:56:27 zeus kernel: fault virtual address      = 0xffffff8002933000
May 28 00:56:27 zeus kernel: fault code         = supervisor write data, page not present
May 28 00:56:27 zeus kernel: instruction pointer        = 0x20:0xffffffff80679e78
May 28 00:56:27 zeus kernel: stack pointer              = 0x28:0xffffff80be8815f0
May 28 00:56:27 zeus kernel: frame pointer              = 0x28:0xffffff80be881600
May 28 00:56:27 zeus kernel: code segment               = base 0x0, limit 0xfffff, type 0x1b
May 28 00:56:27 zeus kernel: = DPL 0, pres 1, long 1, def32 0, gran 1
May 28 00:56:27 zeus kernel: processor eflags   = interrupt enabled, resume, IOPL = 0
May 28 00:56:27 zeus kernel: current process            = 67752 (ngctl)
May 28 00:56:27 zeus kernel: trap number                = 12
memtester ничего плохого не нашел.
memtest86+ из портов вис наглухо при попытке подгрузки, стартовал его с флешки - часть тестов прошло. Но увидев, что процесс не быстрый, прервал сие занятие, установил планки с резервного сервера, а эти воткнул на резервный, чтобы прогнать до конца в спокойной обстановке. Но подозреваю, что будет также без результата.

Сейчас еще посмотрел, два сервера собирались из разных исходников:

Код: Выделить всё

$ uname -a
FreeBSD zeus 9.2-RELEASE-p5 FreeBSD 9.2-RELEASE-p5 #0 r265893M: Mon May 12 02:49:08 MSK 2014     root@zeus:/usr/obj/usr/src/sys/v81ni  amd64

Код: Выделить всё

$ uname -a
FreeBSD thanatos 9.2-RELEASE-p4 FreeBSD 9.2-RELEASE-p4 #0 r264720M: Mon Apr 21 14:57:12 MSK 2014     root@thanatos:/usr/obj/usr/src/sys/v81ni  amd64
Вот к тому, который чуть старее, так вообще вопросов нет... :(

pfsense2
проходил мимо
Сообщения: 4
Зарегистрирован: 2014-05-28 4:36:24

Re: Fatal trap 12: page fault while in kernel mode

Непрочитанное сообщение pfsense2 » 2014-05-28 5:22:35

Собственно, собрался уже уходить, а тесты все завершились успешно. Ну поменял обратно, естественно.

guest
проходил мимо

Re: Fatal trap 12: page fault while in kernel mode

Непрочитанное сообщение guest » 2014-05-28 10:20:54

pfsense2 писал(а):Собственно, собрался уже уходить, а тесты все завершились успешно. Ну поменял обратно, естественно.
проблема в тюнинге, первая паника в момент обработки одной из очередей на igb,
вторая - netgraph (ngctl).
maxusers более 512 - это нонсенс, выставляя maxusers - Вы используюте автотюнинг на основе этого
параметра, параметры kva, netisr и еще ряд, ну очень странно выбраны.

ps. там где брали патчи, очень хорошо расписано про netisr и очереди и как их прибить к ядрам
посредством cpuset

pfsense2
проходил мимо
Сообщения: 4
Зарегистрирован: 2014-05-28 4:36:24

Re: Fatal trap 12: page fault while in kernel mode

Непрочитанное сообщение pfsense2 » 2014-05-28 20:37:50

В чем странность?

Поскольку, ситуация усугубляется:

Код: Выделить всё

May 28 19:24:54 zeus kernel: Fatal trap 9: general protection fault while in kernel mode
May 28 19:24:54 zeus kernel: cpuid = 2; apic id = 04
May 28 19:24:54 zeus kernel: instruction pointer        = 0x20:0xffffffff806b1889
May 28 19:24:54 zeus kernel: stack pointer              = 0x28:0xffffff80be0cb490
May 28 19:24:54 zeus kernel: frame pointer              = 0x28:0xffffff80be0cb700
May 28 19:24:54 zeus kernel: code segment               = base 0x0, limit 0xfffff, type 0x1b
May 28 19:24:54 zeus kernel: = DPL 0, pres 1, long 1, def32 0, gran 1
May 28 19:24:54 zeus kernel: processor eflags   = interrupt enabled, resume, IOPL = 0
May 28 19:24:54 zeus kernel: current process            = 33483 (mpd5)
- требуется принимать ускоренные решения.

Убрал 2 очереди netisr, прибил очереди igb к ядрам.
maxusers=512
nmbclusters=80000 (исходя из netstat -m)
Ночью применим...

Уже морально готов на откат к 8.2 из бэкапа...
Может будут более конкретные мысли?

guest
проходил мимо

Re: Fatal trap 12: page fault while in kernel mode

Непрочитанное сообщение guest » 2014-05-28 21:26:50

pfsense2 писал(а):В чем странность?

Поскольку, ситуация усугубляется:

Код: Выделить всё

May 28 19:24:54 zeus kernel: Fatal trap 9: general protection fault while in kernel mode
May 28 19:24:54 zeus kernel: cpuid = 2; apic id = 04
May 28 19:24:54 zeus kernel: instruction pointer        = 0x20:0xffffffff806b1889
May 28 19:24:54 zeus kernel: stack pointer              = 0x28:0xffffff80be0cb490
May 28 19:24:54 zeus kernel: frame pointer              = 0x28:0xffffff80be0cb700
May 28 19:24:54 zeus kernel: code segment               = base 0x0, limit 0xfffff, type 0x1b
May 28 19:24:54 zeus kernel: = DPL 0, pres 1, long 1, def32 0, gran 1
May 28 19:24:54 zeus kernel: processor eflags   = interrupt enabled, resume, IOPL = 0
May 28 19:24:54 zeus kernel: current process            = 33483 (mpd5)
- требуется принимать ускоренные решения.

Убрал 2 очереди netisr, прибил очереди igb к ядрам.
maxusers=512
nmbclusters=80000 (исходя из netstat -m)
Ночью применим...

Уже морально готов на откат к 8.2 из бэкапа...
Может будут более конкретные мысли?
для конкретных мыслей, нужно вытягивать из Вас конкретику, без обид - лень, лето, жара...
Сейчас у Вас система упала во время работы mpd, каждый раз на разных процессах - это неверный тюнинг.
Тут нужно смотреть чем нагружен, как, что в какчестве файервола и тд и тп.

Понимаю что нужно вчера, maxusers=0 - автотюнинг, выкинуть лишнее из loader.conf/sysctl.conf и затем
добавлять нужное.

Лучший вариант - написать в соответствующий список рассылки freebsd.

pfsense2
проходил мимо
Сообщения: 4
Зарегистрирован: 2014-05-28 4:36:24

Re: Fatal trap 12: page fault while in kernel mode

Непрочитанное сообщение pfsense2 » 2014-05-29 7:46:29

Сейчас запущен с:

Код: Выделить всё

# cat /boot/loader.conf
#net.graph.maxalloc="65536"
#net.graph.maxdata="65536"
#kern.maxusers="0"
#kern.ipc.maxpipekva="200000000"

#vm.kmem_size_max=2G
#vm.kmem_size=2G
#vm.kmem_size_scale="2"

#net.inet.tcp.syncache.hashsize=1024
#net.inet.tcp.syncache.bucketlimit=100

#kern.ipc.semmnu=256
#kern.ipc.semmns=32000
#kern.ipc.shmmni=4096

#net.inet.tcp.tcbhashsize=4096

#hw.em.rxd=4096
#hw.em.txd=4096

hw.igb.rxd=4096
hw.igb.txd=4096
hw.igb.enable_aim=0
hw.igb.max_interrupt_rate=32000
hw.igb.rx_process_limit=2048
hw.igb.num_queues=3

#net.isr.defaultqlimit=4096
#net.link.ifqmaxlen=10240

Код: Выделить всё

# cat /etc/sysctl.conf
net.inet.tcp.blackhole=2
net.inet.udp.blackhole=1
#kern.ipc.somaxconn=8192
net.inet.tcp.drop_synfin=1

net.inet.icmp.drop_redirect=1
net.inet.icmp.log_redirect=0
net.inet.ip.redirect=0
net.inet6.ip6.redirect=0

net.inet.icmp.icmplim=1000

#net.inet.tcp.sendspace=3217968
#net.inet.tcp.recvspace=3217968

#net.inet.tcp.msl=7500

net.inet.ip.portrange.first=11000
net.inet.ip.portrange.last=65535

#kern.ipc.maxsockets=204800
net.inet.ip.portrange.randomized=0
#net.inet.tcp.nolocaltimewait=1
#kern.ipc.shmall=262144
#net.link.ether.inet.max_age=600

#net.inet.tcp.maxtcptw=40960

#dev.em.0.rx_int_delay=200
#dev.em.0.tx_int_delay=200
#dev.em.0.rx_abs_int_delay=4000
#dev.em.0.tx_abs_int_delay=4000
#dev.em.0.rx_processing_limit=4096
#dev.em.0.max_interrupt_rate=32000

#dev.em.1.rx_int_delay=200
#dev.em.1.tx_int_delay=200
#dev.em.1.rx_abs_int_delay=4000
#dev.em.1.tx_abs_int_delay=4000
#dev.em.1.rx_processing_limit=4096
#dev.em.1.max_interrupt_rate=32000

dev.igb.0.rx_processing_limit=4096
dev.igb.1.rx_processing_limit=4096
dev.igb.2.rx_processing_limit=4096
dev.igb.3.rx_processing_limit=4096
dev.igb.0.enable_aim=0
dev.igb.1.enable_aim=0
dev.igb.2.enable_aim=0
dev.igb.3.enable_aim=0

#net.graph.maxdgram=8388608
#net.graph.recvspace=8388608

#kern.ipc.nmbclusters=80000
#kern.ipc.maxsockbuf=83886080

#net.inet.ip.dummynet.pipe_slot_limit=1000
#net.inet.ip.dummynet.io_fast=1

net.inet.ip.fastforwarding=1
#net.inet.ip.intr_queue_maxlen=10240

#net.isr.direct=0
#net.isr.direct_force=0
Имеем вот такой эффект:

Код: Выделить всё

# ngctl list
ngctl: can't create node: No buffer space available
Т.е., крутить надо. Опишу комбайн:
- терминирование PPPoE, mpd (шейпер ng_car), в пике до 1300 соединений.
- igb0 - внешка, igb1 - абоненты. Скоро будет вторая внешка на igb2.
- канал 800Mbps
- quagga (bgpd только дефолт)
- несколько IPSec-туннелей на другие серверы (racoon)
- с полсотни вланов с шейпером на ng_car
- bind - локальная зона, форвардинг, обратная зона
- apache для мелких задач
- isc-dhcp
- squid (очень мало используется)
- zabbix_agent
+ некоторое количество наших скриптов на Perl/PHP в кроне
Основной фаер - pf, скомпилирован в ядре. Немного pfnat.
ipfw используется только для dummynet, но в настоящее время работает в холостую, пропуская все.

В целом вроде все.

Код: Выделить всё

last pid: 96951;  load averages:  1.00,  1.10,  1.03                                                                                                                 up 0+00:53:42  08:41:44
213 processes: 6 running, 172 sleeping, 35 waiting
CPU 0:  0.8% user,  0.0% nice,  1.6% system, 13.0% interrupt, 84.6% idle
CPU 1:  1.2% user,  0.0% nice,  0.8% system, 26.0% interrupt, 72.0% idle
CPU 2:  1.2% user,  0.0% nice,  1.6% system,  9.1% interrupt, 88.2% idle
CPU 3:  2.4% user,  0.0% nice,  1.6% system,  6.7% interrupt, 89.4% idle
Mem: 633M Active, 2402M Inact, 732M Wired, 42M Cache, 416M Buf, 99M Free
Swap: 8192M Total, 8192M Free

  PID USERNAME    PRI NICE   SIZE    RES STATE   C   TIME   WCPU COMMAND
   11 root        155 ki31     0K    64K CPU0    0  41:06 90.33% idle{idle: cpu0}
   11 root        155 ki31     0K    64K CPU3    3  41:53 89.50% idle{idle: cpu3}
   11 root        155 ki31     0K    64K RUN     2  42:21 86.67% idle{idle: cpu2}
   11 root        155 ki31     0K    64K RUN     1  37:11 68.21% idle{idle: cpu1}
   12 root        -92    -     0K   560K WAIT    1   9:22 25.29% intr{irq268: igb1:que}
   12 root        -92    -     0K   560K WAIT    0   4:06 10.45% intr{irq264: igb0:que}
   12 root        -92    -     0K   560K WAIT    2   3:29  8.69% intr{irq266: igb0:que}
   12 root        -92    -     0K   560K WAIT    1   3:46  8.40% intr{irq265: igb0:que}
   12 root        -92    -     0K   560K WAIT    3   1:13  2.69% intr{irq270: igb1:que}
10482 root         52    0   137M 25892K select  0   1:59  2.34% mpd5{mpd5}
   12 root        -92    -     0K   560K WAIT    2   0:52  1.51% intr{irq269: igb1:que}
   12 root        -72    -     0K   560K WAIT    2   0:39  1.51% intr{swi1: netisr 0}
    4 root        -16    -     0K    16K pftm    2   0:36  0.98% pfpurge
 9747 bind         20    0   206M   164M uwait   2   0:20  0.29% named{named}
 9747 bind         20    0   206M   164M uwait   3   0:20  0.20% named{named}
 9747 bind         20    0   206M   164M uwait   1   0:20  0.20% named{named}
 9747 bind         20    0   206M   164M uwait   3   0:20  0.20% named{named}
 9747 bind         20    0   206M   164M kqread  3   0:12  0.05% named{named}
96949 zabbix       24    0 48804K  3688K CPU3    3   0:00  0.00% sudo

Код: Выделить всё

24902/1873/26775 mbufs in use (current/cache/total)
24728/872/25600/25600 mbuf clusters in use (current/cache/total/max)
24724/441 mbuf+clusters out of packet secondary zone in use (current/cache)
0/0/0/12800 4k (page size) jumbo clusters in use (current/cache/total/max)
0/0/0/6400 9k jumbo clusters in use (current/cache/total/max)
0/0/0/3200 16k jumbo clusters in use (current/cache/total/max)
55690K/2212K/57902K bytes allocated to network (current/cache/total)
0/6690991/3012912 requests for mbufs denied (mbufs/clusters/mbuf+clusters)
0/4530/0 requests for mbufs delayed (mbufs/clusters/mbuf+clusters)
0/0/0 requests for jumbo clusters delayed (4k/9k/16k)
0/0/0 requests for jumbo clusters denied (4k/9k/16k)
0/0/0 sfbufs in use (current/peak/max)
0 requests for sfbufs denied
0 requests for sfbufs delayed
0 requests for I/O initiated by sendfile
0 calls to protocol drain routines
Какие будут соображения?

guest
проходил мимо

Re: Fatal trap 12: page fault while in kernel mode

Непрочитанное сообщение guest » 2014-05-29 10:38:47

pfsense2 писал(а):Сейчас запущен с:

Код: Выделить всё

# cat /boot/loader.conf
#net.graph.maxalloc="65536"
#net.graph.maxdata="65536"
#kern.maxusers="0"
#kern.ipc.maxpipekva="200000000"

#vm.kmem_size_max=2G
#vm.kmem_size=2G
#vm.kmem_size_scale="2"

#net.inet.tcp.syncache.hashsize=1024
#net.inet.tcp.syncache.bucketlimit=100

#kern.ipc.semmnu=256
#kern.ipc.semmns=32000
#kern.ipc.shmmni=4096

#net.inet.tcp.tcbhashsize=4096

#hw.em.rxd=4096
#hw.em.txd=4096

hw.igb.rxd=4096
hw.igb.txd=4096
hw.igb.enable_aim=0
hw.igb.max_interrupt_rate=32000
hw.igb.rx_process_limit=2048
hw.igb.num_queues=3

#net.isr.defaultqlimit=4096
#net.link.ifqmaxlen=10240

Код: Выделить всё

# cat /etc/sysctl.conf
net.inet.tcp.blackhole=2
net.inet.udp.blackhole=1
#kern.ipc.somaxconn=8192
net.inet.tcp.drop_synfin=1

net.inet.icmp.drop_redirect=1
net.inet.icmp.log_redirect=0
net.inet.ip.redirect=0
net.inet6.ip6.redirect=0

net.inet.icmp.icmplim=1000

#net.inet.tcp.sendspace=3217968
#net.inet.tcp.recvspace=3217968

#net.inet.tcp.msl=7500

net.inet.ip.portrange.first=11000
net.inet.ip.portrange.last=65535

#kern.ipc.maxsockets=204800
net.inet.ip.portrange.randomized=0
#net.inet.tcp.nolocaltimewait=1
#kern.ipc.shmall=262144
#net.link.ether.inet.max_age=600

#net.inet.tcp.maxtcptw=40960

#dev.em.0.rx_int_delay=200
#dev.em.0.tx_int_delay=200
#dev.em.0.rx_abs_int_delay=4000
#dev.em.0.tx_abs_int_delay=4000
#dev.em.0.rx_processing_limit=4096
#dev.em.0.max_interrupt_rate=32000

#dev.em.1.rx_int_delay=200
#dev.em.1.tx_int_delay=200
#dev.em.1.rx_abs_int_delay=4000
#dev.em.1.tx_abs_int_delay=4000
#dev.em.1.rx_processing_limit=4096
#dev.em.1.max_interrupt_rate=32000

dev.igb.0.rx_processing_limit=4096
dev.igb.1.rx_processing_limit=4096
dev.igb.2.rx_processing_limit=4096
dev.igb.3.rx_processing_limit=4096
dev.igb.0.enable_aim=0
dev.igb.1.enable_aim=0
dev.igb.2.enable_aim=0
dev.igb.3.enable_aim=0

#net.graph.maxdgram=8388608
#net.graph.recvspace=8388608

#kern.ipc.nmbclusters=80000
#kern.ipc.maxsockbuf=83886080

#net.inet.ip.dummynet.pipe_slot_limit=1000
#net.inet.ip.dummynet.io_fast=1

net.inet.ip.fastforwarding=1
#net.inet.ip.intr_queue_maxlen=10240

#net.isr.direct=0
#net.isr.direct_force=0
Имеем вот такой эффект:

Код: Выделить всё

# ngctl list
ngctl: can't create node: No buffer space available
Т.е., крутить надо. Опишу комбайн:
- терминирование PPPoE, mpd (шейпер ng_car), в пике до 1300 соединений.
для mpd вернуть значения netgraph, возможно увеличить, vm.kmem - тоже нужно обдумать
- igb0 - внешка, igb1 - абоненты. Скоро будет вторая внешка на igb2.
- канал 800Mbps
- quagga (bgpd только дефолт)
- несколько IPSec-туннелей на другие серверы (racoon)
- с полсотни вланов с шейпером на ng_car
- bind - локальная зона, форвардинг, обратная зона
- apache для мелких задач
- isc-dhcp
- squid (очень мало используется)
- zabbix_agent
для squid - ipc
для остального тоже нужно смотреть...
+ некоторое количество наших скриптов на Perl/PHP в кроне
Основной фаер - pf, скомпилирован в ядре. Немного pfnat.
ipfw используется только для dummynet, но в настоящее время работает в холостую, пропуская все.

В целом вроде все.
У Вас серьезно нагруженный сервер и его тюнинг, вещь непростая, очень советую, либо
написать в списки рассылки freebsd-net, либо в fido7.ru.unix.bsd.
Либо, разнесите по разным серверам pppoe и quagga, по двум или трем серверам.

v_ovan86
рядовой
Сообщения: 10
Зарегистрирован: 2012-11-20 15:05:45

Re: Fatal trap 12: page fault while in kernel mode

Непрочитанное сообщение v_ovan86 » 2014-12-15 22:40:18

Посмотрите вот здесь http://hitanyway.in.ua/category/freebsd/ мне помогло после пересборки мира.