Hi,
I was looking the hlist's implementation in the linux kernel
(linux/include/linux/list.h). The description of hlist_node is:
struct hlist_node {
struct hlist_node *next, **pprev;
};
I don't understand why there is a pointer to a pointer (**pprev) for
the previous node instead of a simple pointer (*pprev). I quickly
look the general functions in list.h who use this structure and I
don't see something particular which can explain why we use a pointer
to a pointer. Can someone explain it to me?
Thanks