program parted is using a deprecated SCSI ioctl, please convert it to SG_IO
всё бы ничего, да вот только работают флэшкт отвратно .. скорость ОЧЕНЬ маленькая и даше подвисало "копирование" один раз.
Google ответа не дал. Такая "фича" проявилась,видимо, после update'а моего Ubuntu 5.10. Апдейт делал из официальных репозиториев. Сам parted не обновлялся. Но обновлялось,кроме всего прочего, и ядро. Точнее она как было 2.6.12 так и им и осталось, а вот ревизия сменилась (было 2.6.12-10.24 , стало 2.6.12-10.30). Вообщем как мне сделать этот convert SCSI ioctl to SG_IO ?
Ненасилие ещё никому не помогало
Trying is the first step towards failure (c) Homer Simpson
kif0rt, мне вообще интересно, с какого перепугу для флэшки используется parted - цель использования сабжа непонятна
Вот вот ... но против dmesg'а не попрёшь.... Наверное что-то убунтовцы напортачили. Вышли апдейты для ядра новые. Сегодня поставлю - может исправили багу.
Ненасилие ещё никому не помогало
Trying is the first step towards failure (c) Homer Simpson
Llama, parted мог быть случайно вызван хотплагом каким-нибудь... для инициации таблицы разделов драйва, скажем
вывод: либо откатить ядро, либо обновить parted до версии, поддерживающей не-deprecated api
а ну либо все таки докопаться до первопричин вызова этого партеда и поправить их
всё бы ничего, да вот только работают флэшкт отвратно .. скорость ОЧЕНЬ маленькая и даше подвисало "копирование" один раз.
не думаю, что удаление партеда или прочие операции с ним положительно повлияют на работу девайса. имхо дело в ядре и его мостах от deprecated вызовов на поправленные в ревизии. попробовать взять scsi-мост от старого ядра, вставить в новое и подпилить-пересобрать?
не думаю, что удаление партеда или прочие операции с ним положительно повлияют на работу девайса. имхо дело в ядре и его мостах от deprecated вызовов на поправленные в ревизии. попробовать взять scsi-мост от старого ядра, вставить в новое и подпилить-пересобрать?
Ты совершенно прав ! дело в ядре. бактрак parted мне это подсказал :
This seems to originate from the following kernel code in
drivers/scsi/scsi_ioctl.c
/* Check for deprecated ioctls ... all the ioctls which don't
* follow the new unique numbering scheme are deprecated */
switch (cmd) {
case SCSI_IOCTL_SEND_COMMAND:
case SCSI_IOCTL_TEST_UNIT_READY:
case SCSI_IOCTL_BENCHMARK_COMMAND:
case SCSI_IOCTL_SYNC:
case SCSI_IOCTL_START_UNIT:
case SCSI_IOCTL_STOP_UNIT:
printk(KERN_WARNING "program %s is using a deprecated SCSI "
"ioctl, please convert it to SG_IO\n", current->comm);
The non unique SCSI ioctls:
SCSI_IOCTL_SEND_COMMAND
SCSI_IOCTL_TEST_UNIT_READY
SCSI_IOCTL_BENCHMARK_COMMAND
SCSI_IOCTL_SYNC
SCSI_IOCTL_START_UNIT
SCSI_IOCTL_STOP_UNIT
Have been deprecated for a while now. We should make the kernel
complain when a program actually uses one of them, so users have had
adequate warning before they are removed.
Вообщем надо что-то делать с ядром. Не пойму одного - на более старой ревизии ядра всё работало, а но более новой deprecated ...
Ненасилие ещё никому не помогало
Trying is the first step towards failure (c) Homer Simpson
вскрытие показало, что это мой локальный баг и баг parted в частности. Я пользуюсь скриптом hdmount, о котором уже писал на этом форуме. Так вот этот скрипт для определения таблицы разделов использует parted(которая есть везде), если не установлена более подходящая и быстрая disktype. Я про это забыл ... Установил disktype и всё нормально. НО до этого я поэксперементировал : обновился до последнего ядра (2.6.16+патч archck) - проблема осталась. Cобрал последний parted - проблема осталась. Вывод : даже на новых ядрах последний parted почему-то использует obsolete ...
Ненасилие ещё никому не помогало
Trying is the first step towards failure (c) Homer Simpson