Re: Jak zhasnout světlo

Pavel Just Pavel.Just na simac.cz
Pondělí Srpen 27 16:48:35 CEST 2018


Pavel Kankovsky píše v So 25. 08. 2018 v 10:58 +0200:
> On Fri, 24 Aug 2018, Pavel Just wrote:
> 
> > > > Lsof také tvrdí, že s modulem tcm_qla2xxx je spojen pouze
> > > > proces 
> > > > [tcm_qla2xxx_fre].
> > > 
> > > Lsof?
> > 
> > Ano, použil jsem lsof, protože lsmod hlásil jedno použití, ale ne
> > kernel 
> > modulem.
> 
> Já jsem možná poněkud zpozdilý, že to nevím, ale jak se lsof-em
> zjišťují 
> závislosti mezi moduly?
Spíš je chyba u mně, ale pokud mám ve výpisu lsmod něco typu
tcm_qla2xxx            40960  1
qla2xxx               856064  1 tcm_qla2xxx
a chci-li zjistit, proč je tcm_qla2xxx použité, hledám pomoc u lsof.
O vztazích mezi moduly samozřejmě neřekne nic.
> 
> > > A propos: co má ten tcm_qla2xxx_fre v /proc/PID/stack?
> > 
> > Výpis je z 4.18.5
> > [<0>] rescuer_thread+0x2f7/0x340
> > [<0>] kthread+0xf8/0x130
> > [<0>] ret_from_fork+0x35/0x40
> > [<0>] 0xffffffffffffffff
> 
> Takže je to dle předpokladu "uklízecí" vlákno té pracovní fronty,
> které 
> existuje zcela mimo ten modul.
> 
> > Když načtu jen qla2xxx, tak ho lze odstranit. Pokud načtu
> > tcm_qla2xxx a 
> > nic dalšího neudělám, lze odstranit,
> 
> To je dobře.
> 
> > ale samotný insmod neznamená, že protistrana detekuje světlo. To
> > se 
> > stane až po spuštění /etc/init.d/rtslib-fb-targetctl případně
> > spuštěním 
> > dané service via systemd.
> 
> To znamená, že odstranění tcm_qla2xxx zablokuje až nějaká operace,
> ke 
> které dojde v targetctl.
> 
> Osobně moc nevěřím tom, že to dělá tcm_qla2xxx_fre (to vlákno by se 
> ostatně melo spustit ihned při načtení modulu -- je to pravda?).
> Možná by se dalo načíst ty moduly, zapnout tracepoint na 
> module_get/module_put, spustit targetctl a podívat se na výsledek.
> A pak to zkusit vyčistit a zase se podívat.
> 
> > Abych byl zcela přesný. Zkoušel jsem to pouze na řadičích v módu 
> > initiator, nikoliv target. V režimu initiator jsem rmmod-em získal 
> > No_Light/Linkdown.
> 
> To je zajímavé, já jsem udělal to samé a po rmmod link rozhodně
> nespadnul. 
> (ale jak jsem psal, byly to úplně jiné verze sw a hw).
> 
> > Z toho mi vyplývá, že bych měl být schopen zhasnout světlo nějakým
> > příkazem, ale ten se mi zatím vygooglit nepodařilo :-(
> 
> Z toho, co jsem psal, Vám spíš mělo vyplynout, že si myslím, že to
> nejde.
> 
> Dle mého soudu link na FC ovládá firmware HBA a je otázka, zda
> navenek 
> nabízí nějaké rozhraní pro jeho explicitní ovládání. Pokud ano, tak
> by se 
> to nejspíš objevilo aspoň v příslušných proprietárních utilitách, tj.
> pro 
> QLogic jejich scli, ale v dokumentaci k scli nic takového nevidím
> (naopak 
> Emulexu něco jako zakázání/povolení portu nalézt lze).
> 
> Nahození linku se provede načtením a inicializací firmwaru, což se
> provede 
> při načtení linuxového ovladače... ale obvykle to už předtím udělá
> BIOS po 
> zapnutí stroje (např. kvůli tomu, aby bylo možno přes HBA nabootovat)
> a
> ovladač ho pak jen reinicializuje, což se právě asi projeví tím
> krátkým 
> spadnutím a znovu nahozením, o kterém jsem psal.
> 
> Je možné, že na Vašem stroji to funguje nějak jinak.
Tak jsem si nakonec dal Emulex a Qlogic kartu do jednoho stroje.
A zrovna říkám, že jsem udělal chybu. Chybu předpokladu.

Karta Qlogic se "rozsvítí" ve chvíli zavedení ovladače, konkrétně
ve chvíli, kdy se zavede firmware. V mém případě ql2300_fw.bin.
Pak ji už skutečně nelze vypnout. Rmmod nepomůže stejně jako scli.

Karta Emulex se chová jinak. Rozsvítí se ve chvíli zavedení
ovladače a ve chvíli jeho ukončení (rmmod) karta zhasne. Až podle
vašeho textu jsem si uvědomil, že jsem zobecnil chování karty Emulex
i na Qlogic, což se ukázalo jako špatné.

Každopádně děkuji za nakopnutí.

Pavel

> 
> _______________________________________________
> Linux mailing list
> Linux na linux.cz
> http://www.linux.cz/mailman/listinfo/linux


Další informace o konferenci Linux