Сколько раз пытался подружиться с XFS, все время какие-то ошибки возникают. Уже и не знаю что делать((. Надежность XFS у меня под бооольшим сомнением.
Первый раз пытался отформатировать раздел под домашний каталог. Это было где-то полгода назад, ядро приблизительно 2.6.30, система-арч, винт Сигейт Барракуда 7 на 40 гигов, ИДЕ, проц Атлон 2000+, 628 оперативки.
Раздел небольшой, 30 гигов. Форматировал по дефолту, без каких-либо опций
mkfs.xfs /dev/sda3
Через некоторое время при попытке скопировать (уже точно не помню) в логах летели ошибки наподобие
[<c1161aab>] ? blk_peek_request+0xeb/0x1b0
[<c1064bc0>] ? ktime_get_ts+0xd0/0x100
[<c12b82e9>] ? io_schedule+0x59/0xa0
[<c10aee45>] ? sync_page+0x35/0x40
[<c12b8965>] ? __wait_on_bit+0x45/0x70
[<c10aee10>] ? sync_page+0x0/0x40
[<c10af093>] ? wait_on_page_bit+0x93/0xa0
[<c105afc0>] ? wake_bit_function+0x0/0x60
[<c10b9567>] ? pageout+0x1b7/0x220
[<c10b9ca5>] ? shrink_page_list+0x1f5/0x540
[<c108ed0a>] ? __delayacct_blkio_end+0x2a/0x50
[<c10c4531>] ? congestion_wait+0x61/0x80
[<c10ba6e6>] ? shrink_list+0x6f6/0x780
[<c1009d78>] ? sched_clock+0x8/0x10
[<c1060a64>] ? sched_clock_local+0xa4/0x180
[<c10ba9b0>] ? shrink_zone+0x240/0x340
[<c10bb768>] ? try_to_free_pages+0x208/0x360
[<c10b8a40>] ? isolate_pages_global+0x0/0x1d0
[<c10b4f86>] ? __alloc_pages_nodemask+0x346/0x5e0
[<c10dd493>] ? __slab_alloc+0x163/0x670
[<c10ddbe8>] ? kmem_cache_alloc+0xb8/0x150
[<c8c7ffe4>] ? kmem_zone_alloc+0x74/0xb0 [xfs]
[<c8c7ffe4>] ? kmem_zone_alloc+0x74/0xb0 [xfs]
[<c8c80031>] ? kmem_zone_zalloc+0x11/0x50 [xfs]
[<c8c78654>] ? _xfs_trans_alloc+0x24/0x70 [xfs]
[<c8c78878>] ? xfs_trans_alloc+0x78/0x80 [xfs]
[<c1060a64>] ? sched_clock_local+0xa4/0x180
[<c8c65a88>] ? xfs_iomap_write_unwritten+0x88/0x250 [xfs]
[<c10366db>] ? finish_task_switch+0x3b/0xa0
[<c12b7b59>] ? schedule+0x2f9/0xa30
[<c8c80990>] ? xfs_end_bio_unwritten+0x0/0x70 [xfs]
[<c8c809f4>] ? xfs_end_bio_unwritten+0x64/0x70 [xfs]
Затем она вообще не примонтировалась, пришлось xfs_repair делать. В общем, на тот момент я от нее отказался в пользу Ext4.
Недавно купил новый винт WD Caviar Green EARS 1.5тб и вновь встал вопрос о подходящей ФС. К слову, т.к. винт САТАшный, а разъемов в материнке нет, то дополнительно был куплен контроллер STLab A-224 на sil3114 чипсете и благополучно прошит из режима РАЙД в ИДЕ последней версии - 5.5.0.0. Система та же - арч, но уже с ядром 2.6.32, пакет xfs_progs несколько раз поменял версию, комп тот же. Я вновь посмотрел в сторону XFS, на этот раз более основательно. Создал раздел, отформатировал так:
mkfs.xfs -f -b size=4096 -d agcount=64 -i size=512 -l size=32m /dev/sdb5
Система проработала около дня - и вновь ошибки при попытке скопировать данные!! В логах ругался на повреждение журнала, или чтото в этом духе. Точно сказать не могу, т.к. проверив винт на сбойные сектора, я обнаружил один и поэтому в тот же день его отвез поменять. Отговорка была в виде битого сектора.
"Ладно",-подумал я: "На новом винте все будет как надо".
На поменяном винте битых секторов не оказалось - 2 раза проверял. Система - все тот же арч с ядром 2.6.32, но комп другой - 3пень 750, мать акорп 6ZX85, ВНИМАНИЕ(может это важно будет?) 128мбайт оперативки, контроллер СТЛаб, новый винт. Вновь отформатрировал раздел, но немного по-другому
mkfs.xfs -f -b size=4096 -d agcount=64 -i size=512 -s size=4096 -l size=32m /dev/sdb5
ВНИМАНИЕ - Размер сектора -s size=4096 выбран потому это был WD Caviar Green EARS 1.5, то у него хитрый АППАРАТНЫЙ размер сектора в 4096 байт, ПРОГРАММНО (имеется ввиду программа внутри винта) реализовано, что для оси секторы видны как 512. Кстати, я вообще это зрая сделал или нет??
Но счастье продлилось недолго. Через сутки работы в логах ОПЯТЬ посыпались ошибки
INFO: task xfsconvertd/0:556 blocked for more than 120 seconds.
"echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
xfsconvertd/0 D c7288800 0 556 2 0x00000000
c70f54f0 00000046 c73b3a88 c7288800 c1161aab c7288800 00000000 2a838f08
00000a28 c787d800 c7906540 c144a2a0 c144a2a0 2a827f55 00000a28 c70f56a0
c1445764 c70f56a0 c144a2a0 c144a2a0 00663f06 c1064bc0 610ce0e3 00000000
Call Trace:
[<c1161aab>] ? blk_peek_request+0xeb/0x1b0
[<c1064bc0>] ? ktime_get_ts+0xd0/0x100
[<c12b82e9>] ? io_schedule+0x59/0xa0
[<c10aee45>] ? sync_page+0x35/0x40
[<c12b8965>] ? __wait_on_bit+0x45/0x70
[<c10aee10>] ? sync_page+0x0/0x40
[<c10af093>] ? wait_on_page_bit+0x93/0xa0
[<c105afc0>] ? wake_bit_function+0x0/0x60
[<c10b9567>] ? pageout+0x1b7/0x220
[<c10b9ca5>] ? shrink_page_list+0x1f5/0x540
[<c108ed0a>] ? __delayacct_blkio_end+0x2a/0x50
[<c10c4531>] ? congestion_wait+0x61/0x80
[<c10ba6e6>] ? shrink_list+0x6f6/0x780
[<c1009d78>] ? sched_clock+0x8/0x10
[<c1060a64>] ? sched_clock_local+0xa4/0x180
[<c10ba9b0>] ? shrink_zone+0x240/0x340
[<c10bb768>] ? try_to_free_pages+0x208/0x360
[<c10b8a40>] ? isolate_pages_global+0x0/0x1d0
[<c10b4f86>] ? __alloc_pages_nodemask+0x346/0x5e0
[<c10dd493>] ? __slab_alloc+0x163/0x670
[<c10ddbe8>] ? kmem_cache_alloc+0xb8/0x150
[<c8c7ffe4>] ? kmem_zone_alloc+0x74/0xb0 [xfs]
[<c8c7ffe4>] ? kmem_zone_alloc+0x74/0xb0 [xfs]
[<c8c80031>] ? kmem_zone_zalloc+0x11/0x50 [xfs]
[<c8c78654>] ? _xfs_trans_alloc+0x24/0x70 [xfs]
[<c8c78878>] ? xfs_trans_alloc+0x78/0x80 [xfs]
[<c1060a64>] ? sched_clock_local+0xa4/0x180
[<c8c65a88>] ? xfs_iomap_write_unwritten+0x88/0x250 [xfs]
[<c10366db>] ? finish_task_switch+0x3b/0xa0
[<c12b7b59>] ? schedule+0x2f9/0xa30
[<c8c80990>] ? xfs_end_bio_unwritten+0x0/0x70 [xfs]
[<c8c809f4>] ? xfs_end_bio_unwritten+0x64/0x70 [xfs]
[<c105710f>] ? worker_thread+0x11f/0x260
[<c105af80>] ? autoremove_wake_function+0x0/0x40
[<c1056ff0>] ? worker_thread+0x0/0x260
[<c105acd4>] ? kthread+0x74/0x80
[<c105ac60>] ? kthread+0x0/0x80
[<c1004627>] ? kernel_thread_helper+0x7/0x10
Таких записей было около 10. Система вела себя крайне нестабильно и непредсказуемо - процессы не убивались даже от рута, проц не был загружен, задержки при открытии папок огромные итп. В общем, я в тупике(((
Да, и еще, как мне кажется, немаловажный момент. Во всех случаях XFS использовалась как файлопомойка для торрентов (монтировалась во всех случаях с опциями default). Т.е. На нее все время писались скачиваемые файлы (клиент - transmission) и так целые сутки. Может быть это подорвало систему?? Имхо бред, не должно быть такого, но все равно, выше я писал о том, что оперативки мало, может в этом и есть проблема (к сожалению, в момент сбоя не обратил внимания на количество памяти, но в инете подобные вещи писали например
http://oss.sgi.com/archives/xfs-masters/2009-10/msg00016.htmlhttp://lkml.indiana.edu/hypermail/linux/kernel/0910.2/01146.htmlБудет еще один сбой (конечно будет :-)), обязательно это проверю)