> struct psref {
> - LIST_ENTRY(psref) psref_entry;
> + SLIST_ENTRY(psref) psref_entry;
> + /* To keep ABI with LIST_ENTRY(psref) version. */
> + void *psref_unused0;
Isn't it somewhat fishy to manally pad this, knowing how big a [S]LIST_ENTRY
is? Wouldn't it be cleaner to use a union?