J'écris un module de noyau Linux, et mon application utilisateur boucle un appel ioctl
parallèle (pour obtenir des informations du module noyau). Mais quand je veux fermer le descripteur de fichier (lié à mon module de noyau), la fonction release
n'est pas exécutée jusqu'à ce que la fonction ioctl
ne soit pas sortie.Fermeture du descripteur de fichier lors de l'exécution d'ioctl
Je ne trouve rien sur la raison pour laquelle il se comporte ainsi. Avez-vous une idée de pourquoi cela arrive, et comment je peux éviter ce blocage? J'aimerais essentiellement que mes fonctions ioctl
et close
soient exécutées simultanément dans mon module noyau.
Merci! :)
Nous vous remercions de votre réponse. Alors savez-vous comment je suis censé mettre en œuvre le comportement que je veux? – PinkPR
Comme le dit la réponse, vous ** ne pouvez pas ** observer '.ioctl()' et '.release()' exécuté en même temps. Que veux-tu d'autre de moi? – Tsyvarev
Je voulais dire: avez-vous une idée de ce qui pourrait être un meilleur design? Par exemple, je suis autorisé à exécuter des appels simultanés à 'ioctl'? – PinkPR