dtraceall.c revision 287090
10Sduke/*
211884Sykantser * Copyright (C) 2008 John Birrell <jb@freebsd.org>
30Sduke *
40Sduke * Redistribution and use in source and binary forms, with or without
50Sduke * modification, are permitted provided that the following conditions
60Sduke * are met:
70Sduke * 1. Redistributions of source code must retain the above copyright
80Sduke *    notice, this list of conditions and the following disclaimer.
90Sduke * 2. Redistributions in binary form must reproduce the above copyright
100Sduke *    notice, this list of conditions and the following disclaimer in the
110Sduke *    documentation and/or other materials provided with the distribution.
120Sduke *
130Sduke * THIS SOFTWARE IS PROVIDED BY AUTHOR AND CONTRIBUTORS ``AS IS'' AND
140Sduke * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
150Sduke * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
160Sduke * ARE DISCLAIMED.  IN NO EVENT SHALL AUTHOR OR CONTRIBUTORS BE LIABLE
170Sduke * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
180Sduke * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
192362Sohair * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
202362Sohair * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
212362Sohair * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
220Sduke * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
230Sduke * SUCH DAMAGE.
240Sduke *
2516958Siignatyev * $FreeBSD: stable/10/sys/modules/dtrace/dtraceall/dtraceall.c 287090 2015-08-24 03:41:14Z julian $
2616958Siignatyev */
2716958Siignatyev
2816958Siignatyev#include <sys/cdefs.h>
2916958Siignatyev#include <sys/param.h>
3016958Siignatyev#include <sys/systm.h>
310Sduke#include <sys/conf.h>
3216958Siignatyev#include <sys/kernel.h>
3316958Siignatyev#include <sys/module.h>
3416958Siignatyev#include <sys/errno.h>
350Sduke#include "opt_compat.h"
360Sduke#include "opt_nfs.h"
370Sduke
380Sdukestatic int
390Sdukedtraceall_modevent(module_t mod __unused, int type, void *data __unused)
400Sduke{
410Sduke	int error = 0;
420Sduke
430Sduke	switch (type) {
440Sduke	case MOD_LOAD:
450Sduke		break;
460Sduke
470Sduke	case MOD_UNLOAD:
480Sduke		break;
490Sduke
500Sduke	case MOD_SHUTDOWN:
510Sduke		break;
520Sduke
530Sduke	default:
540Sduke		error = EOPNOTSUPP;
550Sduke		break;
560Sduke
570Sduke	}
580Sduke
590Sduke	return (error);
600Sduke}
610Sduke
620SdukeDEV_MODULE(dtraceall, dtraceall_modevent, NULL);
630SdukeMODULE_VERSION(dtraceall, 1);
640Sduke
650Sduke/* All the DTrace modules should be dependencies here: */
660SdukeMODULE_DEPEND(dtraceall, opensolaris, 1, 1, 1);
670SdukeMODULE_DEPEND(dtraceall, dtrace, 1, 1, 1);
680SdukeMODULE_DEPEND(dtraceall, dtmalloc, 1, 1, 1);
690Sduke#if defined(NFSCL)
700SdukeMODULE_DEPEND(dtraceall, dtnfscl, 1, 1, 1);
710Sduke#endif
720Sduke#if defined(NFSCLIENT)
730SdukeMODULE_DEPEND(dtraceall, dtnfsclient, 1, 1, 1);
740Sduke#endif
750Sduke#if defined(__amd64__) || defined(__i386__) || defined(__powerpc__)
760SdukeMODULE_DEPEND(dtraceall, fbt, 1, 1, 1);
770Sduke#endif
780Sduke#if defined(__amd64__) || defined(__i386__)
790SdukeMODULE_DEPEND(dtraceall, fasttrap, 1, 1, 1);
800Sduke#endif
810SdukeMODULE_DEPEND(dtraceall, lockstat, 1, 1, 1);
820SdukeMODULE_DEPEND(dtraceall, sdt, 1, 1, 1);
830SdukeMODULE_DEPEND(dtraceall, systrace, 1, 1, 1);
840Sduke#if defined(COMPAT_FREEBSD32)
850SdukeMODULE_DEPEND(dtraceall, systrace_freebsd32, 1, 1, 1);
860Sduke#endif
870SdukeMODULE_DEPEND(dtraceall, profile, 1, 1, 1);
880Sduke