Утилизация всей свободной памяти и падение на MIPS

Bug reports
Post Reply
s.lobanov
Posts: 29
Joined: 11 Oct 2014, 08:28
Contact:

Утилизация всей свободной памяти и падение на MIPS

Post by s.lobanov »

Как повторить на qemu:
$ qemu-system-mips64 --version
QEMU emulator version 2.0.0 (Debian 2.0.0+dfsg-2ubuntu1.10), Copyright (c) 2003-2008 Fabrice Bellard
версия accel-ppp:
git version d4ec7aa1e550b1e604cafa3080d43fd49e99c0cf (branch 1.7)
$ wget https://people.debian.org/~aurel32/qemu ... -5kc-malta
$ wget https://people.debian.org/~aurel32/qemu ... dard.qcow2

$ qemu-system-mips64 -M malta -kernel vmlinux-3.2.0-4-5kc-malta -hda debian_wheezy_mips_standard.qcow2 -append "root=/dev/sda1 console=tty0" -nographic -m 256m
логин user/user, пароль рута root

после того как виртуалка загрузится (несколько минут), просто собираем accel-ppp:
# ip a li; ip ro li; проверяем что сеть поднялась (внешние пинги могут не работать при этом)
# dd if=/dev/zero of=/root/swapfile bs=1M count=512
# mkswap /root/swapfile
# swapon /root/swapfile
# apt-get update
# apt-get install linux-headers-5kc-malta
# apt-get install build-essential
# apt-get install git cmake libssl-dev libpcre3-dev libnl-dev
# git clone git://git.code.sf.net/p/accel-ppp/code accel-ppp.git
# cd accel-ppp.git
# git checkout -b 1.7 --track origin/1.7
# cmake -DBUILD_DRIVER=FALSE -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_BUILD_TYPE=Debug -DLOG_PGSQL=FALSE -DSHAPER=TRUE -DRADIUS=TRUE -DNETSNMP=FALSE -DCMAKE_C_FLAGS_DEBUG='-g'
# make
# make install
после чего запускаем accel-ppp с таким конфигом:
[modules]
log_syslog
pppoe
auth_chap_md5
auth_pap
ippool

[core]
log-error=/var/log/accel-ppp/core.log
thread-count=4

[auth]
any-login=1
noauth=1

[pppoe]
interface=veth0-S
verbose=1

[ip-pool]
gw-ip-address=192.0.2.1
192.0.2.2-255

[log]
syslog=accel-pppd,daemon
level=5
ip netns add Server ; ip netns add Client
ip link add veth0-C type veth peer name veth0-S
ip link set veth0-C netns Client
ip link set veth0-S netns Server
ip netns exec Client ifconfig veth0-C up
ip netns exec Server ifconfig veth0-S up

ip nents exec Server /etc/init.d/accel-ppp-init start
и accel-ppp съедает всю память, после чего убивается:
[ 749.104000] accel-pppd invoked oom-killer: gfp_mask=0x201da, order=0, oom_adj=0, oom_score_adj=0
[ 749.956000] accel-pppd cpuset=/ mems_allowed=0
[ 750.372000] Call Trace:
[ 750.764000] [<ffffffff805ae288>] dump_stack+0x8/0x34
[ 751.148000] [<ffffffff801c8a80>] dump_header.isra.12+0x60/0x170
[ 751.536000] [<ffffffff801c8efc>] oom_kill_process+0xd4/0x2c0
[ 751.900000] [<ffffffff801c9620>] out_of_memory+0xd8/0x210
[ 752.264000] [<ffffffff801cd940>] __alloc_pages_nodemask+0x7b0/0x880
[ 752.612000] [<ffffffff801c7c1c>] filemap_fault+0x1dc/0x468
[ 752.948000] [<ffffffff801e86a8>] __do_fault+0x88/0x580
[ 753.296000] [<ffffffff801eb440>] handle_pte_fault+0x98/0xb48
[ 753.612000] [<ffffffff80116f0c>] do_page_fault+0x14c/0x3e0
[ 753.916000] [<ffffffff80101ae0>] ret_from_exception+0x0/0x24
[ 754.220000]
[ 754.500000] Mem-Info:
[ 754.768000] DMA per-cpu:
[ 755.032000] CPU 0: hi: 0, btch: 1 usd: 0
[ 755.288000] Normal per-cpu:
[ 755.532000] CPU 0: hi: 90, btch: 15 usd: 3
[ 755.772000] active_anon:29033 inactive_anon:29107 isolated_anon:0
[ 755.772000] active_file:0 inactive_file:12 isolated_file:0
[ 755.772000] unevictable:0 dirty:0 writeback:0 unstable:0
[ 755.772000] free:748 slab_reclaimable:724 slab_unreclaimable:1759
[ 755.772000] mapped:1 shmem:2 pagetables:756 bounce:0
[ 756.892000] DMA free:1080kB min:124kB low:152kB high:184kB active_anon:3888kB inactive_anon:4104kB active_file:0kB inactive_file:0kB unevictable:0kB isolated(anon):0kB isolated(file):0kB present:16160kB mlocked:0kB dirty:0kB writeback:0kB mapped:0kB shmem:0kB slab_reclaimable:12kB slab_unreclaimable:24kB kernel_stack:0kB pagetables:28kB unstable:0kB bounce:0kB writeback_tmp:0kB pages_scanned:0 all_unreclaimable? yes
[ 758.068000] lowmem_reserve[]: 0 236 236
[ 758.276000] Normal free:1912kB min:1904kB low:2380kB high:2856kB active_anon:112244kB inactive_anon:112324kB active_file:0kB inactive_file:48kB unevictable:0kB isolated(anon):0kB isolated(file):0kB present:242396kB mlocked:0kB dirty:0kB writeback:0kB mapped:4kB shmem:8kB slab_reclaimable:2884kB slab_unreclaimable:7012kB kernel_stack:944kB pagetables:2996kB unstable:0kB bounce:0kB writeback_tmp:0kB pages_scanned:417 all_unreclaimable? yes
[ 759.364000] lowmem_reserve[]: 0 0 0
[ 759.548000] DMA: 2*4kB 0*8kB 1*16kB 1*32kB 0*64kB 0*128kB 0*256kB 0*512kB 1*1024kB 0*2048kB 0*4096kB = 1080kB
[ 759.960000] Normal: 12*4kB 1*8kB 0*16kB 0*32kB 1*64kB 0*128kB 1*256kB 1*512kB 1*1024kB 0*2048kB 0*4096kB = 1912kB
[ 760.408000] 96 total pagecache pages
[ 760.604000] 82 pages in swap cache
[ 760.808000] Swap cache stats: add 384946, delete 384864, find 375/630
[ 761.024000] Free swap = 0kB
[ 761.240000] Total swap = 1016824kB
[ 761.452000] 65535 pages RAM
[ 761.656000] 2811 pages reserved
[ 761.856000] 16 pages shared
[ 762.064000] 61575 pages non-shared
[ 762.272000] [ pid ] uid tgid total_vm rss cpu oom_adj oom_score_adj name
[ 762.704000] [ 157] 0 157 849 0 0 -17 -1000 udevd
[ 763.192000] [ 617] 0 617 833 0 0 -17 -1000 udevd
[ 763.720000] [ 618] 0 618 833 0 0 -17 -1000 udevd
[ 764.312000] [ 1599] 0 1599 750 11 0 0 0 rpcbind
[ 764.928000] [ 1602] 0 1602 1287 0 0 -17 -1000 dhclient
[ 765.580000] [ 1645] 102 1645 847 0 0 0 0 rpc.statd
[ 766.296000] [ 1657] 0 1657 850 0 0 0 0 rpc.idmapd
[ 767.044000] [ 1924] 0 1924 7179 0 0 0 0 rsyslogd
[ 767.828000] [ 1985] 0 1985 697 0 0 0 0 atd
[ 768.620000] [ 2022] 0 2022 1131 14 0 0 0 cron
[ 769.448000] [ 2280] 0 2280 1915 0 0 -17 -1000 sshd
[ 770.304000] [ 2307] 101 2307 2229 1 0 0 0 exim4
[ 771.200000] [ 2334] 0 2334 700 0 0 0 0 getty
[ 772.128000] [ 2335] 0 2335 700 0 0 0 0 getty
[ 773.092000] [ 2336] 0 2336 700 0 0 0 0 getty
[ 774.068000] [ 2337] 0 2337 700 0 0 0 0 getty
[ 775.048000] [ 2338] 0 2338 700 0 0 0 0 getty
[ 776.016000] [ 2339] 0 2339 700 0 0 0 0 getty
[ 776.992000] [ 2340] 0 2340 1127 0 0 0 0 login
[ 777.968000] [ 2341] 1000 2341 1647 1 0 0 0 bash
[ 778.944000] [ 2356] 1000 2356 1322 0 0 0 0 su
[ 779.928000] [ 2357] 0 2357 1519 5 0 0 0 bash
[ 780.916000] [ 2449] 0 2449 311335 57959 0 0 0 accel-pppd
[ 781.892000] [ 2462] 0 2462 1298 61 0 0 0 top
[ 782.868000] Out of memory: Kill process 2449 (accel-pppd) score 949 or sacrifice child
[ 783.852000] Killed process 2449 (accel-pppd) total-vm:1245340kB, anon-rss:231836kB, file-rss:0kB
s.lobanov
Posts: 29
Joined: 11 Oct 2014, 08:28
Contact:

Re: Утилизация всей свободной памяти и падение на MIPS

Post by s.lobanov »

Кстати, на arm64 (aarch64) работает нормально (debian 8.0 arm64)
Post Reply