|
Revision tags: release/12.2.0, release/11.4.0, release/12.1.0 |
|
| #
6ff93fe0 |
| 18-Sep-2019 |
Hans Petter Selasky <[email protected]> |
MFC r352207: Use true and false when dealing with bool type in the LinuxKPI. No functional change.
Sponsored by: Mellanox Technologies
|
| #
4d680e6c |
| 18-Sep-2019 |
Hans Petter Selasky <[email protected]> |
MFC r352206: Fix synchronous work drain issue in the LinuxKPI.
A work callback may restart itself. Loop in the drain function to see if the work has been rescheduled and stop the subsequent reschedu
MFC r352206: Fix synchronous work drain issue in the LinuxKPI.
A work callback may restart itself. Loop in the drain function to see if the work has been rescheduled and stop the subsequent reschedules, if any.
Sponsored by: Mellanox Technologies
show more ...
|
|
Revision tags: release/11.3.0, release/12.0.0 |
|
| #
549dcdb3 |
| 06-Aug-2018 |
Hans Petter Selasky <[email protected]> |
Implement current_work() function in the LinuxKPI.
Tested by: Johannes Lundberg <[email protected]> MFC after: 1 week Sponsored by: Mellanox Technologies
|
|
Revision tags: release/11.2.0 |
|
| #
7a13eeba |
| 05-Jun-2018 |
Hans Petter Selasky <[email protected]> |
Declare and set the global "system_highpri_wq" workqueue structure pointer in the LinuxKPI.
Submitted by: Johannes Lundberg <[email protected]> MFC after: 1 week Sponsored by: Mellanox Technologies
Declare and set the global "system_highpri_wq" workqueue structure pointer in the LinuxKPI.
Submitted by: Johannes Lundberg <[email protected]> MFC after: 1 week Sponsored by: Mellanox Technologies Sponsored by: Limelight Networks
show more ...
|
| #
b44247b1 |
| 01-Mar-2018 |
Hans Petter Selasky <[email protected]> |
Correct the return value from flush_work() and flush_delayed_work() in the LinuxKPI to comply more with Linux. This fixes an issue when these functions are used in waiting loops.
MFC after: 1 week S
Correct the return value from flush_work() and flush_delayed_work() in the LinuxKPI to comply more with Linux. This fixes an issue when these functions are used in waiting loops.
MFC after: 1 week Sponsored by: Mellanox Technologies
show more ...
|
| #
87a567f1 |
| 04-Oct-2017 |
Hans Petter Selasky <[email protected]> |
Make sure the timer belonging to the delayed work in the LinuxKPI gets drained before invoking the work function. Else the timer mutex may still be in use which can lead to use-after-free situations,
Make sure the timer belonging to the delayed work in the LinuxKPI gets drained before invoking the work function. Else the timer mutex may still be in use which can lead to use-after-free situations, because the work function might free the work structure before returning.
MFC after: 1 week Sponsored by: Mellanox Technologies
show more ...
|
|
Revision tags: release/10.4.0 |
|
| #
9657edd7 |
| 18-Aug-2017 |
Conrad Meyer <[email protected]> |
Move some other SI_SUB_INIT_IF initializations to SI_SUB_TASKQ
Drop the EARLY_AP_STARTUP gtaskqueue code, as gtaskqueues are now initialized before APs are started.
Reviewed by: hselasky@, jhb@ Spo
Move some other SI_SUB_INIT_IF initializations to SI_SUB_TASKQ
Drop the EARLY_AP_STARTUP gtaskqueue code, as gtaskqueues are now initialized before APs are started.
Reviewed by: hselasky@, jhb@ Sponsored by: Dell EMC Isilon Differential Revision: https://reviews.freebsd.org/D12054
show more ...
|
| #
3a150601 |
| 08-Aug-2017 |
Alexander Motin <[email protected]> |
Fix few issues of LinuxKPI workqueue.
LinuxKPI workqueue wrappers reported "successful" cancellation for works already completed in normal way. This change brings reported status and real cancellat
Fix few issues of LinuxKPI workqueue.
LinuxKPI workqueue wrappers reported "successful" cancellation for works already completed in normal way. This change brings reported status and real cancellation fact into sync. This required for drm-next operation.
Reviewed by: hselasky (earlier version) Sponsored by: iXsystems, Inc. Differential Revision: https://reviews.freebsd.org/D11904
show more ...
|
|
Revision tags: release/11.1.0 |
|
| #
7a742c41 |
| 19-Apr-2017 |
Hans Petter Selasky <[email protected]> |
Zero number of CPUs should be translated into the default number of CPUs when allocating a LinuxKPI workqueue. This also ensures that the created taskqueue always have a non-zero number of worker thr
Zero number of CPUs should be translated into the default number of CPUs when allocating a LinuxKPI workqueue. This also ensures that the created taskqueue always have a non-zero number of worker threads.
MFC after: 1 week Sponsored by: Mellanox Technologies
show more ...
|
| #
c23b6e23 |
| 09-Mar-2017 |
Hans Petter Selasky <[email protected]> |
Don't create any threads before SI_SUB_INIT_IF in the LinuxKPI. Else kthread_add() will assert it is called too soon. This fixes a startup issue when COMPAT_LINUXKPI is in enabled the kernel configur
Don't create any threads before SI_SUB_INIT_IF in the LinuxKPI. Else kthread_add() will assert it is called too soon. This fixes a startup issue when COMPAT_LINUXKPI is in enabled the kernel configuration file.
Reported by: Michael Butler <[email protected]> MFC after: 1 week Sponsored by: Mellanox Technologies
show more ...
|
| #
43ee32f7 |
| 08-Mar-2017 |
Hans Petter Selasky <[email protected]> |
Fix compilation warning for powerpc64 by not using const keyword in return types:
Type qualifiers ignored on function return type [-Wreturn-type]
Reported by: andreast @ MFC after: 1 week Sponsor
Fix compilation warning for powerpc64 by not using const keyword in return types:
Type qualifiers ignored on function return type [-Wreturn-type]
Reported by: andreast @ MFC after: 1 week Sponsored by: Mellanox Technologies
show more ...
|
| #
ca2ad6bd |
| 07-Mar-2017 |
Hans Petter Selasky <[email protected]> |
LinuxKPI workqueue cleanup.
This change makes the workqueue implementation behave more like in Linux, both functionality wise and structure wise.
All workqueue code has been moved to linux_work.c
LinuxKPI workqueue cleanup.
This change makes the workqueue implementation behave more like in Linux, both functionality wise and structure wise.
All workqueue code has been moved to linux_work.c
Add an atomic based statemachine to the work_struct to ensure proper operation. Prior to this change struct_work was directly mapped to a FreeBSD task. When a taskqueue has multiple threads the same task may end up being executed on more than one worker thread simultaneously. This might cause problems with code coming from Linux, which expects serial behaviour, similar to Linux tasklets.
Move all global workqueue function names into the linux_xxx domain to avoid symbol name clashes in the future.
Implement a few more workqueue related functions and macros.
Create two multithreaded taskqueues for the LinuxKPI during module load, one for time-consuming callbacks and one for non-time consuming callbacks.
MFC after: 1 week Sponsored by: Mellanox Technologies
show more ...
|