December 3rd, 2013

404

опасная грань

Смотрю рекламную хрень очередного вендора супердистрибьютед файловой системы с интеграцией под свифт.

Предоставляет тома для свифта без избыточности, но с плюшами фс - тайринг, кеширование, дедупликация, и предоставляет возможность свифту самому реплицировать данные.

Внезапно: свифт данные реплицирует, а кластерная файловая система дедуплицирует. Страшненько, да?
404

Утро Лимассола

Во-первых добрые люди выключают освещение за пол-часа до реального рассветания. То есть психоделичный такой город, в котором единственным источником света являются светофоры.

Во вторых рассветает по часам (во сколько восход, во столько же и светает), а не за 2-3 часа как в Питере.
404

SLUB: Unable to allocate memory on node -1 (gfp=0x20)

[1793555.936986] [] alloc_pages_current+0xb6/0x120
[1793555.936990] [] allocate_slab+0x196/0x1a0
[1793555.936994] [] new_slab+0x30/0x180
[1793555.936999] [] __slab_alloc+0x165/0x269
[1793555.937003] [] ? ksize+0x1c/0xc0
[1793555.937007] [] ? __netdev_alloc_skb+0x24/0x50
[1793555.937012] [] __kmalloc_node_track_caller+0x97/0x1e0
[1793555.937016] [] ? __alloc_skb+0x4b/0x240
[1793555.937020] [] ? __netdev_alloc_skb+0x24/0x50
[1793555.937023] [] __alloc_skb+0x78/0x240
[1793555.937027] [] __netdev_alloc_skb+0x24/0x50
[1793555.937035] [] ixgbe_alloc_rx_buffers+0x289/0x350 [ixgbe]
[1793555.937040] [] ? map_single+0x60/0x60
[1793555.937046] [] ixgbe_clean_rx_irq+0x7eb/0x8a0 [ixgbe]
[1793555.937053] [] ixgbe_poll+0xae/0x1a0 [ixgbe]
[1793555.937057] [] ? __netif_receive_skb+0x4de/0x560
[1793555.937061] [] net_rx_action+0x134/0x290
[1793555.937065] [] __do_softirq+0xa8/0x210
[1793555.937068] [] ? net_rx_action+0x112/0x290
[1793555.937073] [] ? _raw_spin_lock+0xe/0x20
[1793555.937077] [] call_softirq+0x1c/0x30
[1793555.937081] [] do_softirq+0x65/0xa0
[1793555.937085] [] irq_exit+0x8e/0xb0
[1793555.937088] [] do_IRQ+0x63/0xe0
[1793555.937092] [] common_interrupt+0x6e/0x6e
[1793555.937094] [] ? system_call_fastpath+0x16/0x1b

http://www.livejournal.com/editjournal.bml?journal=amarao_san&itemid=2709733

This means Ubuntu has chosen to change the default SLAB allocator to
SLUB instead for their kernel. The error you're running into above
seems to indicate that the SLUB allocator is not able to allocate any
swap space for some reason.


Пожалуй, у меня появился первый аргумент против убунты.
404

slub allocation fail memory fragmentation jumbo frames

Продолжаю исследовать проблему. Пока собираю ссылки.

http://marc.info/?l=linux-netdev&m=115171230930203&w=4
http://code.google.com/p/alt-f/issues/detail?id=18
http://utcc.utoronto.ca/~cks/space/blog/linux/WhyPageAllocFailure

ixgb.txt:

Allocating Rx Buffers when Using Jumbo Frames
---------------------------------------------
Allocating Rx buffers when using Jumbo Frames on 2.6.x kernels may fail if
the available memory is heavily fragmented. This issue may be seen with PCI-X
adapters or with packet split disabled. This can be reduced or eliminated
by changing the amount of available memory for receive buffer allocation, by
increasing /proc/sys/vm/min_free_kbytes.


DocBook/kernel-hacking.tmpl

If you are allocating more than a page worth of bytes you can use
vmalloc(). It'll allocate virtual memory in
the kernel map. This block is not contiguous in physical memory,
but the MMU makes it look like it is for you
(so it'll only look contiguous to the CPUs, not to external device
drivers). If you really need large physically contiguous memory
for some weird device, you have a problem: it is poorly supported
in Linux because after some time memory fragmentation in a running
kernel makes it hard
. The best way is to allocate the block early
in the boot process via the alloc_bootmem routine.

http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=714729