cvs commit: src/sys/sys _task.h

Scott Long scottl at
Wed Jul 28 10:25:09 PDT 2004

Robert Watson wrote:
> On Wed, 28 Jul 2004, Garrett Wollman wrote:
>><<On Wed, 28 Jul 2004 08:03:16 -0700, Alfred Perlstein <alfred at FreeBSD.ORG> said:
>>>* Maxime Henrion <mux at> [040728 02:19] wrote:
>>>>Or have a struct ifnet for kernel and a struct xifnet for userland, as we
>>>>do in other places.
>>>That sounds more correct (xifnet).
>>No.  Everything that would legitimately be available in an xifnet
>>structure is already made available through other interfaces.  The only
>>reason programs might need to look at a struct ifnet is because they're
>>mucking about in kernel memory, in which case they need the real one and
>>not a "sanitized" version.  (This is why I moved struct ifnet to
>><net/if_var.h> in the first place.) 
> Some applications and libraries declare their known violation of layering
> boundaries in the system by #define _KERNEL.  Others structures have
> special #define's, such as COMPAT_43, _WANT_UCRED, etc.  I'd be happy with
> either #define _KERNEL or #if defined(_KERNEL) || _WANT_IFNET.
> Robert N M Watson             FreeBSD Core Team, TrustedBSD Projects
> robert at      Principal Research Scientist, McAfee Research

I'd be quite happy with

#ifndef _KERNEL
#error "No user-servicable parts inside"

or similar as is in /sys/sys/timetc.h.  Either way, pollution bad,
fluffy bunnies good.


More information about the cvs-all mailing list