/* * Delete a list entry by making the prev/next entries * point to each other. * * This is only for internal list manipulation where we know * the prev/next entries already! */ static inline void __list_del(struct list_head * prev, struct list_head * next) { next->prev = prev; prev->next = next;
仮に prev と next の間にあるリストの要素(削除しようとしている要素) の名前を self とすると、 | prev | -(next)-> | self | | | | | | | <-(prev)- | next | を | prev | ----------(next)-----------> | | | | <-----------(prev)---------- | next | | self | | | のように変更して、self を参照できないようにする。 }