LINUX.ORG.RU

Как найти, кто использует подсистему (модуль) ядра?

 , , , ,


0

1

Привет всем!

На телефоне (Asus Zenfone 2) в топе постоянно висит процесс "[hwrng]" и грузит одно ядро на 100%. Прошивка LineageOS 16. Ядро: Linux 3.10.108-Minimal #1 SMP PREEMPT Sun Apr 14 10:24:02 UTC 2019 aarch64. Поискал на профильных форумах, не нашёл ничего.

Я так понимаю, это какая-то подсистема (модуль?) генератора случайных чисел. Хотя, скорее всего, это не модуль, т.к.:

# lsmod                                                                     
lsmod: No file /proc/modules: No such file or directory
Соответствующего файла устройства не обнаружено:
# ls -l /dev/hwrng
ls: /dev/hwrng: No such file or directory
Как узнать из-за чего hwrng потребялет так много ресурсов?
Какой-то процесс постоянно генерирует случайные числа? Как узнать, какой?
Вопрос задаю сюда, а не в Mobile, т.к. вопрос, как мне кажется, не сильно привязан к Android, а скорее про Linux вообще.

★★★★★

Может с кастомом не повезло и его делал криворукий васян? Такой очевидный вариант не рассматривал?

a1batross ★★★★★
()
Ответ на: комментарий от a1batross

Может с кастомом не повезло и его делал криворукий васян?

Вполне вероятно. Но вопрос не о том, хорошая ли прошивка, а о том, как выяснить что происходит.

ls-h ★★★★★
() автор топика
Последнее исправление: ls-h (всего исправлений: 1)
Ответ на: комментарий от ls-h

Ну как... берёшь сорцы ядра, пытаешься собрать, установить. Проблема присутствует? Смотришь в конфиг ядра, смотришь какой драйвер hwrng включён, пытаешься что-нибудь с ним сделать самостоятельно, до тех пор, пока проблема не уйдет и драйвер останется функционирующим.

a1batross ★★★★★
()
Ответ на: комментарий от a1batross

пытаешься что-нибудь с ним сделать самостоятельно

Я для начала хотел бы узнать, использует ли какой процесс генерацию случайных чисел. Ну не просто так же драйвер их молотит. Или ещё что там делает... Нагуглил, что для этой штуки есть файл устройства /dev/hwrng. Ноу меня такой отсутствует.

ls-h ★★★★★
() автор топика
Ответ на: комментарий от ls-h

Если есть возможность, посмотри, кто использует /dev/random. Вроде как драйверы hwrng могут прозрачно инжектировать «энтропию» в /dev/random.

i-rinat ★★★★★
()
Ответ на: комментарий от i-rinat

Если есть возможность, посмотри, кто использует /dev/random

:/ # lsof|grep rand
keystore    408   keystore    3r      CHR                1,9       0t0       7256 /dev/urandom
earchbox:search  2548     u0_a29   70r      CHR                1,9       0t0       7256 /dev/urandom
earchbox:search  2548     u0_a29  127r      CHR                1,9       0t0       7256 /dev/urandom
android.vending  2678     u0_a11   53r      CHR                1,9       0t0       7256 /dev/urandom
android.vending  2678     u0_a11   92r      CHR                1,9       0t0       7256 /dev/urandom
android.vending  2678     u0_a11  112r      CHR                1,9       0t0       7256 /dev/urandom
droid.bluetooth  3623  bluetooth   95r      CHR                1,9       0t0       7256 /dev/urandom
cardsmobile.mw3  4412    u0_a102   46r      CHR                1,9       0t0       7256 /dev/urandom
dboxed_process0 17263      u0_i0   38r      CHR                1,9       0t0       7256 /dev/urandom
.android.chrome 17321     u0_a97   40r      CHR                1,9       0t0       7256 /dev/urandom
.android.chrome 17321     u0_a97  131r      CHR                1,9       0t0       7256 /dev/urandom
.android.chrome 17321     u0_a97  170r      CHR                1,9       0t0       7256 /dev/urandom
dboxed_process0 17377      u0_i1   38r      CHR                1,9       0t0       7256 /dev/urandom
ileged_process0 17394     u0_a97   38r      CHR                1,9       0t0       7256 /dev/urandom
t_app_installer 20075     u0_a11   37r      CHR                1,9       0t0       7256 /dev/urandom


Посмотрел. Грохнул все эти процессы. Ничего не изменилось. Некоторые (t_app_installer, droid.bluetooth, keystore), правда перезапускаются очень бодро. Но никаких просадок в нагрузке я не заметил.
Всё так же:

  PID USER         PR  NI VIRT  RES  SHR S[%CPU] %MEM     TIME+ ARGS                                     
  124 root         20   0    0    0    0 R 98.3   0.0   3:14.66 [hwrng]
 1056 system       18  -2 4.3G 242M 190M S  5.3  12.8   0:40.47 system_server
 1055 root         20   0  11M 2.6M 1.6M R  2.6   0.1   0:05.40 top
  287 root         20   0    0    0    0 S  0.6   0.0   0:02.15 [kworker/u8:5]
  166 root         -2   0    0    0    0 S  0.3   0.0   0:02.57 [mmcqd/0]
  160 root         RT   0    0    0    0 S  0.3   0.0   0:00.28 [cfinteractive]

ls-h ★★★★★
() автор топика
Ответ на: комментарий от ls-h

Там процессы едят /dev/urandom, а значит они не должны влиять ни на что кроме себя. Дальше нужно смотреть в исходник того, что работает под названием [hwrng].

i-rinat ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.