CVSROOT:        /cvs
Module name:    src
Changes by:     j...@cvs.openbsd.org    2022/07/27 00:57:06

Modified files:
        sys/dev/pci/drm/include/linux: llist.h 

Log message:
fix llist_for_each_entry*

enabling more of __notify_execute_cb() and running the intel xorg driver
on broadwell would fault in __notify_execute_cb() on
movq 0x38(%rsi),%r12

offsetof(struct execute_cb, work.node.llist) 0x38

llist_entry(NULL must not return NULL, it needs to wrap around
and return NULL minus the offset

the iterators stop when the offset added back to the result of
llist_entry() is NULL

they test that the first node is not NULL or that the next pointer
stored in a previous iteration of the loop is not NULL

Reply via email to