source: trunk/packages/xen-3.1/xen-3.1/extras/mini-os/include/err.h @ 34

Last change on this file since 34 was 34, checked in by hartmans, 18 years ago

Add xen and xen-common

File size: 630 bytes
Line 
1#ifndef _ERR_H
2#define _ERR_H
3
4#include <errno.h>
5
6/*
7 * Kernel pointers have redundant information, so we can use a
8 * scheme where we can return either an error code or a dentry
9 * pointer with the same return value.
10 *
11 * This should be a per-architecture thing, to allow different
12 * error and pointer decisions.
13 */
14#define IS_ERR_VALUE(x) ((x) > (unsigned long)-1000L)
15
16static inline void *ERR_PTR(long error)
17{
18        return (void *) error;
19}
20
21static inline long PTR_ERR(const void *ptr)
22{
23        return (long) ptr;
24}
25
26static inline long IS_ERR(const void *ptr)
27{
28        return IS_ERR_VALUE((unsigned long)ptr);
29}
30
31#endif /* _LINUX_ERR_H */
Note: See TracBrowser for help on using the repository browser.