Цитата(leonopulos @ Jul 10 2009, 20:52)

саму структуру объявил глобально, так как она используется в нескольких модулях драйвера:
static struct task_struct *p;
Это не объявление структуры, а объявление указателя. Чтобы использовать этот указатель для доступа к членам структуры, необходимо определить саму структуру -
struct task_struct { .... };
или подключить соответствующий хидер, если она из стандартной библиотеки