Page MenuHomeFreeBSD

LinuxKPI: Switch irq_work implementation back to standard taskqueue
ClosedPublic

Authored by wulf on Apr 24 2022, 11:42 PM.
Tags
None
Referenced Files
Unknown Object (File)
Tue, Jan 6, 5:18 AM
Unknown Object (File)
Sun, Jan 4, 4:58 PM
Unknown Object (File)
Mon, Dec 29, 6:12 PM
Unknown Object (File)
Sat, Dec 27, 10:58 PM
Unknown Object (File)
Dec 8 2025, 7:29 PM
Unknown Object (File)
Dec 2 2025, 9:52 PM
Unknown Object (File)
Dec 2 2025, 2:26 PM
Unknown Object (File)
Nov 25 2025, 11:23 AM

Details

Summary

from fast one as dmabuf does not run callbacks from critical sections
since drm-kmod 5.7.
Consumers which requires fair irq_work like drm-kmod 5.4 must #define
LKPI_IRQ_WORK_USE_FAST_TQ somewhere in source file before linux/irq_work.h
inclusion to enable old behavior.

While here include linux/llist.h to get struct llist_node definition
and add TQFLG_FAILIF_PENDING flag to taskqueue_enqueue to match Linux.

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

wulf requested review of this revision.Apr 24 2022, 11:42 PM

Chase for taskqueue_enqueue flag name change

TQFLG_FAILIF_PENDING -> TASKQUEUE_FAIL_IF_PENDING