Deleted Added
full compact
linprocfs.c (293520) linprocfs.c (293527)
1/*-
2 * Copyright (c) 2000 Dag-Erling Co��dan Sm��rgrav
3 * Copyright (c) 1999 Pierre Beyssac
4 * Copyright (c) 1993 Jan-Simon Pendry
5 * Copyright (c) 1993
6 * The Regents of the University of California. All rights reserved.
7 *
8 * This code is derived from software contributed to Berkeley by

--- 25 unchanged lines hidden (view full) ---

34 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
35 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
36 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
37 * SUCH DAMAGE.
38 *
39 * @(#)procfs_status.c 8.4 (Berkeley) 6/15/94
40 */
41
1/*-
2 * Copyright (c) 2000 Dag-Erling Co��dan Sm��rgrav
3 * Copyright (c) 1999 Pierre Beyssac
4 * Copyright (c) 1993 Jan-Simon Pendry
5 * Copyright (c) 1993
6 * The Regents of the University of California. All rights reserved.
7 *
8 * This code is derived from software contributed to Berkeley by

--- 25 unchanged lines hidden (view full) ---

34 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
35 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
36 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
37 * SUCH DAMAGE.
38 *
39 * @(#)procfs_status.c 8.4 (Berkeley) 6/15/94
40 */
41
42#include "opt_compat.h"
43
44#include <sys/cdefs.h>
42#include <sys/cdefs.h>
45__FBSDID("$FreeBSD: stable/10/sys/compat/linprocfs/linprocfs.c 293520 2016-01-09 15:53:50Z dchagin $");
43__FBSDID("$FreeBSD: stable/10/sys/compat/linprocfs/linprocfs.c 293527 2016-01-09 16:08:22Z dchagin $");
46
47#include <sys/param.h>
48#include <sys/queue.h>
49#include <sys/blist.h>
50#include <sys/conf.h>
51#include <sys/exec.h>
52#include <sys/fcntl.h>
53#include <sys/filedesc.h>

--- 9 unchanged lines hidden (view full) ---

63#include <sys/proc.h>
64#include <sys/ptrace.h>
65#include <sys/resourcevar.h>
66#include <sys/sbuf.h>
67#include <sys/sem.h>
68#include <sys/smp.h>
69#include <sys/socket.h>
70#include <sys/sysctl.h>
44
45#include <sys/param.h>
46#include <sys/queue.h>
47#include <sys/blist.h>
48#include <sys/conf.h>
49#include <sys/exec.h>
50#include <sys/fcntl.h>
51#include <sys/filedesc.h>

--- 9 unchanged lines hidden (view full) ---

61#include <sys/proc.h>
62#include <sys/ptrace.h>
63#include <sys/resourcevar.h>
64#include <sys/sbuf.h>
65#include <sys/sem.h>
66#include <sys/smp.h>
67#include <sys/socket.h>
68#include <sys/sysctl.h>
69#include <sys/sysent.h>
71#include <sys/systm.h>
72#include <sys/time.h>
73#include <sys/tty.h>
74#include <sys/user.h>
75#include <sys/uuid.h>
76#include <sys/vmmeter.h>
77#include <sys/vnode.h>
78#include <sys/bus.h>
79
80#include <net/if.h>
70#include <sys/systm.h>
71#include <sys/time.h>
72#include <sys/tty.h>
73#include <sys/user.h>
74#include <sys/uuid.h>
75#include <sys/vmmeter.h>
76#include <sys/vnode.h>
77#include <sys/bus.h>
78
79#include <net/if.h>
81#include <net/vnet.h>
80#include <net/if_types.h>
82
83#include <vm/vm.h>
84#include <vm/vm_extern.h>
85#include <vm/pmap.h>
86#include <vm/vm_map.h>
87#include <vm/vm_param.h>
88#include <vm/vm_object.h>
89#include <vm/swap_pager.h>
90
91#include <machine/clock.h>
92
93#include <geom/geom.h>
94#include <geom/geom_int.h>
95
96#if defined(__i386__) || defined(__amd64__)
97#include <machine/cputypes.h>
98#include <machine/md_var.h>
99#endif /* __i386__ || __amd64__ */
100
81
82#include <vm/vm.h>
83#include <vm/vm_extern.h>
84#include <vm/pmap.h>
85#include <vm/vm_map.h>
86#include <vm/vm_param.h>
87#include <vm/vm_object.h>
88#include <vm/swap_pager.h>
89
90#include <machine/clock.h>
91
92#include <geom/geom.h>
93#include <geom/geom_int.h>
94
95#if defined(__i386__) || defined(__amd64__)
96#include <machine/cputypes.h>
97#include <machine/md_var.h>
98#endif /* __i386__ || __amd64__ */
99
101#ifdef COMPAT_FREEBSD32
102#include <compat/freebsd32/freebsd32_util.h>
103#endif
104
105#include <compat/linux/linux_ioctl.h>
106#include <compat/linux/linux_mib.h>
107#include <compat/linux/linux_misc.h>
108#include <compat/linux/linux_util.h>
109#include <fs/pseudofs/pseudofs.h>
110#include <fs/procfs/procfs.h>
111
112/*
113 * Various conversion macros

--- 974 unchanged lines hidden (view full) ---

1088 }
1089 vm_map_unlock_read(map);
1090 vmspace_free(vm);
1091
1092 return (error);
1093}
1094
1095/*
100#include <compat/linux/linux_mib.h>
101#include <compat/linux/linux_misc.h>
102#include <compat/linux/linux_util.h>
103#include <fs/pseudofs/pseudofs.h>
104#include <fs/procfs/procfs.h>
105
106/*
107 * Various conversion macros

--- 974 unchanged lines hidden (view full) ---

1082 }
1083 vm_map_unlock_read(map);
1084 vmspace_free(vm);
1085
1086 return (error);
1087}
1088
1089/*
1090 * Criteria for interface name translation
1091 */
1092#define IFP_IS_ETH(ifp) (ifp->if_type == IFT_ETHER)
1093
1094static int
1095linux_ifname(struct ifnet *ifp, char *buffer, size_t buflen)
1096{
1097 struct ifnet *ifscan;
1098 int ethno;
1099
1100 IFNET_RLOCK_ASSERT();
1101
1102 /* Short-circuit non ethernet interfaces */
1103 if (!IFP_IS_ETH(ifp))
1104 return (strlcpy(buffer, ifp->if_xname, buflen));
1105
1106 /* Determine the (relative) unit number for ethernet interfaces */
1107 ethno = 0;
1108 TAILQ_FOREACH(ifscan, &V_ifnet, if_link) {
1109 if (ifscan == ifp)
1110 return (snprintf(buffer, buflen, "eth%d", ethno));
1111 if (IFP_IS_ETH(ifscan))
1112 ethno++;
1113 }
1114
1115 return (0);
1116}
1117
1118/*
1096 * Filler function for proc/net/dev
1097 */
1098static int
1099linprocfs_donetdev(PFS_FILL_ARGS)
1100{
1101 char ifname[16]; /* XXX LINUX_IFNAMSIZ */
1102 struct ifnet *ifp;
1103

--- 130 unchanged lines hidden (view full) ---

1234 */
1235static int
1236linprocfs_doscsiscsi(PFS_FILL_ARGS)
1237{
1238
1239 return (0);
1240}
1241
1119 * Filler function for proc/net/dev
1120 */
1121static int
1122linprocfs_donetdev(PFS_FILL_ARGS)
1123{
1124 char ifname[16]; /* XXX LINUX_IFNAMSIZ */
1125 struct ifnet *ifp;
1126

--- 130 unchanged lines hidden (view full) ---

1257 */
1258static int
1259linprocfs_doscsiscsi(PFS_FILL_ARGS)
1260{
1261
1262 return (0);
1263}
1264
1242extern struct cdevsw *cdevsw[];
1243
1244/*
1245 * Filler function for proc/devices
1246 */
1247static int
1248linprocfs_dodevices(PFS_FILL_ARGS)
1249{
1250 char *char_devices;
1251 sbuf_printf(sb, "Character devices:\n");

--- 198 unchanged lines hidden (view full) ---

1450linprocfs_uninit(PFS_INIT_ARGS)
1451{
1452
1453 /* nothing to do, pseudofs will GC */
1454 return (0);
1455}
1456
1457PSEUDOFS(linprocfs, 1, 0);
1265/*
1266 * Filler function for proc/devices
1267 */
1268static int
1269linprocfs_dodevices(PFS_FILL_ARGS)
1270{
1271 char *char_devices;
1272 sbuf_printf(sb, "Character devices:\n");

--- 198 unchanged lines hidden (view full) ---

1471linprocfs_uninit(PFS_INIT_ARGS)
1472{
1473
1474 /* nothing to do, pseudofs will GC */
1475 return (0);
1476}
1477
1478PSEUDOFS(linprocfs, 1, 0);
1479#if defined(__amd64__)
1480MODULE_DEPEND(linprocfs, linux_common, 1, 1, 1);
1481#else
1458MODULE_DEPEND(linprocfs, linux, 1, 1, 1);
1482MODULE_DEPEND(linprocfs, linux, 1, 1, 1);
1483#endif
1459MODULE_DEPEND(linprocfs, procfs, 1, 1, 1);
1460MODULE_DEPEND(linprocfs, sysvmsg, 1, 1, 1);
1461MODULE_DEPEND(linprocfs, sysvsem, 1, 1, 1);
1484MODULE_DEPEND(linprocfs, procfs, 1, 1, 1);
1485MODULE_DEPEND(linprocfs, sysvmsg, 1, 1, 1);
1486MODULE_DEPEND(linprocfs, sysvsem, 1, 1, 1);