Page MenuHomeFreeBSD

Move most of the contents of opt_compat.h to opt_global.h.
ClosedPublic

Authored by brooks on Apr 3 2018, 12:45 AM.

Details

Summary

opt_compat.h is mentioned in nearly 180 files. In-progress network
driver compabibility improvements may add over 100 more so this is
closer to "just about everywhere" than "only some files" per the
guidance in sys/conf/options.

Keep COMPAT_LINUX32 in opt_compat.h as it is confined to a subset of sys/compat/linux/*.c.

Move COMPAT_LINUXKPI to opt_dontuse.h as it is only used to control the set of compiled files.

Test Plan

builds for amd64, needs a universe run

Some risk of suprising changes exists due to failure to include
opt_compat.h correctly before.

Diff Detail

Lint
Lint Passed
Unit
No Test Coverage
Build Status
Buildable 16007
Build 15988: arc lint + arc unit

Event Timeline

sys/conf/options
94

Why did you moved COMPAT_LINUXKPI ? I do not think that this option is ever tested by #ifdef.

sys/conf/options.amd64
20

COMPAT_LINUX32 is localized in the linuxolator files and certainly does not make much sense in global exposition.

  • Move COMPAT_LINUXKPI to opt_dontuse.h as it's never tested by #ifdef.
  • Move COMPAT_LINUX32 back to opt_compat.h.
brooks retitled this revision from Move the contents of opt_compat.h to opt_global.h. to Move most of the contents of opt_compat.h to opt_global.h..Apr 3 2018, 3:55 PM
brooks edited the summary of this revision. (Show Details)

The changes to sys/netinet are trivial.

This revision is now accepted and ready to land.Apr 5 2018, 10:23 PM
This revision now requires review to proceed.Apr 5 2018, 10:23 PM
  • Remove a file added by accident.
  • Restore opt_compat.h for linux modules.
jtl added a subscriber: jtl.

I'll OK the sys/netinet/tcp_subr.c change on behalf of transport. :-)

This revision is now accepted and ready to land.Apr 6 2018, 12:08 AM