[mdk-re] Junior: gcc not work.

Sergey Vlasov =?iso-8859-1?q?vsu_=CE=C1_mivlgu=2Emurom=2Eru?=
Вт Июл 17 19:58:11 MSD 2001


On Tue, 17 Jul 2001 21:18:49 +0600
Igor Solovyov <is13 на inbox.ru> wrote:

> Hi!
> On Tue, 17 Jul 2001 18:39:55 +0400
> Sergey Vlasov <vsu на mivlgu.murom.ru> wrote:
> 
> > Такой вариант нужен в том случае, когда есть и CD-ROM, и CD-R/RW. В
этом
> 
> Да. У меня так и есть.
> 
> > случае должен сначала загружаться ide-cd (с опцией ignore=hd? в
> > /etc/modules.conf, чтобы он не занял CD-R), потом ide-scsi (для
CD-R), и
> > только потом sr_mod (для работы CD-R как CD-ROM). Если ide-scsi
> > загрузить раньше ide-cd, он заберет себе все незанятые устройства, в
том
> > числе и CD-ROM, и после загрузки sr_mod получится /dev/scd0 и
/dev/scd1,
> 
> Не совсем так. Вот глядите:
> 
> $ ls -l /dev/cdrom
> lrwxrwxrwx    1 root     root            3 Июл 18  2001 /dev/cdrom ->
hdc
> $ ls -l /dev/cdrom2
> lrwxrwxrwx    1 root     root            4 Июл 18  2001 /dev/cdrom2 ->
scd0
> 
> Т.е. первый (cdrom) все же кажет на hdc, а второй (резак) на scd0.

Ну вот прямо сейчас на машине имеем: 

hda - QUANTUM FIREBALLlct15 15
hdc - Vendor: MITSUMI  Model: CR-4804TE        Rev: 2.8C  (CD-RW)
hdd - Vendor:          Model: ATAPI CDROM.48X  Rev: 130Y  (CD-ROM)
(ну вот такой безымянный CD-ROM, у него к тому же и DMA не работает)

Ядро 2.4.5-alt5-up.

Начинаем с выгрузки всего лишнего, получаем:
# lsmod
Module                  Size  Used by
i810                   61904   1 
parport_pc             23440   1  (autoclean)
lp                      5872   1  (autoclean)
parport                23136   1  (autoclean) [parport_pc lp]
winbond-840            11760   1  (autoclean)
ipx                    14112   1  (autoclean)
ipchains               27712   0  (unused)
nls_koi8-r              3856   2  (autoclean)
nls_cp866               3856   2  (autoclean)
vfat                    8496   2  (autoclean)
fat                    28256   0  (autoclean) [vfat]
agpgart                21216   7 

Т.е. никаких модулей, имеющих отношение к CD, нет. В /etc/modules.conf
имеется две строки по этому поводу:

alias scsi_hostadapter ide-scsi
options ide-cd ignore=hdc

Делаем modprobe sr_mod. В результате загружается дополнительно:
Module                  Size  Used by
ide-scsi                7312   0  (autoclean)
sr_mod                 12672   0  (unused)
cdrom                  27168   0  [sr_mod]

Сообщения ядра после этого:
scsi0 : SCSI host adapter emulation for IDE ATAPI devices
  Vendor: MITSUMI   Model: CR-4804TE         Rev: 2.8C
  Type:   CD-ROM                             ANSI SCSI revision: 02
  Vendor:           Model: ATAPI CDROM.48X   Rev: 130Y
  Type:   CD-ROM                             ANSI SCSI revision: 02
Attached scsi CD-ROM sr0 at scsi0, channel 0, id 0, lun 0
Attached scsi CD-ROM sr1 at scsi0, channel 0, id 1, lun 0
sr0: scsi3-mmc drive: 24x/24x writer cd/rw xa/form2 cdda tray
Uniform CD-ROM driver Revision: 3.12
sr1: scsi3-mmc drive: 0x/24x cd/rw xa/form2 cdda tray

Убираем ide-scsi, sr_mod, cdrom - получаем опять тот же список модулей.

Теперь делаем сначала modprobe ide-cd, потом modprobe sr_mod. Получаем:
Module                  Size  Used by
ide-scsi                7312   0  (autoclean)
sr_mod                 12672   0  (unused)
ide-cd                 25952   0 
cdrom                  27168   0  [sr_mod ide-cd]

Сообщения ядра по этому поводу:
ide-cd: ignoring drive hdc
hdd: ATAPI 24X CD-ROM drive, 128kB Cache, UDMA(33)
Uniform CD-ROM driver Revision: 3.12
scsi0 : SCSI host adapter emulation for IDE ATAPI devices
  Vendor: MITSUMI   Model: CR-4804TE         Rev: 2.8C
  Type:   CD-ROM                             ANSI SCSI revision: 02
Attached scsi CD-ROM sr0 at scsi0, channel 0, id 0, lun 0
sr0: scsi3-mmc drive: 24x/24x writer cd/rw xa/form2 cdda tray

Результат налицо - ide-scsi захватывает все свободные устройства,
поэтому ide-cd надо загружать раньше него.

Кстати, еще замечание: hdparm /dev/hd? требует, чтобы был загружен
драйвер ide-* для указанного устройства, причем для CD-ROM/R/RW
автоматически загружается ide-cd. При использовании
/etc/sysconfig/harddisk/hd? это происходит раньше обработки
/etc/modules. А вот для устройства, указанного в options ide-cd
ignore=hd?, параметры установить нельзя:

# hdparm -d1 /dev/hdc
/dev/hdc: No such device or address
# dmesg
...
ide-cd: ignoring drive hdc
hdd: ATAPI 24X CD-ROM drive, 128kB Cache, UDMA(33)
Uniform CD-ROM driver Revision: 3.12
hdc: driver not present

Точнее, параметры установить можно, но только после загрузки ide-scsi. А
при удалении и перезагрузке ide-cd опять устанавливается using_dma=1.




Подробная информация о списке рассылки community