The Design and Implementation of the FreeBSD Operating System, Second Edition
Now available: The Design and Implementation of the FreeBSD Operating System (Second Edition)


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]

FreeBSD/Linux Kernel Cross Reference
sys/netlink/netlink_debug.h

Version: -  FREEBSD  -  FREEBSD-13-STABLE  -  FREEBSD-13-0  -  FREEBSD-12-STABLE  -  FREEBSD-12-0  -  FREEBSD-11-STABLE  -  FREEBSD-11-0  -  FREEBSD-10-STABLE  -  FREEBSD-10-0  -  FREEBSD-9-STABLE  -  FREEBSD-9-0  -  FREEBSD-8-STABLE  -  FREEBSD-8-0  -  FREEBSD-7-STABLE  -  FREEBSD-7-0  -  FREEBSD-6-STABLE  -  FREEBSD-6-0  -  FREEBSD-5-STABLE  -  FREEBSD-5-0  -  FREEBSD-4-STABLE  -  FREEBSD-3-STABLE  -  FREEBSD22  -  l41  -  OPENBSD  -  linux-2.6  -  MK84  -  PLAN9  -  xnu-8792 
SearchContext: -  none  -  3  -  10 

    1 /*-
    2  * Copyright (c) 2022 Alexander V. Chernikov <melifaro@FreeBSD.org>
    3  *
    4  * Redistribution and use in source and binary forms, with or without
    5  * modification, are permitted provided that the following conditions
    6  * are met:
    7  * 1. Redistributions of source code must retain the above copyright
    8  *    notice, this list of conditions and the following disclaimer.
    9  * 2. Redistributions in binary form must reproduce the above copyright
   10  *    notice, this list of conditions and the following disclaimer in the
   11  *    documentation and/or other materials provided with the distribution.
   12  * 3. Neither the name of the University nor the names of its contributors
   13  *    may be used to endorse or promote products derived from this software
   14  *    without specific prior written permission.
   15  *
   16  * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
   17  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
   18  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
   19  * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
   20  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
   21  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
   22  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
   23  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
   24  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
   25  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
   26  * SUCH DAMAGE.
   27  *
   28  * $FreeBSD$
   29  */
   30 
   31 #ifndef _NETLINK_NETLINK_DEBUG_H_
   32 #define _NETLINK_NETLINK_DEBUG_H_
   33 
   34 #ifdef _KERNEL
   35 
   36 #define _DEBUG_SYSCTL_OID       _net_netlink_debug
   37 #include <net/route/route_debug.h>
   38 
   39 SYSCTL_DECL(_net_netlink_debug);
   40 
   41 /*
   42  * Generic debug
   43  * [nl_domain] func_name: debug text
   44  */
   45 #define NL_LOG  RT_LOG
   46 
   47 /*
   48  * Logging for events specific for particular process
   49  * Example: [nl_domain] PID 4834 fdump_sa: unsupported family: 45
   50  */
   51 #define NL_RAW_PID_LOG(_l, _pid, _fmt, ...)     NL_RAW_PID_LOG_##_l(_l, _pid, _fmt, ## __VA_ARGS__)
   52 #define _NL_RAW_PID_LOG(_l, _pid, _fmt, ...)    if (_DEBUG_PASS_MSG(_l)) {      \
   53         _output("[" DEBUG_PREFIX_NAME "] PID %u %s: " _fmt "\n", _pid, __func__, ##__VA_ARGS__); \
   54 }
   55 
   56 #define NLP_LOG(_l, _nlp, _fmt, ...)    NL_RAW_PID_LOG_##_l(_l, nlp_get_pid(_nlp), _fmt, ## __VA_ARGS__)
   57 
   58 #if DEBUG_MAX_LEVEL>=LOG_DEBUG3
   59 #define NL_RAW_PID_LOG_LOG_DEBUG3       _NL_RAW_PID_LOG
   60 #else
   61 #define NL_RAW_PID_LOG_LOG_DEBUG3(_l, _pid, _fmt, ...)
   62 #endif
   63 #if DEBUG_MAX_LEVEL>=LOG_DEBUG2
   64 #define NL_RAW_PID_LOG_LOG_DEBUG2       _NL_RAW_PID_LOG
   65 #else
   66 #define NL_RAW_PID_LOG_LOG_DEBUG2(_l, _pid, _fmt, ...)
   67 #endif
   68 #if DEBUG_MAX_LEVEL>=LOG_DEBUG
   69 #define NL_RAW_PID_LOG_LOG_DEBUG        _NL_RAW_PID_LOG
   70 #else
   71 #define NL_RAW_PID_LOG_LOG_DEBUG(_l, _pid, _fmt, ...)
   72 #endif
   73 #if DEBUG_MAX_LEVEL>=LOG_INFO
   74 #define NL_RAW_PID_LOG_LOG_INFO _NL_RAW_PID_LOG
   75 #else
   76 #define NL_RAW_PID_LOG_LOG_INFO(_l, _pid, _fmt, ...)
   77 #endif
   78 #define NL_RAW_PID_LOG_LOG_NOTICE       _NL_RAW_PID_LOG
   79 #define NL_RAW_PID_LOG_LOG_ERR         _NL_RAW_PID_LOG
   80 #define NL_RAW_PID_LOG_LOG_WARNING      _NL_RAW_PID_LOG
   81 
   82 
   83 
   84 #endif
   85 #endif

Cache object: 6bc3b250b5bdfc1a2a26125c01591c5e


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]


This page is part of the FreeBSD/Linux Linux Kernel Cross-Reference, and was automatically generated using a modified version of the LXR engine.