nvmf: Merge conn.[ch] into session.[ch]

There was only one function and a structure declaration
left.

Change-Id: I63277b4182120e7a76a925ed0bf7378ec7c23f20
Signed-off-by: Ben Walker <benjamin.walker@intel.com>
This commit is contained in:
Ben Walker 2016-07-15 14:45:26 -07:00
parent 2b9d85c448
commit 677a2dc5d7
8 changed files with 22 additions and 138 deletions

View File

@ -35,8 +35,7 @@ SPDK_ROOT_DIR := $(abspath $(CURDIR)/../..)
CFLAGS += $(DPDK_INC)
LIBNAME = nvmf
C_SRCS = conn.c controller.c \
subsystem.c conf.c \
C_SRCS = controller.c subsystem.c conf.c \
nvmf.c request.c session.c transport.c
C_SRCS-$(CONFIG_RDMA) += rdma.c

View File

@ -1,68 +0,0 @@
/*-
* BSD LICENSE
*
* Copyright (c) Intel Corporation.
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
*
* * Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* * Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in
* the documentation and/or other materials provided with the
* distribution.
* * Neither the name of Intel Corporation nor the names of its
* contributors may be used to endorse or promote products derived
* from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
* A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
* OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
* LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
* DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
* THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
#include <arpa/inet.h>
#include <fcntl.h>
#include <sys/mman.h>
#include <sys/stat.h>
#include <sys/types.h>
#include <inttypes.h>
#include <unistd.h>
#include <rte_config.h>
#include <rte_debug.h>
#include <rte_mempool.h>
#include <rte_cycles.h>
#include <rte_timer.h>
#include "spdk/nvmf_spec.h"
#include "conn.h"
#include "request.h"
#include "session.h"
#include "subsystem.h"
#include "transport.h"
#include "spdk/queue.h"
#include "spdk/log.h"
#include "spdk/trace.h"
/** \file
*/
void
spdk_nvmf_conn_destruct(struct spdk_nvmf_conn *conn)
{
nvmf_disconnect(conn->sess, conn);
conn->transport->conn_fini(conn);
}

View File

@ -1,63 +0,0 @@
/*-
* BSD LICENSE
*
* Copyright (c) Intel Corporation.
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
*
* * Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* * Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in
* the documentation and/or other materials provided with the
* distribution.
* * Neither the name of Intel Corporation nor the names of its
* contributors may be used to endorse or promote products derived
* from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
* A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
* OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
* LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
* DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
* THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
#ifndef NVMF_CONN_H
#define NVMF_CONN_H
#include <stdint.h>
#include "spdk/event.h"
#include "nvmf_internal.h"
#include "spdk/queue.h"
struct spdk_nvmf_transport;
enum conn_type {
CONN_TYPE_AQ = 0,
CONN_TYPE_IOQ = 1,
};
struct spdk_nvmf_conn {
const struct spdk_nvmf_transport *transport;
struct nvmf_session *sess;
enum conn_type type;
uint16_t sq_head;
TAILQ_ENTRY(spdk_nvmf_conn) link;
};
int spdk_nvmf_startup_conn(struct spdk_nvmf_conn *conn);
void spdk_nvmf_conn_destruct(struct spdk_nvmf_conn *conn);
#endif /* NVMF_CONN_H */

View File

@ -39,7 +39,6 @@
#include "spdk/log.h"
#include "spdk/conf.h"
#include "conf.h"
#include "conn.h"
#include "controller.h"
#include "subsystem.h"
#include "transport.h"

View File

@ -46,7 +46,7 @@
#include <rte_timer.h>
#include <rte_malloc.h>
#include "conn.h"
#include "nvmf_internal.h"
#include "request.h"
#include "session.h"
#include "subsystem.h"

View File

@ -34,7 +34,7 @@
#include <rte_config.h>
#include <rte_debug.h>
#include "conn.h"
#include "nvmf_internal.h"
#include "request.h"
#include "session.h"
#include "subsystem.h"

View File

@ -165,7 +165,8 @@ spdk_nvmf_session_destruct(struct nvmf_session *session)
struct spdk_nvmf_conn *conn = TAILQ_FIRST(&session->connections);
TAILQ_REMOVE(&session->connections, conn, link);
spdk_nvmf_conn_destruct(conn);
nvmf_disconnect(conn->sess, conn);
conn->transport->conn_fini(conn);
}
free(session);

View File

@ -37,7 +37,6 @@
#include <stdint.h>
#include <stdbool.h>
#include "conn.h"
#include "request.h"
#include "spdk/nvmf_spec.h"
#include "spdk/queue.h"
@ -45,6 +44,23 @@
/* define a virtual controller limit to the number of QPs supported */
#define MAX_SESSION_IO_QUEUES 64
struct spdk_nvmf_transport;
enum conn_type {
CONN_TYPE_AQ = 0,
CONN_TYPE_IOQ = 1,
};
struct spdk_nvmf_conn {
const struct spdk_nvmf_transport *transport;
struct nvmf_session *sess;
enum conn_type type;
uint16_t sq_head;
TAILQ_ENTRY(spdk_nvmf_conn) link;
};
/*
* This structure maintains the NVMf virtual controller session
* state. Each NVMf session permits some number of connections.