]>
Commit | Line | Data |
---|---|---|
ec26815a | 1 | /* miscellaneous bits |
1da177e4 | 2 | * |
08e0e7c8 | 3 | * Copyright (C) 2002, 2007 Red Hat, Inc. All Rights Reserved. |
1da177e4 LT |
4 | * Written by David Howells (dhowells@redhat.com) |
5 | * | |
6 | * This program is free software; you can redistribute it and/or | |
7 | * modify it under the terms of the GNU General Public License | |
8 | * as published by the Free Software Foundation; either version | |
9 | * 2 of the License, or (at your option) any later version. | |
10 | */ | |
11 | ||
12 | #include <linux/kernel.h> | |
13 | #include <linux/module.h> | |
14 | #include <linux/errno.h> | |
1da177e4 | 15 | #include "internal.h" |
08e0e7c8 | 16 | #include "afs_fs.h" |
1da177e4 | 17 | |
1da177e4 LT |
18 | /* |
19 | * convert an AFS abort code to a Linux error number | |
20 | */ | |
08e0e7c8 | 21 | int afs_abort_to_error(u32 abort_code) |
1da177e4 | 22 | { |
08e0e7c8 DH |
23 | switch (abort_code) { |
24 | case 13: return -EACCES; | |
416351f2 | 25 | case 27: return -EFBIG; |
260a9803 | 26 | case 30: return -EROFS; |
1da177e4 LT |
27 | case VSALVAGE: return -EIO; |
28 | case VNOVNODE: return -ENOENT; | |
08e0e7c8 | 29 | case VNOVOL: return -ENOMEDIUM; |
1da177e4 LT |
30 | case VVOLEXISTS: return -EEXIST; |
31 | case VNOSERVICE: return -EIO; | |
32 | case VOFFLINE: return -ENOENT; | |
33 | case VONLINE: return -EEXIST; | |
34 | case VDISKFULL: return -ENOSPC; | |
35 | case VOVERQUOTA: return -EDQUOT; | |
36 | case VBUSY: return -EBUSY; | |
37 | case VMOVED: return -ENXIO; | |
e8d6c554 | 38 | case 0x2f6df0a: return -EWOULDBLOCK; |
260a9803 DH |
39 | case 0x2f6df0c: return -EACCES; |
40 | case 0x2f6df0f: return -EBUSY; | |
41 | case 0x2f6df10: return -EEXIST; | |
42 | case 0x2f6df11: return -EXDEV; | |
43 | case 0x2f6df13: return -ENOTDIR; | |
44 | case 0x2f6df14: return -EISDIR; | |
45 | case 0x2f6df15: return -EINVAL; | |
46 | case 0x2f6df1a: return -EFBIG; | |
47 | case 0x2f6df1b: return -ENOSPC; | |
48 | case 0x2f6df1d: return -EROFS; | |
49 | case 0x2f6df1e: return -EMLINK; | |
50 | case 0x2f6df20: return -EDOM; | |
51 | case 0x2f6df21: return -ERANGE; | |
52 | case 0x2f6df22: return -EDEADLK; | |
53 | case 0x2f6df23: return -ENAMETOOLONG; | |
54 | case 0x2f6df24: return -ENOLCK; | |
55 | case 0x2f6df26: return -ENOTEMPTY; | |
56 | case 0x2f6df78: return -EDQUOT; | |
57 | default: return -EREMOTEIO; | |
1da177e4 | 58 | } |
ec26815a | 59 | } |