| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
| |
* libmachdev/trivfs_server.c (trivfs_S_fsys_getpriv): Move the
just-copied send rights instead of copying them again.
|
| |
|
|
|
|
| |
* libmachdev/trivfs_server.c: Include <mach/i386/mach_i386.h>.
|
|
|
|
|
| |
* libmachdev/ds_routines.c (machdev_is_master_device): Remove duplicate
declaration.
|
|
|
|
|
|
|
|
|
| |
trivfs happens to set the payload for our control port, and we are not using
payload translation for mach_i386, so we need to tell mig how to get back to
the port name.
* libmachdev/Makefile (mach_i386-MIGSFLAGS): Set
-DMACH_PAYLOAD_TO_PORT=ports_payload_get_name.
|
|
|
|
|
|
|
|
|
|
|
|
| |
bootstrap translators may not wish to appear in the FS, and the name of
the translator does not have to match the path where it is getting
installed.
* libmachdev/machdev.h (machdev_trivfs_init): Add path parameter.
* libmachdev/trivfs_server.c (machdev_trivfs_init): Add path parameter,
set devnode only if it is not NULL.
(trivfs_S_fsys_init): Only call install_as_translator when devnode is not NULL.
* /rumpdisk/main.c (main): Add path parameter.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
*/libmachdev/trivfs_server.c (machdev_ctl): Rename to control_port.
(trivfs_S_fsys_init): Fix accordingly.
(control): New variable.
(bootstrapped, underlying, devnode): New variables.
(install_as_translator): New function.
(trivfs_S_fsys_init): When bootstrapping, call install_as_translator.
(machdev_trivfs_init): Create one port of the control class.
(trivfs_S_fsys_getpriv): Use ports_get_send_right on the control port
instead of creating another one.
(resume_bootstrap_server): Use ports_get_send_right on the control port
instead of creating another one.
(machdev_trivfs_init): When bootstrapping, Use our control port as fsys.
|
|
|
|
|
|
| |
This one-liner fixes libmachdev build failure.
Message-Id: <20200906020837.329023-1-damien@zamaudio.com>
|
|
|
|
| |
Message-Id: <20200801050538.273196-1-damien@zamaudio.com>
|
|
|
|
|
| |
* libmachdev/trivfs_server.c (machdev_is_master_device): Simplify source
code.
|
|
|
|
|
|
|
|
| |
Now that machdev redirects the device master port, it has to implement
the i386 permission RPCs on it.
Message-Id: <20200725011847.186969-2-damien@zamaudio.com>
Message-Id: <20200725011847.186969-3-damien@zamaudio.com>
|
|
|
|
|
|
|
|
|
|
|
|
| |
machdev users can now pass along a port to the next translator in the
bootstrap chain (bootstrap_resume_task), that they'll get from their
command line set by the bootloader. machdev will then call task_resume
on it as appropriate. It will also have the opportunity to get
fsys_getpriv calls, and thus redirect the device master port, thus
having the opportunity to expose its devices on the device master port,
as if they were handled by the kernel.
Message-Id: <20200725011847.186969-1-damien@zamaudio.com>
|
|
|
|
|
| |
libmachuser provides what we need
Message-Id: <20200724132039.110421-1-damien@zamaudio.com>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* libmachdev/machdev-dev_hdr.h (DEVICE_NULL): Remove macro.
(emul_device): Rename structure to machdev_emul_device.
(emul_device_t): Rename type to machdev_emul_device_t.
(mach_device, mach_device_t, MACH_DEVICE_NULL): Move to...
* libmachdev/mach_device.h: ... new file.
* libmachdev/ds_routines.c: Include "mach_device.h".
* libmachdev/machdev-device_emul.h: Include <mach/notify.h>,
<device/device_types.h>, <device/net_status.h>, <errno.h>
* libmachdev/machdev.h: Include "machdev_hdr.h".
* libmachdev/mig-decls.h: Include "mach_device.h".
* libmachdev/Makefile (LCLHDRS): Add mach_device.h.
(installhdrs): Add machdev-dev_hdr.h.
|
|
* libmachdev: New directory.
|