Page MenuHomeFreeBSD

zfs: enable SPA_PROCESS on the kernel side
ClosedPublic

Authored by avg on Feb 22 2017, 9:08 AM.
Tags
None
Referenced Files
Unknown Object (File)
Wed, Oct 15, 6:23 AM
Unknown Object (File)
Mon, Oct 13, 6:24 PM
Unknown Object (File)
Mon, Oct 13, 4:58 AM
Unknown Object (File)
Sun, Oct 12, 5:05 PM
Unknown Object (File)
Sun, Oct 12, 5:05 PM
Unknown Object (File)
Sun, Oct 12, 5:31 AM
Unknown Object (File)
Mon, Sep 29, 3:48 AM
Unknown Object (File)
Wed, Sep 24, 4:53 AM
Subscribers

Details

Summary

This change consists of several subchanges that should be separate
subversion commits.

  1. allow taskqueue threads to be created under kernel process umbrella

taskqueue_start_threads_in_proc() is like taskqueue_start_threads()
but has an additional struct proc parameter that's passed to kthread_add().

  1. illumos taskq_create_proc can now pass its process parameter to taskqueue

Also, use zfsproc instead of NULL for taskq_create.
Caveat: zfsproc might not be initialized yet, but in that case
it is still NULL, so not worse than before.

  1. illumos sys/proc.h: kthread id is stored in t_did field, not t_tid
  1. zfs: enable SPA_PROCESS on the kernel side

The change is a bit hairy as newproc() is implemented privately to spa.c.
I couldn't think of a better way to populate process name than to poke
inside the argument for the process routine.

  1. illumos thread_create: allow assigning thread to process other than zfsproc
  1. zfs: expose spa_proc to other users, assign sync and quiesce threads to it

Diff Detail

Repository
rS FreeBSD src repository - subversion
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

avg retitled this revision from to zfs: enable SPA_PROCESS on the kernel side.
avg updated this object.
avg edited the test plan for this revision. (Show Details)
avg added reviewers: ZFS, smh, mav, allanjude, jhb, asomers.
This revision was not accepted when it landed; it landed in state Needs Review.Nov 4 2019, 1:30 PM
This revision was automatically updated to reflect the committed changes.