1*4882a593Smuzhiyun /* SPDX-License-Identifier: GPL-2.0-or-later */ 2*4882a593Smuzhiyun /* 3*4882a593Smuzhiyun * RDMA Transport Layer 4*4882a593Smuzhiyun * 5*4882a593Smuzhiyun * Copyright (c) 2014 - 2018 ProfitBricks GmbH. All rights reserved. 6*4882a593Smuzhiyun * Copyright (c) 2018 - 2019 1&1 IONOS Cloud GmbH. All rights reserved. 7*4882a593Smuzhiyun * Copyright (c) 2019 - 2020 1&1 IONOS SE. All rights reserved. 8*4882a593Smuzhiyun */ 9*4882a593Smuzhiyun #ifndef RTRS_LOG_H 10*4882a593Smuzhiyun #define RTRS_LOG_H 11*4882a593Smuzhiyun 12*4882a593Smuzhiyun #define rtrs_log(fn, obj, fmt, ...) \ 13*4882a593Smuzhiyun fn("<%s>: " fmt, obj->sessname, ##__VA_ARGS__) 14*4882a593Smuzhiyun 15*4882a593Smuzhiyun #define rtrs_err(obj, fmt, ...) \ 16*4882a593Smuzhiyun rtrs_log(pr_err, obj, fmt, ##__VA_ARGS__) 17*4882a593Smuzhiyun #define rtrs_err_rl(obj, fmt, ...) \ 18*4882a593Smuzhiyun rtrs_log(pr_err_ratelimited, obj, fmt, ##__VA_ARGS__) 19*4882a593Smuzhiyun #define rtrs_wrn(obj, fmt, ...) \ 20*4882a593Smuzhiyun rtrs_log(pr_warn, obj, fmt, ##__VA_ARGS__) 21*4882a593Smuzhiyun #define rtrs_wrn_rl(obj, fmt, ...) \ 22*4882a593Smuzhiyun rtrs_log(pr_warn_ratelimited, obj, fmt, ##__VA_ARGS__) 23*4882a593Smuzhiyun #define rtrs_info(obj, fmt, ...) \ 24*4882a593Smuzhiyun rtrs_log(pr_info, obj, fmt, ##__VA_ARGS__) 25*4882a593Smuzhiyun #define rtrs_info_rl(obj, fmt, ...) \ 26*4882a593Smuzhiyun rtrs_log(pr_info_ratelimited, obj, fmt, ##__VA_ARGS__) 27*4882a593Smuzhiyun 28*4882a593Smuzhiyun #endif /* RTRS_LOG_H */ 29