All right, let's take another stab at this. > list. But as I debugged my code, it seems that my concept is wrong. Would > anyone guide me how to implement a two-dimensioned list, or introduce me a My interpretation of what you got is as follows, based on what you've said you'll be assigning each list_head to: struct noop_data { struct list_head readQueue; // You haven't explicitly stated which // LL this will be assigned to. struct list_head writeQueue;// The head of a LL of 'struct bundle' // nodes. struct bundle { int bundleNumber; int size; struct list_head bundlesQueue; // The LL of 'struct bundle' struct list_head reqsQueue; // The head of a LL of // 'struct request'? int filled[8]; } bun; unsigned int starved; }; Depending on how you're going to assign these, you may end up with spaghetti. As I indicated before, the nested inclusion of 'struct bundle' is likely wrong. later, ali > "noop_data" has a reference to start point of bundles list, called > "writeQueue" > "bundle" has a reference to start point of requests list, called > "reqsQueue". > "bundle" knows its related list using "bundlesQueue". > "request" knows its related list using "queuelist". (request struct is > already implemented in kernel) > > struct bundle { > int bundleNumber; > int size; > struct list_head bundlesQueue; > struct list_head reqsQueue; > int filled[8]; > }; > > struct noop_data { > struct list_head readQueue; > struct list_head writeQueue; > struct bundle bun; > unsigned int starved; > }; _______________________________________________ Kernelnewbies mailing list Kernelnewbies@xxxxxxxxxxxxxxxxx http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies