From cdb0391e9c5e3337fd09f4e3d922d53065dd1374 Mon Sep 17 00:00:00 2001 From: nanger Date: Wed, 4 Jul 2018 15:31:12 +0800 Subject: Add integeration of rsocket for DMM rsocket version: librdmacm-1.1.0 compile with "make dmm_rsocket" command Change-Id: I8f0aec0d1e11f13f7593e7b7cc3a59d7a9dd287e Signed-off-by: nanger --- stacks/rsocket/src/rsocket_adpt.h | 55 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 55 insertions(+) create mode 100644 stacks/rsocket/src/rsocket_adpt.h (limited to 'stacks/rsocket/src/rsocket_adpt.h') diff --git a/stacks/rsocket/src/rsocket_adpt.h b/stacks/rsocket/src/rsocket_adpt.h new file mode 100644 index 0000000..43ec6cf --- /dev/null +++ b/stacks/rsocket/src/rsocket_adpt.h @@ -0,0 +1,55 @@ +/* +* +* Copyright (c) 2018 Huawei Technologies Co.,Ltd. +* Licensed under the Apache License, Version 2.0 (the "License"); +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at: +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ + +#ifndef _RSOCKET_ADPT_H_ +#define _RSOCKET_ADPT_H_ + +#include "indexer.h" +#include "rsocket_rdma.h" + +enum { + RR_STAT_EPW_ERR, + RR_STAT_EPW_EINTR, + RR_STAT_EPW_ETIMEOUT, + + RR_STAT_NUM +}; + +#define RR_STAT_ADD(id, num) __sync_add_and_fetch(&g_rr_var.stat[(id)], num) +#define RR_STAT_SUB(id, num) __sync_sub_and_fetch(&g_rr_var.stat[(id)], num) +#define RR_STAT_INC(id) RR_STAT_ADD((id), 1) +#define RR_STAT_DEC(id) RR_STAT_SUB((id), 1) + +#define RSRDMA_EXIT 1 + +typedef struct rsocket_var { + pthread_t epoll_threadid; + + int epfd; + int type; + int (*event_cb) (void *pdata, int events); + + uint64_t stat[RR_STAT_NUM]; +} rsocket_var_t; + +extern rsocket_var_t g_rr_var; + + +int rr_rs_handle(int fd, uint32_t events); + + +#endif/* #ifndef _RSOCKET_ADPT_H_ */ + -- cgit 1.2.3-korg