On Mon, Apr 27, 2020 at 04:10:14PM +0200, Danil Kipnis wrote: > From: Jack Wang <jinpu.wang@xxxxxxxxxxxxxxx> > > This header describes main structs and functions used by rnbd-server > module, namely structs for managing sessions from different clients > and mapped (opened) devices. > > Signed-off-by: Danil Kipnis <danil.kipnis@xxxxxxxxxxxxxxx> > Signed-off-by: Jack Wang <jinpu.wang@xxxxxxxxxxxxxxx> > Reviewed-by: Bart Van Assche <bvanassche@xxxxxxx> > drivers/block/rnbd/rnbd-srv.h | 79 +++++++++++++++++++++++++++++++++++ > 1 file changed, 79 insertions(+) > create mode 100644 drivers/block/rnbd/rnbd-srv.h > > diff --git a/drivers/block/rnbd/rnbd-srv.h b/drivers/block/rnbd/rnbd-srv.h > new file mode 100644 > index 000000000000..89218024325d > +++ b/drivers/block/rnbd/rnbd-srv.h > @@ -0,0 +1,79 @@ > +/* SPDX-License-Identifier: GPL-2.0-or-later */ > +/* > + * RDMA Network Block Driver > + * > + * Copyright (c) 2014 - 2018 ProfitBricks GmbH. All rights reserved. > + * Copyright (c) 2018 - 2019 1&1 IONOS Cloud GmbH. All rights reserved. > + * Copyright (c) 2019 - 2020 1&1 IONOS SE. All rights reserved. > + */ > +#ifndef RNBD_SRV_H > +#define RNBD_SRV_H > + > +#include <linux/types.h> > +#include <linux/idr.h> > +#include <linux/kref.h> > + > +#include "rtrs.h" > +#include "rnbd-proto.h" > +#include "rnbd-log.h" > + > +struct rnbd_srv_session { > + /* Entry inside global sess_list */ > + struct list_head list; > + struct rtrs_srv *rtrs; > + char sessname[NAME_MAX]; > + int queue_depth; > + struct bio_set sess_bio_set; > + > + spinlock_t index_lock ____cacheline_aligned; > + struct idr index_idr; No new users of idr, use xarray. Also no users of radix tree if there are any in here.. Jason