how it the linux implementation of double linked lists useful