Π’ Π·Π²ΡƒΠΊΠΎΠ²ΠΎΠΉ подсистСмС ALSA ΠΏΡ€ΠΎΠ²Π΅Π΄Π΅Π½Π° Ρ€Π°Π±ΠΎΡ‚Π° ΠΏΠΎ избавлСнию ΠΎΡ‚ Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π° slave

Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ Π·Π²ΡƒΠΊΠΎΠ²ΠΎΠΉ подсистСмы ALSA ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΈΠ»ΠΈ для Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Π² Π²Π΅Ρ‚ΠΊΡƒ linux-next, Π½Π° основС ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π±ΡƒΠ΄Π΅Ρ‚ сформирован выпуск ядра 5.9, Π½Π°Π±ΠΎΡ€ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ, ΠΈΠ·Π±Π°Π²Π»ΡΡŽΡ‰ΠΈΠΉ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰ΠΈΠΉ Π½Π° сторонС ядра ΠΊΠΎΠ΄ ΠΎΡ‚ Π½Π΅ΠΏΠΎΠ»ΠΈΡ‚ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½Ρ‹Ρ… Ρ‚Π΅Ρ€ΠΌΠΈΠ½ΠΎΠ². ИзмСнСния ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²Π»Π΅Π½Ρ‹ Π² соотвСтствии с Π½Π΅Π΄Π°Π²Π½ΠΎ принятыми рСкомСндациями ΠΏΠΎ использованию инклюзивной Ρ‚Π΅Ρ€ΠΌΠΈΠ½ΠΎΠ»ΠΎΠ³ΠΈΠΈ Π² ядрС Linux.

ИзмСнСния Π²ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‚ 10 ΠΏΠ°Ρ‚Ρ‡Π΅ΠΉ, ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… 9 связаны с ΠΈΠ·Π±Π°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ ΠΊΠΎΠ΄Π° Π·Π²ΡƒΠΊΠΎΠ²Ρ‹Ρ… Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ΠΎΠ² ac97, bt87x, ctxfi, es1968, hda, intel8x0, nm256, via82xx, usb-audio ΠΎΡ‚ Ρ‚Π΅Ρ€ΠΌΠΈΠ½ΠΎΠ² «whitelist» ΠΈ blacklist. Π£ΠΊΠ°Π·Π°Π½Π½Ρ‹Π΅ Ρ‚Π΅Ρ€ΠΌΠΈΠ½Ρ‹ Π·Π°ΠΌΠ΅Π½Π΅Π½Ρ‹ Π½Π° «allowlist» ΠΈ «denylist». ДСсятый ΠΏΠ°Ρ‚Ρ‡ Π½Π°Ρ†Π΅Π»Π΅Π½ Π½Π° ΠΏΡ€Π΅ΠΊΡ€Π°Ρ‰Π΅Π½ΠΈΠ΅ использования ΡƒΡΡ‚ΠΎΡΠ²ΡˆΠ΅Π³ΠΎΡΡ Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π° «slave» Π² API vmaster.

ΠŸΠ΅Ρ€Π΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΠ΅ касаСтся Π² Ρ‚ΠΎΠΌ числС Π½Π°Π·Π²Π°Π½ΠΈΠΉ структур ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ. Π’Π½Π°Ρ‡Π°Π»Π΅ для Π·Π°ΠΌΠ΅Π½Ρ‹ Π±Ρ‹Π»ΠΎ Π²Ρ‹Π±Ρ€Π°Π½ΠΎ слово
«replica» (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, функция snd_ctl_add_slave() Π±Ρ‹Π»Π° Π·Π°ΠΌΠ΅Π½Π΅Π½Π° Π½Π° snd_ctl_add_replica()), Ρ‡Ρ‚ΠΎ Π²Ρ‹Π·Π²Π°Π»ΠΎ ΠΊΡ€ΠΈΡ‚ΠΈΠΊΡƒ, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ Ρ‚Π΅Ρ€ΠΌΠΈΠ½ replica Π±ΠΎΠ»Π΅Π΅ ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΠΌ ΠΊ Π‘Π£Π‘Π” ΠΈ искаТаСт смысл Π² контСкстС Π·Π²ΡƒΠΊΠΎΠ²ΠΎΠΉ подсистСмы. Π’ ΠΈΡ‚ΠΎΠ³Π΅ для Π·Π°ΠΌΠ΅Π½Ρ‹ Π±Ρ‹Π» Π²Ρ‹Π±Ρ€Π°Π½ Ρ‚Π΅Ρ€ΠΌΠΈΠ½ «follower», Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΆΠ΅ вносит ΠΎΠΏΡ€Π΅Π΄Π΅Π»Ρ‘Π½Π½ΡƒΡŽ Π΄Π²ΡƒΡΠΌΡ‹ΡΠ»Π΅Π½Π½ΠΎΡΡ‚ΡŒ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, вмСсто «list of slave» ΠΈ «link slave» Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ «list of follower» ΠΈ «link follower»). ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ, Ρ‡Ρ‚ΠΎ Ρ‚Π΅Ρ€ΠΌΠΈΠ½ «master» оставлСн, Π² Ρ‚ΠΎΠΌ числС Π² Π½Π°Π·Π²Π°Π½ΠΈΠΈ самого API vmaster, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΎΠ½ рассматриваСтся Π² контСкстС «master volume control».

ΠŸΠ°Ρ‚Ρ‡ΠΈ ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Ρ‹ для Π²Π΅Ρ‚ΠΊΠΈ linux-next Вакаши Иваи (Takashi Iwai), мэйнтСйнСром подсистСмы ALSA, Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰ΠΈΠΌ Π² ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ SUSE. Но ΠΏΠΎΠΊΠ° Π½Π΅ ясно Π±ΡƒΠ΄ΡƒΡ‚ Π»ΠΈ ΠΎΠ½ΠΈ ΠΎΠ΄ΠΎΠ±Ρ€Π΅Π½Ρ‹ для Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Π² состав ядра Линусом Π’ΠΎΡ€Π²Π°Π»ΡŒΠ΄ΡΠΎΠΌ, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ названия Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ Π² API vmaster ΠΏΠ΅Ρ€Π΅ΡΠ΅ΠΊΠ°ΡŽΡ‚ΡΡ с функциями Π² API Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π·Π²ΡƒΠΊΠΎΠ²Ρ‹Ρ… Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ΠΎΠ², Ρ‡Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ привСсти ΠΊ большой ΠΏΡƒΡ‚Π°Π½ΠΈΡ†Π΅ Π² Ρ‚Π΅Ρ€ΠΌΠΈΠ½ΠΎΠ»ΠΎΠ³ΠΈΠΈ. ИзбавлСниС ΠΆΠ΅ API Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ΠΎΠ² ΠΎΡ‚ Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π° slave ΠΏΡ€ΠΈΠ²Π΅Π΄Ρ‘Ρ‚ ΠΊ Π½Π°Ρ€ΡƒΡˆΠ΅Π½ΠΈΡŽ совмСстимости со сторонними Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π°ΠΌΠΈ, Π½Π΅ входящими Π² основной состав ядра, Π° Ρ‚Π°ΠΊΠΆΠ΅ с внСшними ΠΏΠ°Ρ‚Ρ‡Π°ΠΌΠΈ ΠΈ настройками.

Из Π½Π΅ связанных с Ρ‚Π΅Ρ€ΠΌΠΈΠ½ΠΎΠ»ΠΎΠ³ΠΈΠ΅ΠΉ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ, Π½Π°ΠΌΠ΅Ρ‡Π΅Π½Π½Ρ‹Ρ… для Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Π² ядро Linux 5.9, отмСчаСтся рСализация ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ Intel Silent Stream (Ρ€Π΅ΠΆΠΈΠΌ постоянного поддСрТания питания для Π²Π½Π΅ΡˆΠ½ΠΈΡ… HDMI-устройств для ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠΈ ΠΏΡ€ΠΈ Π½Π°Ρ‡Π°Π»Π΅ воспроизвСдСния) ΠΈ Π½ΠΎΠ²ΠΎΠ΅ устройство для управлСния подсвСткой ΠΊΠ½ΠΎΠΏΠΎΠΊ Π°ΠΊΡ‚ΠΈΠ²Π°Ρ†ΠΈΠΈ ΠΌΠΈΠΊΡ€ΠΎΡ„ΠΎΠ½Π° ΠΈ ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Π·Π²ΡƒΠΊΠ°.
Π’Π°ΠΊΠΆΠ΅ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Π½ΠΎΠ²ΠΎΠ³ΠΎ оборудования, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ Loongson 7A1000.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ: opennet.ru

Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ