Page MenuHomeFreeBSD

Allow the creation of polling descriptors (kqueues) on CloudABI.
ClosedPublic

Authored by ed on Jul 31 2015, 9:58 AM.
Tags
None
Referenced Files
Unknown Object (File)
Dec 24 2023, 4:38 PM
Unknown Object (File)
Dec 20 2023, 1:24 AM
Unknown Object (File)
Aug 13 2023, 6:41 AM
Unknown Object (File)
Aug 2 2023, 6:35 PM
Unknown Object (File)
Feb 24 2017, 9:14 PM
Unknown Object (File)
Nov 15 2016, 4:45 PM
Unknown Object (File)
Nov 14 2016, 12:21 AM
Unknown Object (File)
Nov 6 2016, 8:30 AM
Subscribers

Details

Summary

On CloudABI we want to create file descriptors with just the minimal set
of Capsicum rights in place. The reason for this is that it makes it
easier to obtain uniform behaviour across different operating systems.

By explicitly whitelisting the operations, we can return consistent
error codes, but also prevent applications from depending OS-specific
behaviour.

Extend kern_kqueue() to take an additional struct filecaps that is
passed on to falloc_caps(). Update the existing consumers to pass in
NULL. Extend the fd_create1() system call to call into kern_kqueue().

Test Plan

Diff Detail

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

Event Timeline

ed retitled this revision from to Allow the creation of polling descriptors (kqueues) on CloudABI..
ed updated this object.
ed edited the test plan for this revision. (Show Details)
ed added a reviewer: jmg.

Per Kostik's request, I'll check in the changes to kern_kqueue() and the CloudABI code separately, to ease MFCing.

I'll leave the code review as is (combined), but I'll make sure to commit it separately.

Rebase on top of latest HEAD.

This revision was automatically updated to reflect the committed changes.