4 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License version 2 only,
8 * as published by the Free Software Foundation.
10 * This program is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 * GNU General Public License version 2 for more details.
15 * You should have received a copy of the GNU General Public License
16 * version 2 along with this program; If not, see
17 * http://www.gnu.org/licenses/gpl-2.0.html
22 * Copyright (c) 2014, Intel Corporation.
24 * Copyright 2012 Xyratex Technology Limited
28 * Network Request Scheduler (NRS) First-in First-out (FIFO) policy
32 #ifndef _LUSTRE_NRS_FIFO_H
33 #define _LUSTRE_NRS_FIFO_H
39 * This policy is a logical wrapper around previous, non-NRS functionality.
40 * It dispatches RPCs in the same order as they arrive from the network. This
41 * policy is currently used as the fallback policy, and the only enabled policy
42 * on all NRS heads of all PTLRPC service partitions.
47 * Private data structure for the FIFO policy
49 struct nrs_fifo_head {
51 * Resource object for policy instance.
53 struct ptlrpc_nrs_resource fh_res;
55 * List of queued requests.
57 struct list_head fh_list;
59 * For debugging purposes.
65 struct list_head fr_list;