1 /* $Id$
2  *
3  * This file is subject to the terms and conditions of the GNU General Public
4  * License.  See the file "COPYING" in the main directory of this archive
5  * for more details.
6  *
7  * Copyright (C) 1992 - 1997, 2000-2003 Silicon Graphics, Inc. All rights reserved.
8  */
9 #ifndef _ASM_IA64_SN_PRIO_H
10 #define _ASM_IA64_SN_PRIO_H
11 
12 #include <linux/types.h>
13 
14 /*
15  * Priority I/O function prototypes and macro definitions
16  */
17 
18 typedef long long bandwidth_t;
19 
20 /* These should be the same as FREAD/FWRITE */
21 #define PRIO_READ_ALLOCATE	0x1
22 #define PRIO_WRITE_ALLOCATE	0x2
23 #define PRIO_READWRITE_ALLOCATE	(PRIO_READ_ALLOCATE | PRIO_WRITE_ALLOCATE)
24 
25 extern int prioSetBandwidth (int		/* fd */,
26                              int		/* alloc_type */,
27                              bandwidth_t	/* bytes_per_sec */,
28                              pid_t *		/* pid */);
29 extern int prioGetBandwidth (int		/* fd */,
30                              bandwidth_t *	/* read_bw */,
31                              bandwidth_t *	/* write_bw */);
32 extern int prioLock (pid_t *);
33 extern int prioUnlock (void);
34 
35 /* Error returns */
36 #define PRIO_SUCCESS     0
37 #define PRIO_FAIL       (-1)
38 
39 #endif /* _ASM_IA64_SN_PRIO_H */
40