Bonjour, désolé mais je n'ai pas vraiment de bonne solution à proposer. Si je comprend bien le projet est de faire en soft (à plus grande échelle ) ce que fais seagate dans sa gamme momentus (avec un hardware dédié).
Le problème que vous rencontrez est qu'une structure qui vous est nécessaire n'est pas rendue "public" par les drivers actuel ssd/hdd.
Dans ce cas la je ne vois que deux solutions
1°/ Modifier le code existant (ce qui n'est pas acceptable dans votre cas)
2°/ Demander (en le justifiant) la modification du driver actuel par son mainteneur pour que les prochaines versions du kernel intègre cette modification.
Essayer de hacker le kernel pour recuperer quoi qu'il en coute un acces qui n'est pas autoriser a une variable ou une fonction c'est s'exposer a de grand soucis par la suite, je vous préviens tout de suite !!!!!
Mais si jamais ca vous tente quand même c'est possible car en kernel-space tout les drivers sont dans le même espace d'adressage http://onebitbug.me/introducing-linux-kernel-symbols
section "How to access non-exported symbol"
je vous conseille de lire les régles de nomages du linker de gcc pour être à l'aise.
# Mes 2 cts
Posté par TheBreton . En réponse au message Déléguer une requête à un driver pré-existant. Évalué à 3. Dernière modification le 26 mars 2012 à 11:07.
Bonjour, désolé mais je n'ai pas vraiment de bonne solution à proposer. Si je comprend bien le projet est de faire en soft (à plus grande échelle ) ce que fais seagate dans sa gamme momentus (avec un hardware dédié).
Le problème que vous rencontrez est qu'une structure qui vous est nécessaire n'est pas rendue "public" par les drivers actuel ssd/hdd.
Dans ce cas la je ne vois que deux solutions
1°/ Modifier le code existant (ce qui n'est pas acceptable dans votre cas)
2°/ Demander (en le justifiant) la modification du driver actuel par son mainteneur pour que les prochaines versions du kernel intègre cette modification.
Essayer de hacker le kernel pour recuperer quoi qu'il en coute un acces qui n'est pas autoriser a une variable ou une fonction c'est s'exposer a de grand soucis par la suite, je vous préviens tout de suite !!!!!
Mais si jamais ca vous tente quand même c'est possible car en kernel-space tout les drivers sont dans le même espace d'adressage
http://onebitbug.me/introducing-linux-kernel-symbols
section "How to access non-exported symbol"
je vous conseille de lire les régles de nomages du linker de gcc pour être à l'aise.