2010-07-13 11 views
12

unregister_chrdev() llamada de [linux \ fs.h] utilizada para devolver 0 si es exitosa y < 0 de otra manera. Pero ahora, en versiones de kernel más nuevas, el valor de retorno de la función ha cambiado a vacío, por lo que ya no devuelve nada.cómo encontrar si la llamada unregister_chrdev() fue exitosa

Pregunta: ¿Hay alguna forma de averiguar si la llamada unregister_chrdev() fue exitosa o no?

Respuesta

16

El regreso de vacío hecho por conjunto de cambios: e53252d97e670a38b1d2e9723b48077bba11ddda

 
commit e53252d97e670a38b1d2e9723b48077bba11ddda 
Author: Akinobu Mita 
Date: Thu Jul 19 01:47:51 2007 -0700 

    unregister_chrdev() return void 

    unregister_chrdev() does not return meaningful value. This patch makes it 
    return void like most unregister_* functions. 

De hecho, si nos fijamos en el código antes (de 2.6.12-rc2 en adelante) se puede ver que siempre devuelve 0 por lo que esta es una función que siempre se espera que tenga éxito.

+0

Gracias. Soy nuevo en la programación de Linux Kernel Module. Busqué en Google antes de publicar la pregunta, pero nunca pensé en mirar el código. – binW

+0

Familiarizarse con las herramientas de git para explorar la base de códigos es una inversión que vale la pena. Buena suerte :-) – stsquad

Cuestiones relacionadas