Well folks, this is it - The second stage of the removal for build support

for LKM's..
This commit is contained in:
Peter Wemm 1999-04-17 08:36:07 +00:00
parent 6637b74945
commit e91896117b
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=45739
22 changed files with 27 additions and 160 deletions

View File

@ -26,7 +26,7 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
* $Id: cam_xpt.c,v 1.49 1999/03/14 05:15:38 ken Exp $
* $Id: cam_xpt.c,v 1.50 1999/04/07 22:57:48 gibbs Exp $
*/
#include <sys/param.h>
#include <sys/systm.h>
@ -5859,7 +5859,7 @@ xpt_finishconfig(struct cam_periph *periph, union ccb *done_ccb)
if (busses_to_config == 0) {
/* Register all the peripheral drivers */
/* XXX This will have to change when we have LKMs */
/* XXX This will have to change when we have loadable modules */
p_drv = (struct periph_driver **)periphdriver_set.ls_items;
for (i = 0; p_drv[i] != NULL; i++) {
(*p_drv[i]->init)();

View File

@ -230,7 +230,7 @@ exec_svr4_imgact(imgp)
/*
* Tell kern_execve.c about it, with a little help from the linker.
* Since `const' objects end up in the text segment, TEXT_SET is the
* correct directive to use. Do not staticize; used by Linux LKM.
* correct directive to use.
*/
const struct execsw svr4_execsw = { exec_svr4_imgact, "svr4 ELF" };
EXEC_SET(execsw_set, svr4_execsw);

View File

@ -23,7 +23,7 @@
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
* $Id: pcivar.h,v 1.25 1999/01/19 23:29:20 se Exp $
* $Id: pcivar.h,v 1.26 1999/04/16 21:22:52 peter Exp $
*
*/
@ -282,11 +282,6 @@ struct pci_device {
int (*pd_shutdown) (int, int);
};
struct pci_lkm {
struct pci_device *dvp;
struct pci_lkm *next;
};
#ifdef __i386__
typedef u_short pci_port_t;
#else
@ -295,7 +290,6 @@ typedef u_int pci_port_t;
u_long pci_conf_read (pcici_t tag, u_long reg);
void pci_conf_write (pcici_t tag, u_long reg, u_long data);
void pci_configure (void);
int pci_map_port (pcici_t tag, u_long reg, pci_port_t* pa);
int pci_map_mem (pcici_t tag, u_long reg, vm_offset_t* va, vm_offset_t* pa);
int pci_map_dense (pcici_t tag, u_long reg, vm_offset_t* va, vm_offset_t* pa);
@ -305,7 +299,6 @@ int pci_map_int (pcici_t tag, pci_inthand_t *handler, void *arg,
int pci_map_int_right(pcici_t cfg, pci_inthand_t *handler, void *arg,
intrmask_t *maskptr, u_int flags);
int pci_unmap_int (pcici_t tag);
int pci_register_lkm (struct pci_device *dvp, int if_revision);
#endif /* PCI_COMPAT */
#endif /* _PCIVAR_H_ */

View File

@ -1,5 +1,5 @@
/* $OpenBSD: if_tx.c,v 1.3 1998/10/10 04:30:09 jason Exp $ */
/* $Id: if_tx.c,v 1.22 1999/03/14 08:30:23 semenu Exp $ */
/* $Id: if_tx.c,v 1.23 1999/03/31 13:50:52 nsayer Exp $ */
/*-
* Copyright (c) 1997 Semen Ustimenko (semen@iclub.nsu.ru)
@ -2036,10 +2036,4 @@ epic_dump_state __P((
);
}
}
#if 0
static void epic_kldinit (void * a) {
pci_register_lkm (&txdevice, 0);
}
PSEUDO_SET(epic_kldinit,if_tx);
#endif
#endif /* NPCI > 0 */

View File

@ -36,7 +36,7 @@
* SUCH DAMAGE.
*
* @(#)kern_exit.c 8.7 (Berkeley) 2/12/94
* $Id: kern_exit.c,v 1.76 1999/03/02 00:28:08 julian Exp $
* $Id: kern_exit.c,v 1.77 1999/03/11 21:53:12 bde Exp $
*/
#include "opt_compat.h"
@ -164,7 +164,7 @@ exit1(p, rv)
STOPEVENT(p, S_EXIT, rv);
/*
* Check if any LKMs need anything done at process exit.
* Check if any loadable modules need anything done at process exit.
* e.g. SYSV IPC stuff
* XXX what if one of these generates an error?
*/

View File

@ -36,7 +36,7 @@
* SUCH DAMAGE.
*
* @(#)kern_fork.c 8.6 (Berkeley) 4/8/94
* $Id: kern_fork.c,v 1.56 1999/03/02 00:28:08 julian Exp $
* $Id: kern_fork.c,v 1.57 1999/04/06 03:03:34 peter Exp $
*/
#include "opt_ktrace.h"
@ -448,7 +448,7 @@ fork1(p1, flags)
vm_fork(p1, p2, flags);
/*
* Both processes are set up, now check if any LKMs want
* Both processes are set up, now check if any loadable modules want
* to adjust anything.
* What if they have an error? XXX
*/

View File

@ -124,7 +124,7 @@ syscall_not_present(struct proc *p, const char *s, struct nosys_args *uap)
#if !defined(_KPOSIX_PRIORITY_SCHEDULING)
/* Not configured but loadable via an LKM:
/* Not configured but loadable via a module:
*/
static int sched_attach(void)

View File

@ -41,7 +41,7 @@
*
* @(#)subr_autoconf.c 8.1 (Berkeley) 6/10/93
*
* $Id: subr_autoconf.c,v 1.7 1998/12/04 22:54:51 archie Exp $
* $Id: subr_autoconf.c,v 1.8 1999/01/08 17:31:11 eivind Exp $
*/
#include <sys/param.h>
@ -395,7 +395,7 @@ config_intrhook_establish(hook)
}
TAILQ_INSERT_TAIL(&intr_config_hook_list, hook, ich_links);
if (cold == 0)
/* XXX Sufficient for LKMs loaded after initial config??? */
/* XXX Sufficient for modules loaded after initial config??? */
run_interrupt_driven_config_hooks(NULL);
return (0);
}

View File

@ -253,7 +253,7 @@ static moduledata_t pcic_mod = {
DECLARE_MODULE(pcic, pcic_mod, SI_SUB_CONFIGURE, SI_ORDER_MIDDLE);
/*
* pcic_unload - Called when unloading a LKM.
* pcic_unload - Called when unloading a kernel module.
* Disables interrupts and resets PCIC.
*/
static int

View File

@ -35,7 +35,6 @@
#include <sys/mount.h>
#include <sys/sysent.h>
#include <sys/exec.h>
#include <sys/lkm.h>
#include <i386/isa/isa_device.h>

View File

@ -1,5 +1,5 @@
/* $OpenBSD: if_tx.c,v 1.3 1998/10/10 04:30:09 jason Exp $ */
/* $Id: if_tx.c,v 1.22 1999/03/14 08:30:23 semenu Exp $ */
/* $Id: if_tx.c,v 1.23 1999/03/31 13:50:52 nsayer Exp $ */
/*-
* Copyright (c) 1997 Semen Ustimenko (semen@iclub.nsu.ru)
@ -2036,10 +2036,4 @@ epic_dump_state __P((
);
}
}
#if 0
static void epic_kldinit (void * a) {
pci_register_lkm (&txdevice, 0);
}
PSEUDO_SET(epic_kldinit,if_tx);
#endif
#endif /* NPCI > 0 */

View File

@ -23,7 +23,7 @@
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
* $Id: pci_compat.c,v 1.21 1999/04/11 02:46:20 eivind Exp $
* $Id: pci_compat.c,v 1.22 1999/04/16 21:22:52 peter Exp $
*
*/
@ -340,23 +340,13 @@ pci_probedrv(pcicfgregs *cfg, struct pci_device *dvp)
return (NULL);
}
static struct pci_lkm *pci_lkm_head;
static struct pci_device*
pci_finddrv(pcicfgregs *cfg)
{
struct pci_device **dvpp;
struct pci_device *dvp = NULL;
struct pci_lkm *lkm;
drvname = NULL;
lkm = pci_lkm_head;
while (drvname == NULL && lkm != NULL) {
dvp = lkm->dvp;
drvname = pci_probedrv(cfg, dvp);
lkm = lkm->next;
}
dvpp = (struct pci_device **)pcidevice_set.ls_items;
while (drvname == NULL && (dvp = *dvpp++) != NULL)
drvname = pci_probedrv(cfg, dvp);
@ -417,43 +407,6 @@ pci_drvattach(struct pci_devinfo *dinfo)
/* ------------------------------------------------------------------------- */
static void
pci_rescan(void)
{
/* XXX do nothing, currently, soon to come ... */
}
int pci_register_lkm (struct pci_device *dvp, int if_revision)
{
struct pci_lkm *lkm;
if (if_revision != 0) {
return (-1);
}
if (dvp == NULL || dvp->pd_probe == NULL || dvp->pd_attach == NULL) {
return (-1);
}
lkm = malloc (sizeof (*lkm), M_DEVBUF, M_NOWAIT);
if (lkm == NULL) {
return (-1);
}
bzero(lkm, sizeof (*lkm));
lkm->dvp = dvp;
lkm->next = pci_lkm_head;
pci_lkm_head = lkm;
pci_rescan();
return (0);
}
void
pci_configure(void)
{
pci_probe(NULL);
}
/* ------------------------------------------------------------------------- */
#endif
#endif /* PCI_COMPAT */

View File

@ -23,7 +23,7 @@
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
* $Id: pcivar.h,v 1.25 1999/01/19 23:29:20 se Exp $
* $Id: pcivar.h,v 1.26 1999/04/16 21:22:52 peter Exp $
*
*/
@ -282,11 +282,6 @@ struct pci_device {
int (*pd_shutdown) (int, int);
};
struct pci_lkm {
struct pci_device *dvp;
struct pci_lkm *next;
};
#ifdef __i386__
typedef u_short pci_port_t;
#else
@ -295,7 +290,6 @@ typedef u_int pci_port_t;
u_long pci_conf_read (pcici_t tag, u_long reg);
void pci_conf_write (pcici_t tag, u_long reg, u_long data);
void pci_configure (void);
int pci_map_port (pcici_t tag, u_long reg, pci_port_t* pa);
int pci_map_mem (pcici_t tag, u_long reg, vm_offset_t* va, vm_offset_t* pa);
int pci_map_dense (pcici_t tag, u_long reg, vm_offset_t* va, vm_offset_t* pa);
@ -305,7 +299,6 @@ int pci_map_int (pcici_t tag, pci_inthand_t *handler, void *arg,
int pci_map_int_right(pcici_t cfg, pci_inthand_t *handler, void *arg,
intrmask_t *maskptr, u_int flags);
int pci_unmap_int (pcici_t tag);
int pci_register_lkm (struct pci_device *dvp, int if_revision);
#endif /* PCI_COMPAT */
#endif /* _PCIVAR_H_ */

View File

@ -124,7 +124,7 @@ syscall_not_present(struct proc *p, const char *s, struct nosys_args *uap)
#if !defined(_KPOSIX_PRIORITY_SCHEDULING)
/* Not configured but loadable via an LKM:
/* Not configured but loadable via a module:
*/
static int sched_attach(void)

View File

@ -41,7 +41,7 @@
#include <posix4/sched.h>
/* Generate syscall stubs for when something is optionally
* LKM'd. References "syscall_not_present".
* loadable as a module. References "syscall_not_present".
* XXX Good candidate for sys/syscall.h
*/
struct proc;

View File

@ -230,7 +230,7 @@ exec_svr4_imgact(imgp)
/*
* Tell kern_execve.c about it, with a little help from the linker.
* Since `const' objects end up in the text segment, TEXT_SET is the
* correct directive to use. Do not staticize; used by Linux LKM.
* correct directive to use.
*/
const struct execsw svr4_execsw = { exec_svr4_imgact, "svr4 ELF" };
EXEC_SET(execsw_set, svr4_execsw);

View File

@ -27,7 +27,7 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
* $Id: _posix.h,v 1.2 1998/03/28 11:50:31 dufault Exp $
* $Id: _posix.h,v 1.3 1998/10/16 03:55:01 peter Exp $
*/
/*
@ -41,7 +41,7 @@
#ifdef KERNEL
#if !defined(ACTUALLY_LKM_NOT_KERNEL) && !defined(KLD_MODULE)
#if !defined(KLD_MODULE)
#include "opt_posix.h"
#endif

View File

@ -36,7 +36,7 @@
* SUCH DAMAGE.
*
* @(#)exec.h 8.3 (Berkeley) 1/21/94
* $Id: exec.h,v 1.22 1999/01/29 06:47:53 dillon Exp $
* $Id: exec.h,v 1.23 1999/01/29 08:36:45 dillon Exp $
*/
#ifndef _SYS_EXEC_H_
@ -81,8 +81,6 @@ void exec_unmap_first_page __P((struct image_params *));
int exec_register __P((const struct execsw *));
int exec_unregister __P((const struct execsw *));
#ifndef LKM
/*
* note: name##_mod cannot be const storage because the
* linker_file_sysinit() function modifies _file in the
@ -121,6 +119,5 @@ int exec_unregister __P((const struct execsw *));
}; \
DECLARE_MODULE(name, name ## _mod, SI_SUB_EXEC, SI_ORDER_ANY)
#endif
#endif
#endif

View File

@ -39,7 +39,7 @@
* SUCH DAMAGE.
*
* @(#)kernel.h 8.3 (Berkeley) 1/21/94
* $Id: kernel.h,v 1.52 1999/01/29 08:12:49 dillon Exp $
* $Id: kernel.h,v 1.53 1999/01/29 23:18:50 dillon Exp $
*/
#ifndef _SYS_KERNEL_H_
@ -287,30 +287,8 @@ struct kproc_desc {
void kproc_start __P((const void *udata));
void sysinit_add __P((struct sysinit **set));
#ifdef PSEUDO_LKM
#include <sys/conf.h>
#include <sys/exec.h>
#include <sys/sysent.h>
#include <sys/lkm.h>
#define PSEUDO_SET(init, name) \
extern struct linker_set MODVNOPS; \
MOD_MISC(name); \
static int \
name ## _load(struct lkm_table *lkmtp, int cmd) \
{ init((void *)NULL /* XXX unused (?) */); return 0; } \
static int \
name ## _unload(struct lkm_table *lkmtp, int cmd) \
{ return EINVAL; } \
int \
name ## _mod(struct lkm_table *lkmtp, int cmd, int ver) { \
MOD_DISPATCH(name, lkmtp, cmd, ver, name ## _load, name ## _unload, \
lkm_nullcmd); } \
struct __hack
#else /* PSEUDO_LKM */
/*
* Compatibility. To be deprecated after LKM is updated.
* Compatibility. To be deprecated after LKM is removed.
*/
#include <sys/module.h>
#define PSEUDO_SET(sym, name) \
@ -335,8 +313,6 @@ void sysinit_add __P((struct sysinit **set));
}; \
DECLARE_MODULE(name, name ## _mod, SI_SUB_PSEUDO, SI_ORDER_ANY)
#endif /* PSEUDO_LKM */
extern struct linker_set execsw_set;
#endif /* !_SYS_KERNEL_H_*/

View File

@ -31,7 +31,7 @@
* SUCH DAMAGE.
*
* @(#)mount.h 8.21 (Berkeley) 5/20/95
* $Id: mount.h,v 1.73 1998/11/15 15:12:58 bde Exp $
* $Id: mount.h,v 1.74 1999/02/16 10:49:55 dfr Exp $
*/
#ifndef _SYS_MOUNT_H_
@ -325,32 +325,6 @@ struct vfsops {
(*(MP)->mnt_op->vfs_fhtovp)(MP, FIDP, NAM, VPP, EXFLG, CRED)
#define VFS_VPTOFH(VP, FIDP) (*(VP)->v_mount->mnt_op->vfs_vptofh)(VP, FIDP)
#if defined(VFS_LKM) && !defined(KLD_MODULE)
#include <sys/conf.h>
#include <sys/exec.h>
#include <sys/sysent.h>
#include <sys/lkm.h>
#define VFS_SET(vfsops, fsname, flags) \
static struct vfsconf _fs_vfsconf = { \
&vfsops, \
#fsname, \
-1, \
0, \
flags, \
}; \
extern struct linker_set MODVNOPS; \
MOD_VFS(fsname,&MODVNOPS,&_fs_vfsconf); \
int \
fsname ## _mod(struct lkm_table *lkmtp, int cmd, int ver); \
int \
fsname ## _mod(struct lkm_table *lkmtp, int cmd, int ver) { \
MOD_DISPATCH(fsname, \
lkmtp, cmd, ver, lkm_nullcmd, lkm_nullcmd, lkm_nullcmd); } \
struct __hack
#else
#include <sys/module.h>
#define VFS_SET(vfsops, fsname, flags) \
@ -368,8 +342,6 @@ struct vfsops {
}; \
DECLARE_MODULE(fsname, fsname ## _mod, SI_SUB_VFS, SI_ORDER_MIDDLE)
#endif /* VFS_LKM */
#include <net/radix.h>
#define AF_MAX 31 /* XXX */

View File

@ -41,7 +41,7 @@
#include <posix4/sched.h>
/* Generate syscall stubs for when something is optionally
* LKM'd. References "syscall_not_present".
* loadable as a module. References "syscall_not_present".
* XXX Good candidate for sys/syscall.h
*/
struct proc;

View File

@ -31,7 +31,7 @@
* SUCH DAMAGE.
*
* @(#)vnode.h 8.7 (Berkeley) 2/4/94
* $Id: vnode.h,v 1.84 1999/02/03 04:12:36 semenu Exp $
* $Id: vnode.h,v 1.85 1999/02/19 17:41:14 dillon Exp $
*/
#ifndef _SYS_VNODE_H_
@ -259,13 +259,9 @@ extern int vttoif_tab[];
#define NULLVP ((struct vnode *)NULL)
#if defined(VFS_LKM) && !defined(KLD_MODULE)
#define VNODEOP_SET(f) DATA_SET(MODVNOPS,f)
#else
#define VNODEOP_SET(f) \
C_SYSINIT(f##init, SI_SUB_VFS, SI_ORDER_SECOND, vfs_add_vnodeops, &f); \
C_SYSUNINIT(f##uninit, SI_SUB_VFS, SI_ORDER_SECOND, vfs_rm_vnodeops, &f);
#endif
/*
* Global vnode data.