Page MenuHomeFreeBSD

Mark more nodes as CTLFLAG_MPSAFE or CTLFLAG_NEEDGIANT (M of N)
ClosedPublic

Authored by kaktus on Feb 16 2020, 4:41 PM.
Tags
None
Referenced Files
F103472391: D23718.diff
Mon, Nov 25, 11:39 AM
Unknown Object (File)
Sun, Nov 24, 9:06 AM
Unknown Object (File)
Sat, Nov 23, 1:13 AM
Unknown Object (File)
Fri, Nov 22, 7:10 PM
Unknown Object (File)
Fri, Nov 22, 4:06 AM
Unknown Object (File)
Thu, Nov 21, 10:06 AM
Unknown Object (File)
Wed, Nov 20, 8:59 AM
Unknown Object (File)
Mon, Nov 18, 8:41 PM

Details

Summary

r357614 added CTLFLAG_NEEDGIANT to make it easier to find nodes that are still not MPSAFE (or already are but aren’t properly marked). Use it in preparation for a general review of all nodes.
This is non-functional change that adds annotations to SYSCTL_NODE and SYSCTL_PROC nodes using one of the soon-to-be-required flags.
Mark obvious cases as MPSAFE.

N.B.
This review covers all parts not specified otherwise in reviews D23625 to D23640.

All entries that haven't been marked as MPSAFE before are by default marked as NEEDGIANT.

Diff Detail

Lint
Lint Skipped
Unit
Tests Skipped

Event Timeline

There are a very large number of changes, so older changes are hidden. Show Older Changes
sys/dev/sfxge/sfxge_ev.c
506

MPSAFE

567

MPSAFE

1005

MPSAFE

sys/dev/sfxge/sfxge_port.c
199

MPSAFE

654

MPSAFE

786

MPSAFE

789

MPSAFE

806

MPSAFE

sys/dev/sound/pci/atiixp.c
1100

MPSAFE

sys/dev/sound/pci/es137x.c
1651

MPSAFE

1667

MPSAFE

1685

MPSAFE

1698

MPSAFE

1703

MPSAFE

sys/dev/sound/pci/via8233.c
262

MPSAFE

267

MPSAFE

272

MPSAFE

sys/dev/sound/pcm/ac97.c
923

MPSAFE

sys/dev/sound/pcm/feeder_eq.c
688

MPSAFE

700

MPSAFE

sys/dev/sound/pcm/mixer.c
893

MPSAFE

sys/dev/sound/pcm/vchan.c
996

All MPSAFE

sys/dev/tsec/if_tsec.c
1688

MPSAFE

1691

MPSAFE

1695

MPSAFE

1698

MPSAFE

sys/dev/virtio/block/virtio_blk.c
1397

MPSAFE

sys/fs/nfsclient/nfs_clnfsiod.c
129

MPSAFE

166

MPSAFE

sys/geom/geom_kern.c
224

All three probably MPSAFE

sys/kern/kern_linker.c
2264

MPSAFE

sys/kern/kern_malloc.c
1230

MPSAFE

sys/kern/kern_mib.c
187

MPSAFE

203

MPSAFE

220

MPSAFE

253

MPSAFE

403

MPSAFE

sys/kern/kern_poll.c
138

MPSAFE

164

MPSAFE

191

MPSAFE

217

MPSAFE

sys/kern/kern_prot.c
1683

MPSAFE

sys/kern/subr_devstat.c
445

MPSAFE

sys/kern/subr_prof.c
391

MPSAFE

sys/kern/subr_rman.c
1072

MPSAFE

sys/kern/subr_rtc.c
85

MPSAFE

sys/kern/subr_sleepqueue.c
1438

MPSAFE

1443

MPSAFE

sys/kern/subr_stats.c
3898

MPSAFE

sys/kern/uipc_usrreq.c
1907

MPSAFE

1911

MPSAFE

1915

MPSAFE

sys/libkern/iconv.c
355

MPSAFE

388

MPSAFE

457

MPSAFE

sys/net/if_epair.c
138

MPSAFE

sys/net/iflib.c
6282

MPSAFE

sys/netinet/cc/cc.c
326

MPSAFE

329

MPSAFE

sys/netinet/ip_divert.c
746

MPSAFE

sys/netinet/ip_id.c
140

MPSAFE

147

MPSAFE

sys/netinet/ip_input.c
234

MPSAFE

256

MPSAFE

275

MPSAFE

297

MPSAFE

sys/netinet/ip_mroute.c
2803

MPSAFE

sys/netinet/netdump/netdump_client.c
144

MPSAFE

sys/netinet/raw_ip.c
1142

MPSAFE

sys/netinet/tcp_fastopen.c
272

MPSAFE

331

MPSAFE

338

MPSAFE

344

MPSAFE

350

MPSAFE

356

MPSAFE

sys/netinet/tcp_hostcache.c
169

MPSAFE

174

MPSAFE

sys/netinet/udp_usrreq.c
921

MPSAFE

963

MPSAFE

kaktus edited the summary of this revision. (Show Details)

Address comments and fix many more obvious cases.

sys/powerpc/powermac/pmu.c
469

Should be MPSAFE

gallatin added inline comments.
sys/dev/mxge/if_mxge.c
1510

Nothing in mxge needs giant

Address comments and update to rS358167.

Sync with rS358330 and split sys/dev/random bits to a separate review for so@ approval.

This revision was not accepted when it landed; it landed in state Needs Review.Apr 1 2020, 12:12 AM
This revision was automatically updated to reflect the committed changes.