1/* $FreeBSD$ */
2
3#include <sys/cdefs.h>
4__FBSDID("$FreeBSD$");
5
6#include <sys/param.h>
7#include <sys/errno.h>
8#include <sys/systm.h>
9
10#include <compat/linux/linux.h>
11#include <compat/linux/linux_errno.h>
12#include <compat/linux/linux_errno.inc>
13
14int
15bsd_to_linux_errno(int error)
16{
17
18	KASSERT(error >= 0 && error <= ELAST,
19	    ("%s: bad error %d", __func__, error));
20
21	return (linux_errtbl[error]);
22}
23
24#ifdef INVARIANTS
25void
26linux_check_errtbl(void)
27{
28	int i;
29
30	for (i = 1; i < nitems(linux_errtbl); i++) {
31		KASSERT(linux_errtbl[i] != 0,
32		    ("%s: linux_errtbl[%d] == 0", __func__, i));
33	}
34
35	for (i = 1; i < nitems(linux_to_bsd_errtbl); i++) {
36		KASSERT(linux_to_bsd_errtbl[i] != 0,
37		    ("%s: linux_to_bsd_errtbl[%d] == 0", __func__, i));
38	}
39
40}
41#endif
42