Merge git://git.kernel.org/pub/scm/linux/kernel/git/brodo/pcmcia-fixes-2.6
[deliverable/linux.git] / include / linux / err.h
CommitLineData
1da177e4
LT
1#ifndef _LINUX_ERR_H
2#define _LINUX_ERR_H
3
4#include <linux/compiler.h>
5
6#include <asm/errno.h>
7
8/*
9 * Kernel pointers have redundant information, so we can use a
10 * scheme where we can return either an error code or a dentry
11 * pointer with the same return value.
12 *
13 * This should be a per-architecture thing, to allow different
14 * error and pointer decisions.
15 */
07ab67c8
LT
16#define IS_ERR_VALUE(x) unlikely((x) > (unsigned long)-1000L)
17
1da177e4
LT
18static inline void *ERR_PTR(long error)
19{
20 return (void *) error;
21}
22
23static inline long PTR_ERR(const void *ptr)
24{
25 return (long) ptr;
26}
27
28static inline long IS_ERR(const void *ptr)
29{
07ab67c8 30 return IS_ERR_VALUE((unsigned long)ptr);
1da177e4
LT
31}
32
33#endif /* _LINUX_ERR_H */
This page took 0.111671 seconds and 5 git commands to generate.