From: "Alexey V. Vissarionov" <gremlin@altlinux.org>
To: ALT Linux Team development discussions <devel@lists.altlinux.org>
Subject: Re: [devel] можно ли запретить загружать модуль ядра для конкретного девайса
Date: Wed, 7 Dec 2022 02:24:21 +0300
Message-ID: <20221206232421.GA12614@altlinux.org> (raw)
In-Reply-To: <0119cda6-eadd-d7fc-3964-1e96a06ad8f1@basealt.ru>
On 2022-12-06 19:36:19 +0700, Ilya Kurdyukov wrote:
> Замучился с этим, нигде ничего не находит. Находил тех кто
> спрашивал то же самое, и им никакого решения не предложили.
Потому что решение скорее всего и не требуется.
> Проблема такая, есть конкретный девайс:
> ATTRS{idVendor}=="0e8d", ATTRS{idProduct}=="0003"
Мудотыковский preloader, что ли? Такой?
[694454.527071] usb 5-1.4: Product: MT65xx Preloader
[694454.527074] usb 5-1.4: Manufacturer: MediaTek
[694454.590374] cdc_acm 5-1.4:1.1: ttyACM0: USB ACM device
> Для него подгружаются модули "option" и "cdc_acm", в которые это
> попало только потому что кто-то решил сделать поделку на чипе
> MediaTek.
Нет - потому, что это действительно CDC-устройство, используемое
для общения с этими SoC.
> Взяв голый чип и не добавив никаких модулей с прошивкой на плату.
> И решил загружать прошивку прямо при подключении.
Если из устройства с многомиллионными тиражами выкинуть копеечную
SPI-флешку - получится многомиллионная же экономия.
А программы паять не надо.
> А потом кто-то добавил в Linux драйвер к этому.
Не к этому, а вообще для всех устройств CDC (communication device
class) ACM (abstract control model).
И произошло это более 20 лет назад - во времена, когда MediaTek
только-только отделился от UMC.
> Но ID этого чипа общий, это ID загрузочного ROM. Используется для
> всех девайсов на таком чипе. Соответственно, это не обязательно
> GSM модем.
Разумеется. Более того, модемам полагается быть /dev/ttyUSBx, а не
/dev/ttyACMx - да и то лишь древним, которые не умеют ни CDCETHER,
ни RNDIS.
> Мне надо запретить использовать эти модули для этого ID.
Зачем?
> Не трогая всего остального, для чего эти модули могут
> подгружаться.
И для чего же? А главное - что может помешать уже загруженному
(или, в норме, вкомпилированному в ядро, чтобы дать пользователю
возможность увидеть терминал максимально рано) модулю подхватить
очередное подключенное CDC-устройство?
> И пока едниственный способ что я нашел - это кинуть "option" и
> "cdc_acm" в /etc/modprobe.d/blacklist.conf.
Если они не нужны - ну, в принципе, вполне себе решение. Пусть
корявое, зато рабочее.
> Очень плохо, что в Линукс каждый может добавить свой драйвер
> для общего устройства, что может использоваться шире, и
> испортить жизнь всем остальным кто использует устройства
> с тем же ID, и никаких решений этому я не нашел. Кроме полного
> отключения пары модулей для всех устройств.
А в чем, собственно, сложность с появлением еще одного устройства?
Его что, кто-то в усерспейсе автоматически начинает использовать?
Если да - то проблема не в ядре и не в егойных модулях, а именно в
усерспейсе.
--
Alexey V. Vissarionov
gremlin ПРИ altlinux ТЧК org; +vii-cmiii-ccxxix-lxxix-xlii
GPG: 0D92F19E1C0DC36E27F61A29CD17E2B43D879005 @ hkp://keys.gnupg.net
next prev parent reply other threads:[~2022-12-06 23:24 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-12-05 19:02 ` [devel] way to find package, which contains specific library Andrey Savchenko
2022-12-06 9:35 ` Sergey V Turchin
2022-12-06 10:10 ` Дмитрий Терехин
2022-12-06 10:50 ` Sergey V Turchin
2022-12-06 12:36 ` [devel] можно ли запретить загружать модуль ядра для конкретного девайса Ilya Kurdyukov
2022-12-06 23:24 ` Alexey V. Vissarionov [this message]
2022-12-07 2:49 ` Ilya Kurdyukov
2022-12-07 6:24 ` Ilya Kurdyukov
2022-12-07 7:04 ` Andrey Savchenko
2022-12-07 8:49 ` Sergey Bolshakov
2022-12-07 9:07 ` Ilya Kurdyukov
2022-12-07 9:17 ` Sergey Bolshakov
2022-12-07 9:45 ` Ilya Kurdyukov
2022-12-07 9:55 ` Aleksey Novodvorsky
2022-12-07 10:30 ` Sergey Bolshakov
2022-12-07 10:35 ` Ilya Kurdyukov
2022-12-07 15:04 ` Alexey V. Vissarionov
2022-12-07 10:49 ` Anton Farygin
2022-12-06 5:48 ` [devel] way to find package, which contains specific library Anton Farygin
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20221206232421.GA12614@altlinux.org \
--to=gremlin@altlinux.org \
--cc=devel@lists.altlinux.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
ALT Linux Team development discussions
This inbox may be cloned and mirrored by anyone:
git clone --mirror http://lore.altlinux.org/devel/0 devel/git/0.git
# If you have public-inbox 1.1+ installed, you may
# initialize and index your mirror using the following commands:
public-inbox-init -V2 devel devel/ http://lore.altlinux.org/devel \
devel@altlinux.org devel@altlinux.ru devel@lists.altlinux.org devel@lists.altlinux.ru devel@linux.iplabs.ru mandrake-russian@linuxteam.iplabs.ru sisyphus@linuxteam.iplabs.ru
public-inbox-index devel
Example config snippet for mirrors.
Newsgroup available over NNTP:
nntp://lore.altlinux.org/org.altlinux.lists.devel
AGPL code for this site: git clone https://public-inbox.org/public-inbox.git