错误:字段'rwsem'的类型不完整

时间:2012-04-06 23:45:12

标签: c module linux-kernel semaphore

我有一个模块。它有一个头文件:circular_buffer.h

typedef struct _buffer_entry_{
       char data[1024];
       int size;
       struct rw_semaphore rwsem;
}buffer_entry;

当我参加比赛时。有一个错误:rwsem有不完整的类型? 我该如何解决?

1 个答案:

答案 0 :(得分:4)

在定义struct rw_semaphore之前执行struct _buffer_entry_的前向声明。

或者,如果这是在头文件中,您可以在定义_buffer_entry_之前定义rw_semaphore,这样就可以避免向前声明。