]>
Commit | Line | Data |
---|---|---|
4b393c50 | 1 | /* |
716154c5 BB |
2 | * Copyright (C) 2007-2010 Lawrence Livermore National Security, LLC. |
3 | * Copyright (C) 2007 The Regents of the University of California. | |
4 | * Produced at Lawrence Livermore National Laboratory (cf, DISCLAIMER). | |
5 | * Written by Brian Behlendorf <behlendorf1@llnl.gov>. | |
6 | * UCRL-CODE-235197 | |
7 | * | |
8 | * This file is part of the SPL, Solaris Porting Layer. | |
3d6af2dd | 9 | * For details, see <http://zfsonlinux.org/>. |
716154c5 BB |
10 | * |
11 | * The SPL is free software; you can redistribute it and/or modify it | |
12 | * under the terms of the GNU General Public License as published by the | |
13 | * Free Software Foundation; either version 2 of the License, or (at your | |
14 | * option) any later version. | |
15 | * | |
16 | * The SPL is distributed in the hope that it will be useful, but WITHOUT | |
17 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or | |
18 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License | |
19 | * for more details. | |
20 | * | |
21 | * You should have received a copy of the GNU General Public License along | |
22 | * with the SPL. If not, see <http://www.gnu.org/licenses/>. | |
4b393c50 | 23 | */ |
716154c5 | 24 | |
09b414e8 | 25 | #ifndef _SPL_TYPES_H |
26 | #define _SPL_TYPES_H | |
f1ca4da6 | 27 | |
dbb484ec | 28 | #include <linux/types.h> |
14c5326c | 29 | #include <sys/sysmacros.h> |
dbb484ec | 30 | |
6a6cafbe | 31 | #ifndef ULLONG_MAX |
32 | #define ULLONG_MAX (~0ULL) | |
33 | #endif | |
34 | ||
35 | #ifndef LLONG_MAX | |
36 | #define LLONG_MAX ((long long)(~0ULL>>1)) | |
37 | #endif | |
38 | ||
57d86234 | 39 | typedef enum { B_FALSE=0, B_TRUE=1 } boolean_t; |
f1ca4da6 | 40 | typedef unsigned long intptr_t; |
41 | typedef unsigned long ulong_t; | |
42 | typedef unsigned int uint_t; | |
43 | typedef unsigned char uchar_t; | |
44 | typedef unsigned long long u_longlong_t; | |
45 | typedef unsigned long long u_offset_t; | |
46 | typedef unsigned long long rlim64_t; | |
47 | typedef long long longlong_t; | |
48 | typedef long long offset_t; | |
3d4ea0ce | 49 | typedef struct task_struct kthread_t; |
ae4c36ad | 50 | typedef struct task_struct proc_t; |
f1ca4da6 | 51 | typedef short pri_t; |
dbb484ec | 52 | typedef struct timespec timestruc_t; /* definition per SVr4 */ |
79b31f36 | 53 | typedef struct timespec timespec_t; |
dbb484ec | 54 | typedef longlong_t hrtime_t; |
a713518f | 55 | typedef unsigned short ushort_t; |
56 | typedef u_longlong_t len_t; | |
57 | typedef longlong_t diskaddr_t; | |
58 | typedef ushort_t o_mode_t; | |
73e540a0 | 59 | typedef uint_t major_t; |
60 | typedef uint_t minor_t; | |
7adbea41 BB |
61 | typedef ulong_t pgcnt_t; |
62 | typedef long spgcnt_t; | |
8e2140b7 | 63 | typedef short index_t; |
32c6147d | 64 | typedef int id_t; |
f1ca4da6 | 65 | |
ae4c36ad BB |
66 | extern proc_t p0; |
67 | ||
09b414e8 | 68 | #endif /* _SPL_TYPES_H */ |