Отстёгиваются USB

Aivar
Indy
раз в сутки отстёгиваются все порты 3,0
Пробуйте перевести их в режим 2.0 и понаблюдайте.

Такое только в Арче?
А как их перевести в 2.0? Я в том смысле - средствами биоса, или программно?

На машине только арч и стоит, всё остальное в виртуале
Indy
А как их перевести в 2.0?
Ищите режим legacy.
In Tux We Trust
Indy
На машине постоянно запущена на виртуалке доменная винда (virtualbox, win10x64)
Имхо проблема в WM, кроме того в винде такое наблюдается. В Linux с такими проблемами не знаком.
В BIOS раньше была такая фича, сейчас вряд ли.
Уже писал, чтобы не перегружаться, попробуй выполнить программное переподключение USB порта, есть вероятность что поможет.
Ошибки не исчезают с опытом - они просто умнеют
Indy
А как их перевести в 2.0? Я в том смысле - средствами биоса, или программно?
Пролог. Есть у меня старый ноут, где любые попытки что-то скопировать через USB по истечении нескольких секунд заканчивались внезапным отключением порта, разве что только если вынести ноут на мороз... Очевидно, сильное охлаждение компенсировало перегрев. Сначала прикупил активный USB-хаб, мол, может по питанию перегрузка, ан нет. В простое порядок, но даже фильм с более-менее сносным битрейтом посмотреть с флешки не удавалось. Правда udev сразу подхватывал устройство... Вывод: порт перегревался от высокой (для старого железа) скорости обмена.
Как я только не изгалялся програмно... Вот поднял свой талмуд:
$ rsync --progress --bwlimit=1m input output
$ dd if=input | pv -L 1m | dd of=output
$ pv -L 1m input > output
$ pv -qL1m video.mkv | mplayer -
То же средствами cgroups:
# systemctl start cgmanager
# cgm create blkio limit
# chown 1000:100 /sys/fs/cgroup/blkio/limit/*

$ lsblk -dn /dev/sda
sda    8:0    0 298,1G  0 disk

$ pidof mc
16384

$ cgm movepid blkio limit 16384
$ cgm setvalue blkio limit blkio.throttle.read_bps_device 8:0 1073741824
$ cgm setvalue blkio limit blkio.throttle.write_bps_device 8:0 1073741824
Вроде бы полегче стало. Для последнего варианта и скриптик накатил с синтаксисом типа:
iolimit [-l лимит_скорости] [-d устройство] mc
Но, во-первых, это, разумеется, не работало с FUSE, а, во-вторых, программный троттлинг выполняется на уровне файловой системы, т.е. минимальный объем данных (блок) все равно читается/записывается с максимальной скоростью, и задержка там чисто "междублочная". Бок старого железа все равно вылазил. что особенно ущербно было при подключении внешнего харда.

Эпилог. Ларчик просто открывался. Аппаратное решение: в BIOS переключил рубильник типа High Speed USB 2.0 - Disable, что ограничило скорость ввода/вывода USB где-то до 0.9 MBps и сразу сняло вопрос. Зато я расширил свои познания о троттлинге. ) В AUR даже пакет одноименный есть, но устанавливать не пробовал.

Такая история, спасибо извините за внимание. )
Indy
логи курить пытался - но ничего не выкурил
Логи, конечно, вытащить бы не плохо, хотя бы ради интереса. Только вот непонятно, что вытащится, в смысле будет ли в логах что то полезное?
Подключением/отключением устройств USB заведует udev, а потому логично увеличить логирование udev до уровня debug (по дефолту стоит info).
Ошибки не исчезают с опытом - они просто умнеют
vasek
Indy
На машине постоянно запущена на виртуалке доменная винда (virtualbox, win10x64)
Имхо проблема в WM, кроме того в винде такое наблюдается. В Linux с такими проблемами не знаком.
В BIOS раньше была такая фича, сейчас вряд ли.
Уже писал, чтобы не перегружаться, попробуй выполнить программное переподключение USB порта, есть вероятность что поможет.
Таки так и поступил в конечном итоге
2 раза в день запускаю резет USB портов - пока тьфу-тьфу.
делаю что:
for i in /sys/bus/pci/drivers/[uoex]hci_hcd/*:*; do
  [ -e "$i" ] || continue
  echo "${i##*/}" > "${i%/*}/unbind"
  echo "${i##*/}" > "${i%/*}/bind"
done

Нарыл тут
Наверное автоматизирую этот процесс, чтоб запускало в 6 утра и в обед и остановлюсь на этом. Хотя вооще то странно всё это.
Indy
Хотя вооще то странно всё это.
Можно попробовать выяснить источник проблемы - начать можно с самого простого, как писал выше
увеличить логирование udev до уровня debug (по дефолту стоит info)
для чего внести изменения в /etc/udev/udev.conf, не забыв убрать #
... и нужно будет перегрузиться, а искать что то типа такого - journalctl -b | grep -i udev | grep -i USB ... хотя может и другое, не соображу на вскидку.
Не факт, что поможет, но если есть желание, то можешь попробовать.

EDIT 1 - вспомнил, на BBS встречался один топик, связанный с проблемой USB 3.0, сейчас нашел, но в подробности не вникал, у меня с этим проблем нет, а потому и в подробности не лез.
Ошибки не исчезают с опытом - они просто умнеют
 
Зарегистрироваться или войдите чтобы оставить сообщение.