linux/drivers/md/dm-ps-round-robin.c

// SPDX-License-Identifier: GPL-2.0-only
/*
 * Copyright (C) 2003 Sistina Software.
 * Copyright (C) 2004-2005 Red Hat, Inc. All rights reserved.
 *
 * Module Author: Heinz Mauelshagen
 *
 * This file is released under the GPL.
 *
 * Round-robin path selector.
 */

#include <linux/device-mapper.h>

#include "dm-path-selector.h"

#include <linux/slab.h>
#include <linux/module.h>

#define DM_MSG_PREFIX
#define RR_MIN_IO
#define RR_VERSION

/*
 *---------------------------------------------------------------
 * Path-handling code, paths are held in lists
 *---------------------------------------------------------------
 */
struct path_info {};

static void free_paths(struct list_head *paths)
{}

/*
 *---------------------------------------------------------------
 * Round-robin selector
 *---------------------------------------------------------------
 */
struct selector {};

static struct selector *alloc_selector(void)
{}

static int rr_create(struct path_selector *ps, unsigned int argc, char **argv)
{}

static void rr_destroy(struct path_selector *ps)
{}

static int rr_status(struct path_selector *ps, struct dm_path *path,
		     status_type_t type, char *result, unsigned int maxlen)
{}

/*
 * Called during initialisation to register each path with an
 * optional repeat_count.
 */
static int rr_add_path(struct path_selector *ps, struct dm_path *path,
		       int argc, char **argv, char **error)
{}

static void rr_fail_path(struct path_selector *ps, struct dm_path *p)
{}

static int rr_reinstate_path(struct path_selector *ps, struct dm_path *p)
{}

static struct dm_path *rr_select_path(struct path_selector *ps, size_t nr_bytes)
{}

static struct path_selector_type rr_ps =;

static int __init dm_rr_init(void)
{}

static void __exit dm_rr_exit(void)
{}

module_init();
module_exit(dm_rr_exit);

MODULE_DESCRIPTION();
MODULE_AUTHOR();
MODULE_LICENSE();