LINUX.ORG.RU

Запись на внешний HDD зависает


0

1

# uname -a
Linux life 3.0.8-zen+ #1 ZEN SMP PREEMPT Mon Oct 31 00:03:36 MSK 2011 x86_64 AMD Athlon(tm) 64 X2 Dual Core Processor 5000+ AuthenticAMD GNU/Linux

Делаю rsync с локальной директории на внешний HDD (USB, без дополнительного питания). Rsync через короткое время зависает (вся система работает)

ps afx показывает, что rsync ждёт I/O (и не убивается):

31151 pts/2 D+ 0:31 \_ /usr/bin/rsync --delete-excluded --progress -a --force --delete --exclude-from=/tmp/YTy38

Однако, если дёрнуть этот внешний HDD, например ls или hddtemp, запись возобновляется на короткое время.

# zgrep -i sched /proc/config.gz
CONFIG_SCHED_BFS=y
# CONFIG_SCHED_CFS is not set
# CONFIG_SCHED_BFS_AUTOISO is not set
CONFIG_HAVE_UNSTABLE_SCHED_CLOCK=y
# IO Schedulers
CONFIG_IOSCHED_NOOP=y
CONFIG_IOSCHED_DEADLINE=y
CONFIG_IOSCHED_CFQ=y
CONFIG_IOSCHED_BFQ=y
CONFIG_DEFAULT_IOSCHED=«bfq»
CONFIG_SCHED_OMIT_FRAME_POINTER=y
CONFIG_SCHED_SMT=y
CONFIG_SCHED_MC=y
CONFIG_SCHED_HRTICK=y


случаем там не btrfs? потому что с ней на 3.0 ядрах была такая регрессия, решалось принудительным -o sync

devl547 ★★★★★ ()

Выхлоп dmesg после «зависания» покажите.

aidaho ★★★★★ ()
Ответ на: комментарий от aidaho

Ах, да. Там ничего нет с момента подключения диска.

scsi 7:0:0:0: Direct-Access     StoreJet Transcend             PQ: 0 ANSI: 2 CCS
sd 7:0:0:0: Attached scsi generic sg4 type 0
sd 7:0:0:0: [sdd] 625142448 512-byte logical blocks: (320 GB/298 GiB)
sd 7:0:0:0: [sdd] Write Protect is off
sd 7:0:0:0: [sdd] Mode Sense: 28 00 00 00
sd 7:0:0:0: [sdd] No Caching mode page present
sd 7:0:0:0: [sdd] Assuming drive cache: write through
sd 7:0:0:0: [sdd] No Caching mode page present
sd 7:0:0:0: [sdd] Assuming drive cache: write through
 sdd: unknown partition table
sd 7:0:0:0: [sdd] No Caching mode page present
sd 7:0:0:0: [sdd] Assuming drive cache: write through
sd 7:0:0:0: [sdd] Attached SCSI disk
r2d2 ()
Ответ на: комментарий от r2d2

Значит проблема не в питании. Т.е. rsync просто висит в d-state и ничего не пишет?

aidaho ★★★★★ ()
Ответ на: комментарий от r2d2

На внешнем HDD православная etx2 и вот это sdd: unknown partition table наводит на мысли о проверке файловой системы.

slavun ()
Ответ на: комментарий от slavun

> и вот это sdd: unknown partition table наводит на мысли о проверке файловой системы.

Не наводит. Это файловая система на всём диске, и я её всё-таки проверял.

План такой:

1. Попробовать диск на другом компе. 2. Попробовать другой диск. 3. Попробовать другой порт.

Отпишусь.

r2d2 ()
Ответ на: комментарий от aidaho

> Т.е. rsync просто висит в d-state и ничего не пишет?

Именно так.

r2d2 ()
Ответ на: комментарий от r2d2

А если с дефолтным дистрибутивным ядром/ванильным?

aidaho ★★★★★ ()

А не может быть так, что просто заканчивается дисковый кеш и процесс приостанавливается до тех пор пока данные не пофлушатся на диск?

Frakhtan-teh ★★ ()
Ответ на: комментарий от Frakhtan-teh

Я ждал целую ночь :-)

Короче, факты:

1. С другим диском (но у же с внешним питанием) та же проблема.

2. В другом порте USB та же проблема.

3. На другом компе (Дебиан, linux 3.0.0, CONFIG_DEFAULT_IOSCHED=«cfq») проблем нет.

4. Я поменял планировщик для этого внешнего диска (echo cfq > /sys/block/sdd/queue/scheduler) - проблема исчезла.

Эти факты склоняют меня к мысли, что проблема как-то связана с BFQ.

r2d2 ()
Ответ на: комментарий от r2d2

>проблема как-то связана с BFQ

Я тоже так и подумал. ЕМНИП в zen ядрах over9k патчей и простор для факапов большой, поэтому порекомендовал потестить на ванильном.

aidaho ★★★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.