Home

Awesome

illumos Project Discussion

IPDs are a shrink-to-fit description of larger scale (in either code size or impact) project wishing to make changes to illumos. They should describe the what and the why and give people the opportunity to comment on both.

An IPD is at its heart, just a README.md in a numbered directory in this repository, existing IPDs are enumerated below for easy reference. Further information is available at the end of this document.

IPDs

stateIPD
predraftIPD 1 Virtual Environment for Jenkins Build and Test
publishedIPD 2 Running smatch for illumos builds
publishedIPD 3 Link management improvements
publishedIPD 4 Manual Page Section Renumbering
publishedIPD 5 Rationalize SPARC platform support
draftIPD 6 allocb(): The pri argument, and use of KM_NORMALPRI
publishedIPD 7 illumos GCC maintenance
publishedIPD 8 EOF NCA/NL7C
publishedIPD 9 PCI Alias Disambiguation
publishedIPD 10 full argv in ps
publishedIPD 11 NFS Server for Zones (NFS-Zone)
publishedIPD 12 /proc/PID/fdinfo/
publishedIPD 13 Safer DDI DMA Cookie Functions
predraftIPD 14 illumos and Y2038
publishedIPD 15 bhyve integration/upstream
publishedIPD 16 EOF SunOS 4 binary compatibility
draftIPD 17 SMF Runtime Directory Creation Support
publishedIPD 18 overlay network integration/upstream
publishedIPD 19 Sunset SPARC
publishedIPD 20 Kernel Test Facility
publishedIPD 21 PCI Platform Unification
draftIPD 22 Unsharing shared Libraries
predraftIPD 23 Xen and the Art of Operating System Maintenance: A Removal of a Platform
predraftIPD 24 Support for 64-bit ARM
draftIPD 25 Authenticated pfexec
draftIPD 26 Sunset CardBus and PC Card
publishedIPD 27 Sunset TNF
draftIPD 28 EOF Legacy Network Driver interfaces
publishedIPD 29 Sunset Sockets Direct Protocol
draftIPD 30 Remove obsolete SCSA functions
publishedIPD 31 Kernel interface stability documentation
draftIPD 32 Introduce scsi_hba_pkt_mapin
predraftIPD 33 Obsolete legacy SCSI HBA API
draftIPD 34 Rationalize Kernel Architecture Module Paths
draftIPD 35 Sunset VTOC - SPARC
draftIPD 36 Rationalize $(MACH64) Command Paths
publishedIPD 37 Vendor-specific Command, Log, and Feature Support in nvmeadm(8)
publishedIPD 38 Signal Handling, Extended FPU State, ucontexts, x86, and You
publishedIPD 39 Datalink Media Types
draftIPD 40 Cross compilation for illumos
publishedIPD 41 Improving PCI devinfo Naming and Future Platforms
draftIPD 42 Sunset native printing
publishedIPD 43 NVMe 2.0, libnvme, and the nvme(4D) ioctl interface
predraftIPD 44 Distribution as a first class concept
draftIPD 45 Flow trees in the MAC datapath
predraftIPD 46 IP Tunnel and IPsec ergonomics
predraftIPD 47 Trust, but VERIFY(): Assertions in the Kernel

Contributing

Contributions are welcome. A good rule of thumb as to whether you should have an IPD is whether you are making a change with high impact to other developers or users (introducing or removing a supported platform, doing something with non-obvious compatibility constraints), or engaging in a long-term project that will likely integrate in pieces, to provide the overall picture.

For your first contribution, you might want to just submit a pull request to this repository. Going forward if this is a thing that you will do again, we'll probably give you write access to this repository so you can just add your new IPDs as they come up.

Format

An IPD has a short header block indicating authorship (that's you), sponsorship (we'll get to that), and state.

States

predraft

You've started writing your IPD and you want to share it narrowly, or even just to reserve your a number in this repository. You're predraft, maybe you only have a title and a short paragraph right now, that's fine.

draft

You've finished writing and explaining, and now you're going to send your IPD to the developer mailing list, this is a draft, you're going to receive feedback so it's not complete, but it's close.

published

One or more people from the illumos core team have agreed that what you've described is a good thing, and that we should do it. Your IPD is done and published (though is not immutable! If you find more information would be useful later, please add it!)

Sponsorship

"Sponsor" is a weird word here, it's just the person or people on the illumos core team who were ok with your IPD. Don't worry about it.