Bug 4534

Summary: ide-scsi misconfiguration
Product: ALT Linux 2.4 Reporter: Michael Shigorin <mike>
Component: drakxtoolsAssignee: Sergey Bolshakov <sbolshakov>
Status: CLOSED FIXED QA Contact: Andrey Cherepanov <cas>
Severity: major    
Priority: P2 CC: pilot, vsu
Version: 2.4   
Hardware: all   
OS: Linux   
URL: http://lists.altlinux.ru/pipermail/sisyphus/2004-March/037748.html
Bug Depends on:    
Bug Blocks: 3459    

Description Michael Shigorin 2004-06-28 13:42:18 MSD
Имеется:

hda = HDD
hdb = ZIP
hdc = CD-RW
hdd = CD-ROM

Получаем в /etc/modules.conf:

options ide-scsi units=/dev/hdc
probeall scsi_hostadapter ide-scsi

В свете того, что "units" с какого-то бодуна заменили "ignore" (см. url), это
приводит к тому, что работает только /dev/cdrom (который указывает на ide-scsi);
/dev/zip и /dev/cdrom2 не работают (указывают на ide, но захвачены ide-scsi).

Объезжать указанием ignore для ide-cd, видимо, не стоит -- придется отдельно
обрабатывать минимум ZIP (ide-floppy) и прочие ide-tape.  В общем, опцию для
нормального решения из ядра выломали, придется изгаляться...

(на самом деле может иметь смысл тогда сразу обернуть проверкой на ядро 2.4)
Steps to Reproduce:
1. get a system with CD-RW and other ATAPI device
2. install ALM2.4 beta (20040622)
3. try to access /mnt/cdrom2/auto/ (or another appropriate mount point)
4. cdrecord -scanbus
5. grep ide-scsi /etc/modules.conf
Actual Results:  
scsibus0:
        0,0,0     0) 'IOMEGA  ' 'ZIP 100         ' '14.A' Removable Disk
        0,1,0     1) '        ' '24X10X40 CD-RW  ' '2.02' Removable CD-ROM
        0,2,0     2) 'TEAC    ' 'CD-532E-B       ' '1.0A' Removable CD-ROM

[...]

options ide-scsi units=/dev/hdc
probeall scsi_hostadapter ide-scsi


Expected Results:  
        0,0,0     0) '        ' '24X10X40 CD-RW  ' '2.02' Removable CD-ROM

[...]

probeall scsi_hostadapter ide-scsi
options ide-scsi ignore="hdb hdd"
Comment 1 Michael Shigorin 2004-06-28 19:57:36 MSD
Получается так:

- CD/DVD*RW может жить на ide-cd ("dev=ATAPI:/dev/hdc") или ide-scsi ("dev=0,0")
- CD/DVD-ROM -- тоже
- ZIP -- на ide-floppy (/dev/hdv4) или ide-scsi (/dev/sda4)
- есть еще ide-tape

В чем проблемы с разными вариантами?

- RW на ATAPI под linux-2.4 => отсутствие DMA, что плохо (тормоза)
- ROM или ZIP на IDE-SCSI -- съезжает типичный "dev=0,0" писалки => ухудшается
переносимость опыта, плюс надо дописывать в инсталере вариации ATAPI/SCSI

Варианты решения:

- дотянуть "левый linux-2.4.19-rc3-ide-scsi.patch" до неконфликтности с ignore=
- аккуратно обтыкать ignore _другие_ модули и грузить их _перед_ ide-scsi

С первым -- неясность поддерживаемости патча к ide-scsi (при том, что в принципе
там нужен именно whitelist, а не blackilst), со вторым -- резкое увеличение
количества вариантов (т.е. проблем) или жесткости порядка подгрузки модулей.

В указанной конфигурации (неплохой тестодром :) мог бы, наверное, сработать
такой второй вариант:

options ide-cd ignore=hdc
options ide-scsi ignore=hdb
above ide-scsi ide-cd
above ide-cd ide-floppy
Comment 2 Sergey Bolshakov 2004-06-29 16:02:42 MSD
по результатам прений предлагаются два варианта:
- исключить сущность ide-scsi как obsolete
- ограничиться выписыванием
  options ide-cd ignore=<cdrw dev>

мнения ?
Comment 3 Michael Shigorin 2004-06-29 16:30:36 MSD
Второй.
Comment 4 Sergey Bolshakov 2004-06-29 16:31:34 MSD
fixed in cvs
Comment 5 Sergey Bolshakov 2004-07-07 14:30:04 MSD
*** Bug 4599 has been marked as a duplicate of this bug. ***
Comment 6 Sergey Bolshakov 2004-07-07 14:31:52 MSD
options ide-cd ignore=<cdrw dev>
оказалось недостаточно
Comment 7 Sergey Bolshakov 2004-07-07 14:34:07 MSD
разбавлено
options ide-scsi ignore=<plain cds>
Comment 8 Michael Shigorin 2004-07-08 11:17:43 MSD
проблема осталась :-(

--- /etc/modules.conf
# Local configuration goes here.
# To inspect package defined part, see also /etc/modutils.d/

options ide-scsi ignore=hdc,hdc,hdd
alias eth0 nvnet
above snd-emu10k1 snd-pcm-oss
alias sound-slot-0 i810_audio
pre-install pcmcia_core CARDMGR_OPTS=-f /etc/rc.d/init.d/pcmcia start
above snd-pcm-oss snd-mixer-oss
probeall scsi_hostadapter ide-scsi
options ide-cd ignore=
alias usb-interface usb-ohci
alias eth1 8139too
alias usb-interface1 ehci-hcd

--- хвост /etc/fstab
/dev/cdrom              /mnt/cdrom              subfs  
fs=cdfss,kudzu,noexec,nodev,nosuid,ro,iocharset=koi8-r 0 0
/dev/cdrom1             /mnt/cdrom1             subfs  
fs=cdfss,kudzu,noexec,nodev,nosuid,ro,iocharset=koi8-r 0 0
/dev/hdb4               /mnt/zip                auto   
noauto,user,kudzu,sync,noexec,nodev,nosuid,iocharset=koi8-r 0 0
/dev/fd0                /mnt/floppy             subfs  
fs=floppyfss,kudzu,sync,noexec,nodev,nosuid,iocharset=koi8-r 0 0

--- /dev/cdrom*
lrwxrwxrwx  1 root root 8 Jul  8 09:47 /dev/cdrom -> /dev/hdc
lrwxrwxrwx  1 root root 8 Jul  8 09:47 /dev/cdrom1 -> /dev/hdd
Comment 9 Sergey Bolshakov 2004-07-08 12:37:56 MSD
ох, как же его скрючило.
симлинки kudzu ставит -- часть баги туда :)
Comment 10 Anton Farygin 2004-07-09 11:43:23 MSD
А разве симлинки стоят не правильно ?

Что такое /dev/hdd и что такое /dev/hdc ?
Comment 11 Michael Shigorin 2004-07-09 11:51:43 MSD
(In reply to comment #10)
> А разве симлинки стоят не правильно ?

Неправильно.

> Что такое /dev/hdd и что такое /dev/hdc ?

См. в самом начале -- hdd суть cdrom, а hdc (cdrw) должен был быть завернут в
ide-scsi и симлинк должен был быть на /dev/scd0 или /dev/sr0, где там оно.

Есть подозрение, что kudzu там сделал вследствие ровно того, что ide-scsi на
/dev/hdc не повесился вследствие захвата его ide-cd.

В общем, или строго вырисованные игноры, или не совсем строго, но в комбинации с
четким порядком загрузки модулей.  Кажется, надежнее первый вариант -- обтыкать
их игнорами... (ну или уболтать vsu :-)
Comment 12 Michael Shigorin 2004-07-16 11:56:05 MSD
Картинка сдвинулась, но не в ту сторону :(

--- /etc/modules.conf
options ide-scsi ignore=hdc,hdc,hdd
options ide-cd ignore=
---

при этом попытка загрузки scsi_hostadapter приводит к:

/lib/modules/2.4.26-std-up-alt5/kernel/drivers/scsi/ide-scsi.o: too many values
for ignore (max 1)

_возможно_, вследствие этого kudzu отлавливает уже /dev/hdc как результат
загрузки ide-cd, которому так и не сказано игнорировать кого надо; в любом
случае и kudzu, и hotplug пытаются оперировать /dev/sr*, которых в нашем dev
сейчас попросту нет (баги ща развешаю).
Comment 13 Sergey Vlasov 2004-07-16 14:31:26 MSD
Должно быть

options ide-scsi ignore="hdc hdd"

На самом деле разделитель может быть любой, кроме запятой - проверка делается
просто через поиск подстроки strstr(ignore, drive->name).
Comment 14 Sergey Bolshakov 2004-07-20 16:27:43 MSD
fixed again

Comment 15 Michael Shigorin 2004-08-05 11:15:01 MSD
Ура, с модулями все в порядке! :-)

Правда, с fstab не все хорошо -- но это будет отдельная бага.
Comment 16 Michael Shigorin 2008-02-15 18:43:03 MSK
archiving