Как я могу выбрать хороший магический / типовой номер для ioctl? - PullRequest
5 голосов
/ 29 марта 2012

Мне было интересно, существует ли макрос, который мог бы присвоить моему устройству случайный «магический» номер, который в данный момент не использовался linux.Это очевидно в интересах переносимости.Также, если это невозможно, я хотел бы знать, где я могу узнать, какие магические числа не используются.Я полагаю, что текстовый файл, к которому я обращаюсь, называется ioctl-number.txt, но я мог найти только те файлы в загруженном исходном дереве ... а не скомпилированное ядро, которое я фактически запускаю.Было бы интересно найти, где эти файлы могут скрываться в скомпилированной версии.

Спасибо за любую помощь!

1 Ответ

2 голосов
/ 29 марта 2012

Не могли бы вы выбрать существующий макрос ioctl, который драйвер вашего устройства не использует (и никогда не будет), и назначить его значение макросу для требуемого ioctl?

У меня ограниченные знания о том, как ioclt работает с драйверами устройств, поэтому, возможно, это не сработает.

Можете ли вы посмотреть на источник другого драйвера устройства, который имеет пользовательские значения ioctl, и посмотреть, как они выбрали свои номера? Может быть, есть диапазон, который ОС не использует, поэтому они доступны для интерпретации каждым драйвером устройства, как пожелает.

...