11ac2776bSEd Maste /* $FreeBSD$ */ 26e481f83SEd Maste 3d595c5c0SEd Maste #include <sys/cdefs.h> 470890254SEdward Tomasz Napierala __FBSDID("$FreeBSD$"); 56e481f83SEd Maste 670890254SEdward Tomasz Napierala #include <sys/param.h> 770890254SEdward Tomasz Napierala #include <sys/errno.h> 870890254SEdward Tomasz Napierala #include <sys/systm.h> 970890254SEdward Tomasz Napierala 1070890254SEdward Tomasz Napierala #include <compat/linux/linux.h> 111a8577faSEdward Tomasz Napierala #include <compat/linux/linux_errno.h> 121ac2776bSEd Maste #include <compat/linux/linux_errno.inc> 1370890254SEdward Tomasz Napierala 1470890254SEdward Tomasz Napierala int 15866b1f51SEdward Tomasz Napierala bsd_to_linux_errno(int error) 1670890254SEdward Tomasz Napierala { 1770890254SEdward Tomasz Napierala 1870890254SEdward Tomasz Napierala KASSERT(error >= 0 && error <= ELAST, 1970890254SEdward Tomasz Napierala ("%s: bad error %d", __func__, error)); 2070890254SEdward Tomasz Napierala 2170890254SEdward Tomasz Napierala return (linux_errtbl[error]); 2270890254SEdward Tomasz Napierala } 231a8577faSEdward Tomasz Napierala 241a8577faSEdward Tomasz Napierala #ifdef INVARIANTS 251a8577faSEdward Tomasz Napierala void 261a8577faSEdward Tomasz Napierala linux_check_errtbl(void) 271a8577faSEdward Tomasz Napierala { 281a8577faSEdward Tomasz Napierala int i; 291a8577faSEdward Tomasz Napierala 301a8577faSEdward Tomasz Napierala for (i = 1; i < sizeof(linux_errtbl); i++) { 311a8577faSEdward Tomasz Napierala KASSERT(linux_errtbl[i] != 0, 321a8577faSEdward Tomasz Napierala ("%s: linux_errtbl[%d] == 0", __func__, i)); 331a8577faSEdward Tomasz Napierala } 341a8577faSEdward Tomasz Napierala } 351a8577faSEdward Tomasz Napierala #endif 36