74 lines · c
1/*2 * Copyright (c) 2013, Cisco Systems, Inc. All rights reserved.3 *4 * This software is available to you under a choice of one of two5 * licenses. You may choose to be licensed under the terms of the GNU6 * General Public License (GPL) Version 2, available from the file7 * COPYING in the main directory of this source tree, or the8 * BSD license below:9 *10 * Redistribution and use in source and binary forms, with or11 * without modification, are permitted provided that the following12 * conditions are met:13 *14 * - Redistributions of source code must retain the above15 * copyright notice, this list of conditions and the following16 * disclaimer.17 *18 * - Redistributions in binary form must reproduce the above19 * copyright notice, this list of conditions and the following20 * disclaimer in the documentation and/or other materials21 * provided with the distribution.22 *23 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,24 * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF25 * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND26 * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS27 * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN28 * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN29 * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE30 * SOFTWARE.31 *32 */33 34#ifndef USNIC_LOG_H_35#define USNIC_LOG_H_36 37#include "usnic.h"38 39extern unsigned int usnic_log_lvl;40 41#define USNIC_LOG_LVL_NONE (0)42#define USNIC_LOG_LVL_ERR (1)43#define USNIC_LOG_LVL_INFO (2)44#define USNIC_LOG_LVL_DBG (3)45 46#define usnic_printk(lvl, args...) \47 do { \48 printk(lvl "%s:%s:%d: ", DRV_NAME, __func__, \49 __LINE__); \50 printk(args); \51 } while (0)52 53#define usnic_dbg(args...) \54 do { \55 if (unlikely(usnic_log_lvl >= USNIC_LOG_LVL_DBG)) { \56 usnic_printk(KERN_INFO, args); \57 } \58} while (0)59 60#define usnic_info(args...) \61do { \62 if (usnic_log_lvl >= USNIC_LOG_LVL_INFO) { \63 usnic_printk(KERN_INFO, args); \64 } \65} while (0)66 67#define usnic_err(args...) \68 do { \69 if (usnic_log_lvl >= USNIC_LOG_LVL_ERR) { \70 usnic_printk(KERN_ERR, args); \71 } \72 } while (0)73#endif /* !USNIC_LOG_H_ */74