Hallo,
I'm trying to compile a my kernel module regarding QoS-Linux. I need to
access to some information stored in the variable called "handle" and
"stats". But I get the error "Dereferencing point to incomplete type".
......What does it mean?
Thanks in advance for the help.
Marco
-------------------------
| MODULE |
-------------------------
#include <linux/kernel.h>
#include <linux/module.h>
#include <linux/netdevice.h>
#include <linux/pkt_sched.h>
#include <linux/pkt_cls.h>
int init_module()
{
struct device *device;
struct Qdisc *qdisc;
struct tc_stats stats;
u32 handle;
device=dev_base;
for(; device != NULL; device=device->next)
{
printk("\n------Scheda: %s ------\n",device->name);
printk("Queue Discipline:\n");
qdisc=device->qdisc;
handle=qdisc->handle; /* HERE IS THE ERROR*/
stats=qdisc->stats; /* HERE IS THE ERROR*/
printk("Statistical of Qdisc:\n");
printk("Handle=Major:%x
Minor:%x\n",TC_H_MAJ(handle),TC_H_MIN(handle));
printk("DROP packet%d",stats.drops);
.......
}
return 0;
void cleanup_module()Quote:}
{
printk("...Auf Widersehen\n\n");
------------------------------------Quote:}
| STRUCT (Simplified) |
------------------------------------
Inside <linux/pkt_sched.h> there is:
struct Qdisc
{
struct Qdisc_head h;
u32 handle;
struct tc_stats stats;
--------------------------------------Quote:};
Inside <linux/netdevice.h> there is:
struct device
{
char *name;
struct device *next;
struct Qdisc *qdisc;
Quote:};