The kernel heavily relies on pointers to implement the equivalent of virtual functions, either by assigning a pointer directly in an initialization function or designated initializer, or for instance by setting a constant file_ops. All these assignments are against statically known functions or instances.
When such a static assignment to a pointer is performed, it would be great to be able to track the possible values the pointer takes and to display them to the user when such a pointer is highlighted. Since we are aware of the code that is actually needed by the kernel and only include necessary files, this should resolve to a reasonnable number of possibilities and be quite helpful to browse through code.
The kernel heavily relies on pointers to implement the equivalent of virtual functions, either by assigning a pointer directly in an initialization function or designated initializer, or for instance by setting a constant file_ops. All these assignments are against statically known functions or instances.
When such a static assignment to a pointer is performed, it would be great to be able to track the possible values the pointer takes and to display them to the user when such a pointer is highlighted. Since we are aware of the code that is actually needed by the kernel and only include necessary files, this should resolve to a reasonnable number of possibilities and be quite helpful to browse through code.