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