Source-Changes-D archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: CVS commit: src/sys/arch/powerpc/oea



On Sun, Nov 14, 2010 at 05:52:51AM +0000, David Holland wrote:
> On Sun, Nov 14, 2010 at 03:32:44AM +0000, Masao Uebayashi wrote:
>  > XXX What is the conclusion about direct vs. indirect #include from headers?
> 
> Every header file should include the things it requires to compile.
> Therefore, there should in principle be no cases where a header file
> (or source file) needs to #include something it doesn't itself use.

This clarifies my long-unanswered question, thanks!

I've (re)built about 300 kernels in the last days.  I've found:

- sys/sysctl.h's struct kinfo_proc should be moved into sys/proc.h
  (I've done this locally).  Otherwise all sysctl node providers
  includes sys/proc.h and uvm/uvm_extern.h.
  (This is where I started...)

- sys/syscallargs.h should be split into pieces, otherwise all its
  users have to know unrelated types (sys/mount.h, sys/cpu.h).

- sys/proc.h's tsleep(), wakeup(), and friends should be moved into
  some common header, because it's widely used API.  sys/proc.h will
  be used only for "struct proc" related things.


Home | Main Index | Thread Index | Old Index