Page MenuHomeFreeBSD

Use standard taskqueue instead of hv_work_queue
ClosedPublic

Authored by howard0su_gmail.com on Jan 17 2016, 12:12 PM.
Tags
None
Referenced Files
F174787060: D4963.id13045.diff
Tue, Oct 6, 12:04 AM
F174784602: D4963.id12919.diff
Mon, Oct 5, 11:46 PM
F174783667: D4963.id12755.diff
Mon, Oct 5, 11:38 PM
F174782857: D4963.id12383.diff
Mon, Oct 5, 11:30 PM
F174782414: D4963.id12740.diff
Mon, Oct 5, 11:25 PM
F174781099: D4963.id12536.diff
Mon, Oct 5, 11:11 PM
F174781071: D4963.id12382.diff
Mon, Oct 5, 11:10 PM
F174780862: D4963.diff
Mon, Oct 5, 11:08 PM
Subscribers

Details

Summary

HyperV code was porting from Linux. There is an implementation of work queue
called as hv_work_queue. In FreeBSD, taskqueue is using for the same
purpose. Convert all the consumer of hv_work_queue to using taskqueue and remove work
queue implementation.

The net impact is reduced code and make the driver more FreeBSD style.

Diff Detail

Repository
rS FreeBSD src repository - subversion
Lint
Lint Passed
Unit
No Test Coverage
Build Status
Buildable 2152
Build 2161: arc lint + arc unit

Event Timeline

howard0su_gmail.com retitled this revision from to Use standard taskqueue instead of hv_work_queue.
howard0su_gmail.com updated this object.
howard0su_gmail.com edited the test plan for this revision. (Show Details)
howard0su_gmail.com edited edge metadata.

Fix a error logic which can lead to panic

Cleanup header file, recycle unused defs.
also update one place which can use WAITOK now.

sys/dev/hyperv/vmbus/hv_connection.c
167

This sema can be removed. It is only used in hv_work_queue_create which has been removed by this patch.

268

remove

320

It can be removed.

address review comments, remove control_sema

This revision is now accepted and ready to land.Jan 29 2016, 10:41 AM
howard0su_gmail.com edited edge metadata.

Remove a empty pair of lock/unlock

This revision now requires review to proceed.Feb 1 2016, 4:26 AM
adrian edited edge metadata.
This revision is now accepted and ready to land.Feb 4 2016, 5:48 AM
This revision was automatically updated to reflect the committed changes.