Ich habe den Linux 2.6.36-Quellcode unter lxr.linux.no durchgesehen und konnte die ioctl()Methode in nicht finden file_operations. Stattdessen habe ich zwei neue Anrufe gefunden: unlocked_ioctl()und compat_ioctl(). Was ist der Unterschied zwischen ioctl(), unlocked_ioctl()und compat_ioctl()?
unlocked_ioctldies dadurch? Die Tatsache, dass ein Funktionszeiger pro Datei verwendet wird (in diesem Fall astruct file), scheint mir nahe zu sein. Ist dasunlocked_ioctlfür Zeichendateien bei der Treiberinitialisierung registriertmknod?