- devfs_make_node(makedev(3, 2), DEVFS_CHAR,
- UID_ROOT, GID_WHEEL, 0666, "null");
- devfs_make_node(makedev(3, 3), DEVFS_CHAR,
- UID_ROOT, GID_WHEEL, 0666, "zero");
- devfs_make_node(makedev(6, 0), DEVFS_CHAR,
- UID_ROOT, GID_WHEEL, 0600, "klog");
+ devfs_make_node(makedev(3, 2), DEVFS_CHAR,
+ UID_ROOT, GID_WHEEL, 0666, "null");
+ devfs_make_node(makedev(3, 3), DEVFS_CHAR,
+ UID_ROOT, GID_WHEEL, 0666, "zero");
+ uint32_t logging_config = atm_get_diagnostic_config();
+
+ devfs_make_node(makedev(6, 0), DEVFS_CHAR,
+ UID_ROOT, GID_WHEEL, 0600, "klog");
+
+ if (!(logging_config & ATM_TRACE_DISABLE)) {
+ devfs_make_node(makedev(7, 0), DEVFS_CHAR,
+ UID_LOGD, GID_LOGD, 0600, "oslog");
+ if (cdevsw_setkqueueok(7, (&(cdevsw[7])), 0) == -1) {
+ return ENOTSUP;
+ }
+
+ devfs_make_node(makedev(8, 0), DEVFS_CHAR,
+ UID_ROOT, GID_WHEEL, 0600, "oslog_stream");
+ if (cdevsw_setkqueueok(8, (&(cdevsw[8])), 0) == -1) {
+ return ENOTSUP;
+ }
+ }
+