Jump to content
Калькуляторы

_longhorn_

Активный участник
  • Content Count

    117
  • Joined

  • Last visited

Posts posted by _longhorn_


  1. Коллеги, нужна ваша помощь.. У кого работает vlan-mon для IPoE на карте intel x520-da2 чип 82599? Не хочет создавать vlan. Сменил карту с i350/82576 на x520 82599 и понеслоьс. VLAN-mon не хочет солздавь vlan сам.

     

    Версия драйвера  4.4.6
    
    Ubuntu 14.04 3.19.0-64-generic
    IPoE session driver v1.11
    
    
    vlan-mon=re:eth1.*.1001-4090
    interface=re:eth1.*.[1-4][0-9][0-9][0-9]
    
    # lsmod | grep ipoe
    ipoe               	36864  0 
    
    
    

     

    В 1.11 нужно собирать модуль vlan_mon, подгружать и добавлять его в секции [modules] в accel.

  2. Добрый день всем. Написал на форуме проекта и подумал, что возможно стоит продублировать и сюда.

    Сегодня обновил ядро на 4.1.24, драйвер ixgbe 4.3.15 и за одно accel-ppp до последней dev-версии. Спустя несколько часов работы accel упал по out-of-memory. До этого стояло ядро 3.14.58, ixgbe 4.1.5 и accel 1.10 релизный, при этом проблем вообще не было. В dmesg высыпало:

     

    [Tue May 24 12:53:44 2016] accel-pppd invoked oom-killer: gfp_mask=0x201da, order=0, oom_score_adj=0
    [Tue May 24 12:53:44 2016] accel-pppd cpuset=/ mems_allowed=0
    [Tue May 24 12:53:44 2016] CPU: 3 PID: 10092 Comm: accel-pppd Tainted: G O 4.1.24-nas.1 #1
    [Tue May 24 12:53:44 2016] Hardware name: System manufacturer System Product Name/P8Z77-M, BIOS 2105 09/10/2013
    [Tue May 24 12:53:44 2016] 0000000000000286 0000000000000000 ffffffff814d1dd1 0000000000000007
    [Tue May 24 12:53:44 2016] 00000000000201da 0000000000000000 ffffffff814d1174 ffff8800d74c5800
    [Tue May 24 12:53:44 2016] ffff8800c57dbb48 ffff8800d99e7e70 0000000000000000 ffff88011fdf6b00
    [Tue May 24 12:53:44 2016] Call Trace:
    [Tue May 24 12:53:44 2016] [<ffffffff814d1dd1>] ? dump_stack+0x47/0x5b
    [Tue May 24 12:53:44 2016] [<ffffffff814d1174>] ? dump_header+0x95/0x20f
    [Tue May 24 12:53:44 2016] [<ffffffffa03e5089>] ? i915_gem_shrinker_oom+0x1b9/0x210 [i915]
    [Tue May 24 12:53:44 2016] [<ffffffff81136053>] ? oom_kill_process+0x1d3/0x3b0
    [Tue May 24 12:53:44 2016] [<ffffffff81135aaf>] ? find_lock_task_mm+0x3f/0xa0
    [Tue May 24 12:53:44 2016] [<ffffffff811365a5>] ? __out_of_memory+0x315/0x540
    [Tue May 24 12:53:44 2016] [<ffffffff81136963>] ? out_of_memory+0x53/0x70
    [Tue May 24 12:53:44 2016] [<ffffffff8113bdf4>] ? __alloc_pages_nodemask+0x924/0xa10
    [Tue May 24 12:53:44 2016] [<ffffffff8127c6a9>] ? queue_unplugged+0x29/0xc0
    [Tue May 24 12:53:44 2016] [<ffffffff8117b781>] ? alloc_pages_current+0x91/0x110
    [Tue May 24 12:53:44 2016] [<ffffffff81134b7c>] ? filemap_fault+0x1ac/0x420
    [Tue May 24 12:53:44 2016] [<ffffffffa010ea21>] ? ext4_filemap_fault+0x31/0x50 [ext4]
    [Tue May 24 12:53:44 2016] [<ffffffff8115b24f>] ? __do_fault+0x3f/0xd0
    [Tue May 24 12:53:44 2016] [<ffffffff8115eb52>] ? handle_mm_fault+0xda2/0x14d0
    [Tue May 24 12:53:44 2016] [<ffffffff811e2831>] ? ep_poll+0x1f1/0x3e0
    [Tue May 24 12:53:44 2016] [<ffffffff8104c608>] ? __do_page_fault+0x1a8/0x470
    [Tue May 24 12:53:44 2016] [<ffffffff811e3bc8>] ? SyS_epoll_wait+0x88/0xe0
    [Tue May 24 12:53:44 2016] [<ffffffff814d8cb2>] ? page_fault+0x22/0x30
    [Tue May 24 12:53:44 2016] Mem-Info:
    [Tue May 24 12:53:44 2016] active_anon:707452 inactive_anon:180081 isolated_anon:1
    active_file:272 inactive_file:14 isolated_file:0
    unevictable:0 dirty:0 writeback:393 unstable:0
    slab_reclaimable:8830 slab_unreclaimable:9139
    mapped:211 shmem:214 pagetables:4334 bounce:0
    free:6245 free_pcp:0 free_cma:0
    [Tue May 24 12:53:44 2016] Node 0 DMA free:15428kB min:28kB low:32kB high:40kB active_anon:164kB inactive_anon:208kB active_file:0kB inactive_file:0kB unevictable:0kB isolated(anon):0kB isolated(file):0kB present:15984kB managed:15892kB mlocked:0kB dirty:0kB writeback:0kB mapped:8kB shmem:0kB slab_reclaimable:12kB slab_unreclaimable:68kB kernel_stack:0kB pagetables:4kB unstable:0kB bounce:0kB free_pcp:0kB local_pcp:0kB free_cma:0kB writeback_tmp:0kB pages_scanned:0 all_unreclaimable? yes
    [Tue May 24 12:53:44 2016] lowmem_reserve[]: 0 3406 3851 3851
    [Tue May 24 12:53:44 2016] Node 0 DMA32 free:8656kB min:6920kB low:8648kB high:10380kB active_anon:2636948kB inactive_anon:527096kB active_file:840kB inactive_file:0kB unevictable:0kB isolated(anon):0kB isolated(file):0kB present:3563748kB managed:3489828kB mlocked:0kB dirty:0kB writeback:0kB mapped:616kB shmem:760kB slab_reclaimable:31080kB slab_unreclaimable:27088kB kernel_stack:1184kB pagetables:14920kB unstable:0kB bounce:0kB free_pcp:0kB local_pcp:0kB free_cma:0kB writeback_tmp:0kB pages_scanned:5156 all_unreclaimable? yes
    [Tue May 24 12:53:44 2016] lowmem_reserve[]: 0 0 444 444
    [Tue May 24 12:53:44 2016] Node 0 Normal free:896kB min:900kB low:1124kB high:1348kB active_anon:192696kB inactive_anon:193020kB active_file:248kB inactive_file:192kB unevictable:0kB isolated(anon):4kB isolated(file):0kB present:522240kB managed:454900kB mlocked:0kB dirty:0kB writeback:1572kB mapped:220kB shmem:96kB slab_reclaimable:4228kB slab_unreclaimable:9400kB kernel_stack:1072kB pagetables:2412kB unstable:0kB bounce:0kB free_pcp:0kB local_pcp:0kB free_cma:0kB writeback_tmp:0kB pages_scanned:2688 all_unreclaimable? yes
    [Tue May 24 12:53:44 2016] lowmem_reserve[]: 0 0 0 0
    [Tue May 24 12:53:44 2016] Node 0 DMA: 6*4kB (UEM) 3*8kB (UEM) 5*16kB (UEM) 4*32kB (UM) 3*64kB (UEM) 1*128kB (E) 2*256kB (UE) 2*512kB (EM) 3*1024kB (UEM) 3*2048kB (EMR) 1*4096kB (M) = 15424kB
    [Tue May 24 12:53:44 2016] Node 0 DMA32: 565*4kB (UEM) 25*8kB (UM) 8*16kB (UM) 8*32kB (M) 2*64kB (M) 0*128kB 0*256kB 0*512kB 0*1024kB 1*2048kB (R) 1*4096kB (R) = 9116kB
    [Tue May 24 12:53:44 2016] Node 0 Normal: 69*4kB (UEMR) 17*8kB (UMR) 12*16kB (MR) 6*32kB (MR) 3*64kB (R) 0*128kB 0*256kB 0*512kB 0*1024kB 0*2048kB 0*4096kB = 988kB
    [Tue May 24 12:53:44 2016] Node 0 hugepages_total=0 hugepages_free=0 hugepages_surp=0 hugepages_size=2048kB
    [Tue May 24 12:53:44 2016] 1291 total pagecache pages
    [Tue May 24 12:53:44 2016] 627 pages in swap cache
    [Tue May 24 12:53:44 2016] Swap cache stats: add 1028806, delete 1028179, find 5007/6368
    [Tue May 24 12:53:44 2016] Free swap = 0kB
    [Tue May 24 12:53:44 2016] Total swap = 4101116kB
    [Tue May 24 12:53:44 2016] 1025493 pages RAM
    [Tue May 24 12:53:44 2016] 0 pages HighMem/MovableOnly
    [Tue May 24 12:53:44 2016] 35338 pages reserved
    [Tue May 24 12:53:44 2016] 0 pages hwpoisoned
    [Tue May 24 12:53:44 2016] [ pid ] uid tgid total_vm rss nr_ptes nr_pmds swapents oom_score_adj name
    [Tue May 24 12:53:44 2016] [ 199] 0 199 8242 10 20 3 61 0 systemd-journal
    [Tue May 24 12:53:44 2016] [ 214] 0 214 10011 48 22 3 76 -1000 systemd-udevd
    [Tue May 24 12:53:44 2016] [ 8844] 0 8844 6876 0 18 4 70 0 cron
    [Tue May 24 12:53:44 2016] [ 8845] 0 8845 13796 4 34 3 168 -1000 sshd
    [Tue May 24 12:53:44 2016] [ 8846] 107 8846 16319 11 33 3 164 0 zabbix_agentd
    [Tue May 24 12:53:44 2016] [ 8848] 0 8848 4964 0 14 4 69 0 systemd-logind
    [Tue May 24 12:53:44 2016] [ 8852] 105 8852 10531 30 25 3 71 -900 dbus-daemon
    [Tue May 24 12:53:44 2016] [ 8859] 0 8859 64580 4 28 3 247 0 rsyslogd
    [Tue May 24 12:53:44 2016] [ 8861] 0 8861 1064 4 7 3 36 0 acpid
    [Tue May 24 12:53:44 2016] [ 8921] 107 8921 16319 119 32 3 153 0 zabbix_agentd
    [Tue May 24 12:53:44 2016] [ 8922] 107 8922 16319 25 32 3 155 0 zabbix_agentd
    [Tue May 24 12:53:44 2016] [ 8923] 107 8923 16319 17 32 3 167 0 zabbix_agentd
    [Tue May 24 12:53:44 2016] [ 8924] 107 8924 16319 48 32 3 147 0 zabbix_agentd
    [Tue May 24 12:53:44 2016] [ 8925] 107 8925 16319 31 32 3 153 0 zabbix_agentd
    [Tue May 24 12:53:44 2016] [ 8928] 106 8928 6726 220 17 3 92 0 zebra
    [Tue May 24 12:53:44 2016] [ 8939] 106 8939 7925 245 18 3 316 0 bgpd
    [Tue May 24 12:53:44 2016] [ 8953] 0 8953 4341 13 14 3 37 0 watchquagga
    [Tue May 24 12:53:44 2016] [ 8964] 0 8964 5054 4 15 3 64 0 xinetd
    [Tue May 24 12:53:44 2016] [ 8977] 0 8977 3604 4 12 3 39 0 agetty
    [Tue May 24 12:53:44 2016] [10053] 0 10053 2022613 885488 3762 11 1020507 0 accel-pppd
    [Tue May 24 12:53:44 2016] [11477] 0 11477 8140 56 20 3 68 0 systemd-udevd
    [Tue May 24 12:53:44 2016] [11478] 0 11478 8140 56 20 3 68 0 systemd-udevd
    [Tue May 24 12:53:44 2016] [11479] 0 11479 8140 56 20 3 68 0 systemd-udevd
    [Tue May 24 12:53:44 2016] [11480] 0 11480 8140 56 20 3 68 0 systemd-udevd
    [Tue May 24 12:53:44 2016] [11488] 0 11488 8140 56 20 3 66 0 systemd-udevd
    [Tue May 24 12:53:44 2016] [11489] 0 11489 8140 57 20 3 65 0 systemd-udevd
    [Tue May 24 12:53:44 2016] Out of memory: Kill process 10053 (accel-pppd) score 919 or sacrifice child
    [Tue May 24 12:53:44 2016] Killed process 10053 (accel-pppd) total-vm:8090452kB, anon-rss:3541952kB, file-rss:0kB
    

    Также настрочило логов на 10 GB, в основном записи типа

    [2016-05-24 12:46:51]: error: ppp23: ppp_unit_read: short read 0

     

    Никто с таким не сталкивался недавно?

  3. Добрый день всем.

    На выходных у нас знатно бомбануло, пуканы горят. Потому хотел поинтересоваться, кому еще также повезло и когда можно ждать 5.6.5 с ct? :)

    В соседней теме отписался. Тоже словили.

    P.S. Зайди на точку по ssh и пропиши enable_ct и будет тебе счастье.

     

    Это понятно, но все-таки прошивка с включенным сразу ct удобнее.

  4. Интел с 4 совмещенными очередями

     

    Создайте количество очередей равное количеству ядер одного CPU. Например, Вы используете 4-х ядерный CPU, значит и количество векторов прерываний создайте 4. Привяжите каждый вектор вручную к каждому ядру и попробуйте включить RPS, затем можете попробовать добавить RFS, должно помочь.

  5. Здравствуйте. Появился еще вопрос - почему может грузиться только одно ядро? Прерывания раскинуты по ядрам.

     

    У вас PPPoE или IPoE? Если IPoE то используете ли QinQ? В данном случае это очень важно.

    PPPoE. Потоков в конфиге 4

     

    Тогда включайте RPS и RFS, должно помочь. Какая сетевая карта используется?

  6. Но кто мне объяснит смысл переписывания memset(sk_pppox(po) + 1, 0, sizeof(struct pppox_sock) - sizeof(struct sock)); ???

    скорее - просто подстраховка, чтобы при race condition (когда воркер инициализирует соединение, прервав на средине дисконект) не потерлись нужные поля...

    Доброго здоровья!

    Как с новыми патчами, падает ли?)

     

    И у меня падает... Пробовал на одном 4.1.13 с патчем, на другом 4.1.15, там патч уже частично включен. Оба жили долго и счастливо и умерли в один день :) Откатился на 3.14.58 на обоих покаместь...

  7. Пытаюсь собрать ipoe-драйвер на Gentoo Linux. Получаю следующее:

     

    /var/tmp/portage/net-dialup/accel-ppp-1.10.0/work/accel-ppp-1.10.0_build/drivers/ipoe/driver/ipoe.c: In function ‘ipoe_xmit’:

    /var/tmp/portage/net-dialup/accel-ppp-1.10.0/work/accel-ppp-1.10.0_build/drivers/ipoe/driver/ipoe.c:445:5: error: ‘struct sk_buff’ has no member named ‘tc_verd’

    skb->tc_verd = SET_TC_NCLS(0);

    ^

     

    На ядрах 4.0.9 и 4.3.0 - ошибка та же. Как я понимаю поменялась структура в ядре, но когда именно(в какой версии) - затрудняюсь сказать - спец по ядру из меня никакой.

     

     

    У меня тоже самое, это если собирать версию из git. При этом релизный 1.10.0 собирается без проблем.

  8. Понимаю что продолжаю оффтоп, но все же спрошу :) Заметил, что на всех без исключения брасах с accel в dmesg периодически попадает htb: too many events! Догадываюсь, что надо где-то что-то подкрутить, не подскажите где именно и что?

    Вы используете назначение полосы пропускания непосредственно из accel-ppp или из скрипта ip-up? Увеличение quantum должно помочь.

     

    Используется встроенный шейпер accel, htb, quantum сейчас стоит 1500, сессий в пике в среднем до 5000. Какое посоветуете значение quantum?

  9. Понимаю что продолжаю оффтоп, но все же спрошу :) Заметил, что на всех без исключения брасах с accel в dmesg периодически попадает htb: too many events! Догадываюсь, что надо где-то что-то подкрутить, не подскажите где именно и что?

  10. Чёт мне кажется где-то в районе около или после 3.14 сломали нечто

    и форкают эту дрянь по текущее ядро.

    Есть в хозяйстве еще один брас, там accel 1.9.0 релизный и ядро 3.14.27, там аптайм уже 328 дней, аж не верится. Если будут эти два валиться и дальше то наверное попробую и на них ядра по-старее поставить, а что делать...

    А если 3.14.57 собрать для теста?

     

    Я тоже к этому склоняюсь. Если еще раз один из брасов на новых ядрах повиснет то обязательно соберу 3.14.

  11. disappointed

    4.1.12/13 не пробовали, как вам рекомендовали?

     

    Я попробовал :) Вчера на одном брасе собрал 4.1.13, сетевая 82599, драйвера ixgbe 4.2.1 и accel из git. Скоро сутки аптайма, второй сегодня недавно собрал почти такой-же, только ядро решил попробовать 4.2.6. Вот сижу жду кто быстрее кончит :) Есть в хозяйстве еще один брас, там accel 1.9.0 релизный и ядро 3.14.27, там аптайм уже 328 дней, аж не верится. Если будут эти два валиться и дальше то наверное попробую и на них ядра по-старее поставить, а что делать...

  12. Добрый день всем!

     

    Используем IPoE на accel-ppp, часть клиентов авторизируется по dhcp opt82, также есть клиенты, которые авторизуются по неклассифицированному пакету (start=up а конфиге accel). Заметили, что у клиентов, которые работают через модуль ядра ipoe есть периодические потери пакетов, у остальных клиентов, которые работают в выделенном влане таких проблем нет. Проверяли, заводя к себе на стенд отдельный влан с accel с авторизацией по opt82 и действительно наблюдали потери пакетов, количество клиентов в влане не имеет значения. Подскажите, пожалуйста, куда смотреть? Может кто-нибудь с таким сталкивался?

  13. _longhorn_http://stackoverflow...or-empty-in-lua

    Пытался в силу своих возможностей применить тот пример:

     

    
    function username(pkt)
     if (pkt:agent_remote_id() ~= nil) then
     v,b1,b2,b3,b4=string.unpack(pkt:agent_remote_id():sub(-4),'bbbb')
     ip=b1..'.'..b2..'.'..b3..'.'..b4
     v,port=string.unpack(string.sub(pkt:agent_circuit_id(),'-1'),'b')
     local username=ip..'-'..port
     --    print(username)
     return username
    end
    end
    

     

    Если accel получает пакет без opt82 то ругается уже иначе:

     

    [2015-02-04 15:31:49]: error: eth1.717: ipoe: lua: function 'username' must return a string

    Ткните, пожалуйста, носом, как правильно сделать проверку?

  14. _longhorn_так добавьте проверку на NULL в lua-скрипте и все дела

    Любезнейший, если бы умел, то с радостью :)

    Если сможете помочь буду премного благодарен!

    Вот содержимое accel-ppp.lua:

     

    function username(pkt)
     v,b1,b2,b3,b4=string.unpack(pkt:agent_remote_id():sub(-4),'bbbb')
     ip=b1..'.'..b2..'.'..b3..'.'..b4
     v,port=string.unpack(string.sub(pkt:agent_circuit_id(),'-1'),'b')
     local username=ip..'-'..port
     --    print(username)
     return username
    end
    
    function dlink(pkt)
     ip=pkt:agent_remote_id():sub(3)
     v,port=string.unpack(string.sub(pkt:agent_circuit_id(),'-1'),'b')
     local dlink=ip..'-'..port
     --    print(dlink)
     return dlink
    end
    

  15. Добрый день всем!

    Используем accel-ppp 1.9 для терминации IPoE, все вроде хорошо работает. Но есть один неприятный момент: если на accel прилетает пакетик без opt82 то в логе появляется ошибка

    [2015-01-30 18:04:18]: error: eth1.717: ipoe: lua: /etc/accel-ppp.lua:2: attempt to index a nil value

    После этого в логе появляется следующее:

    [2015-01-30 18:04:56]:  info: eth1.3947: ipoe: session finished
    [2015-01-30 18:04:56]:  info: eth1.717: ipoe: session finished
    [2015-01-30 18:04:58]:  info: eth1.3947: ipoe: session finished
    [2015-01-30 18:04:58]:  info: eth1.717: ipoe: session finished
    [2015-01-30 18:05:00]:  info: eth1.3947: ipoe: session finished
    [2015-01-30 18:05:02]:  info: eth1.717: ipoe: session finished
    [2015-01-30 18:05:04]:  info: eth1.3947: ipoe: session finished
    [2015-01-30 18:05:06]:  info: eth1.3947: ipoe: session finished
    [2015-01-30 18:05:18]:  info: eth1.3947: ipoe: session finished
    [2015-01-30 18:05:20]:  info: eth1.3947: ipoe: session finished
    [2015-01-30 18:05:22]:  info: eth1.3947: ipoe: session finished
    [2015-01-30 18:05:26]:  info: eth1.3947: ipoe: session finished
    [2015-01-30 18:05:28]:  info: eth1.3947: ipoe: session finished
    [2015-01-30 18:06:07]:  info: eth1.717: ipoe: session finished
    [2015-01-30 18:06:09]:  info: eth1.717: ipoe: session finished
    [2015-01-30 18:06:10]:  info: eth1.3947: ipoe: session finished
    [2015-01-30 18:06:12]:  info: eth1.3947: ipoe: session finished
    [2015-01-30 18:06:13]:  info: eth1.717: ipoe: session finished
    [2015-01-30 18:06:14]:  info: eth1.3947: ipoe: session finished
    [2015-01-30 18:06:18]:  info: eth1.3947: ipoe: session finished
    [2015-01-30 18:06:20]:  info: eth1.3947: ipoe: session finished
    [2015-01-30 18:06:30]:  info: eth1.3947: ipoe: session finished
    [2015-01-30 18:06:32]:  info: eth1.3947: ipoe: session finished
    [2015-01-30 18:06:34]:  info: eth1.3947: ipoe: session finished
    [2015-01-30 18:06:38]:  info: eth1.3947: ipoe: session finished
    [2015-01-30 18:06:40]:  info: eth1.3947: ipoe: session finished

     

    После решения проблемы на комутаторе (включение dhcp snooping в указаном влане или удаление влана с порта) для влсстановления нормальной работы accel нужно выполнить accel-cmd reload.

    Кто нибудь с таким сталкивался? Может можно что-то подкрутить на стороне accel?