проблема GEOM: ad4: FAILURE - out of memory in start, pentarh, 23-Ноя-07, 15:33 [смотреть все]Не знаю че это за хрень. В dmesg: ad4: FAILURE - out of memory in start ad6: FAILURE - out of memory in startи т.д. Появилась впервые когда я подключил двойной geom_stripe и дал хорошую нагрузку. Писало очень часто такие ошибки и файлы херились. На той машине стояло 2 гига памяти, из процессов только апач под 50 процессов и nginx. Как только убрал нагрузку, сообщения исчезли. Сейчас я тоже самое наблюдаю на машине с geom_mirror, но нечасто. Что это может быть? Нашел вот это сообщение в исходниках: /sys/dev/ata/ata-disk.c: line 215 static void ad_strategy(struct bio *bp) { device_t dev = bp->bio_disk->d_drv1; struct ata_device *atadev = device_get_softc(dev); struct ata_request *request; if (!(request = ata_alloc_request())) { device_printf(dev, "FAILURE - out of memory in start\n"); biofinish(bp, NULL, ENOMEM); return; }
|
- проблема GEOM: ad4: FAILURE - out of memory in start, pentarh, 15:34 , 23-Ноя-07 (1)
пс. система FreeBSD 6.2 RELEASE amd64
- проблема GEOM: ad4: FAILURE - out of memory in start, pentarh, 16:50 , 24-Ноя-07 (2)
Так, нашел где эти фейлуры отображаются vmstat -z | egrep "LIMIT|ata" ITEM SIZE LIMIT USED FREE REQUESTS FAILURES >>>> ata_request: 336, 0, 0, 4741, 510791362, 1 <<<<<ata_composite: 376, 0, 0, 0, 0, 0 Мож кто подскажет как сделать чтобы ему легче было?
- проблема GEOM: ad4: FAILURE - out of memory in start, uldus, 20:58 , 25-Ноя-07 (3)
PR создавай, письмо во freebsd.geom похоже так и останется без ответа. Сейчас глянул, по geom штук 20 незакрытых критичных PR :-(Можно попробовать капнуть в сторону kern.geom.stripe.debug и потюнить в kern.geom.stripe.* (kern.geom.stripe.maxmem). Плюс для UFS отключить atime и увеличить таймауты сброса meta-данных на диск. Для любителей экстрима можно перейти на FreeBSD 7.0beta3 + ZFS, говорят даже работает, хотя про использование в продакшин ничего не слышал.
- проблема GEOM: ad4: FAILURE - out of memory in start, pentarh, 23:34 , 25-Ноя-07 (4)
>PR создавай, письмо во freebsd.geom похоже так и останется без ответа. Сейчас >глянул, по geom штук 20 незакрытых критичных PR :-( > >Можно попробовать капнуть в сторону kern.geom.stripe.debug и потюнить в kern.geom.stripe.* >(kern.geom.stripe.maxmem). Плюс для UFS отключить atime и увеличить таймауты сброса meta-данных на >диск. > >Для любителей экстрима можно перейти на FreeBSD 7.0beta3 + ZFS, говорят даже >работает, хотя про использование в продакшин ничего не слышал. Наколько я понимаю это ata_malloc_request failure. Интересно, относится ли это к геому? Ну к УФС это точно не относится. А что такое PR? Я писал в список рассылки freebsd_geom, но там тихо как в танке и вообще письма скипуют.
- проблема GEOM: ad4: FAILURE - out of memory in start, uldus, 11:12 , 26-Ноя-07 (6)
>Наколько я понимаю это ata_malloc_request failure. Интересно, относится ли это к геому? >Ну к УФС это точно не относится. Вы написали, что проявляется только с geom stripe, про /sys/dev/ata/ata-disk.c я недосмотрел. Про UFS написал, как вариант снижения нагрузки на ata/geom. Тогда нужно смотреть во что ata_alloc_request упирается. В память выделенную ядру не должен, вроде на amd64 ее полно. На всякий случай гляньте sysctl -a|grep -E "kmem|kvm" >А что такое PR? Я писал в список рассылки freebsd_geom, про /sys/dev/ata/ata-disk.c z >тихо как в танке и вообще письма скипуют. Problem Report, отправить можно командой send-pr или через http://www.freebsd.org/send-pr.html
- проблема GEOM: ad4: FAILURE - out of memory in start, pentarh, 23:40 , 25-Ноя-07 (5)
>Можно попробовать капнуть в сторону kern.geom.stripe.debug и потюнить в kern.geom.stripe.* >(kern.geom.stripe.maxmem). Плюс для UFS отключить atime и увеличить таймауты сброса meta-данных на >диск. Ноль на массу. Выставил kern.geom.stripe.maxmem: 67108864 (14М до этого было) Выставил даже vm.kmem_size: 1_073_741_824 пробовал включать и выключать kern.geom.stripe.fast. До задницы. Даю нагрузку и по прежнему хватаю ata_alloc_request() failure
- проблема GEOM: ad4: FAILURE - out of memory in start, pentarh, 23:11 , 05-Дек-07 (8)
В общем, не знаю каким боком, но проблема возникает на ad* винтах при использовании geom_mirror, geom_stripe именно на платформе amd64.Я выставил vm.kmem_size_scale=2 в лоадере, проблема пропала. На амд64 по дефалту vm.kmem_size_scale=3
|