Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 10 Jun 2021 09:31:02 GMT
From:      Dmitry Chagin <dchagin@FreeBSD.org>
To:        src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org
Subject:   git: 1f717a8166a1 - stable/12 - Move V4L feature declarations and DTrace provider definitions from linux_common.c to linux_util.c so they become available on i386.
Message-ID:  <202106100931.15A9V2xG030515@gitrepo.freebsd.org>

next in thread | raw e-mail | index | archive | help
The branch stable/12 has been updated by dchagin:

URL: https://cgit.FreeBSD.org/src/commit/?id=1f717a8166a13e74f0190a4b18d79587ed39d204

commit 1f717a8166a13e74f0190a4b18d79587ed39d204
Author:     Tijl Coosemans <tijl@FreeBSD.org>
AuthorDate: 2020-12-06 10:58:55 +0000
Commit:     Dmitry Chagin <dchagin@FreeBSD.org>
CommitDate: 2021-06-10 09:25:16 +0000

    Move V4L feature declarations and DTrace provider definitions from
    linux_common.c to linux_util.c so they become available on i386.
    
    linux_common.c defines the linux_common kernel module but this module does
    not exist on i386 and linux_common.c is not included in the linux module.
    linux_util.c is included in the linux_common module on amd64 and the linux
    module on i386.
    
    Remove linux_common.c from files.i386 again.  It was added recently in
    r367433 when the DTrace provider definitions were moved.
    
    The V4L feature declarations were moved to linux_common in r283423.
    
    (cherry picked from commit 77fb6b6644446beb0ea45085b953f464c729c049)
---
 sys/compat/linux/linux_common.c | 19 -------------------
 sys/compat/linux/linux_util.c   | 18 ++++++++++++++++++
 sys/conf/files.i386             |  1 -
 3 files changed, 18 insertions(+), 20 deletions(-)

diff --git a/sys/compat/linux/linux_common.c b/sys/compat/linux/linux_common.c
index 6eebfb91d002..4a6d8718b8af 100644
--- a/sys/compat/linux/linux_common.c
+++ b/sys/compat/linux/linux_common.c
@@ -36,34 +36,15 @@ __FBSDID("$FreeBSD$");
 #include <sys/malloc.h>
 #include <sys/eventhandler.h>
 #include <sys/sx.h>
-#include <sys/sysctl.h>
 
 #include <compat/linux/linux.h>
-#include <compat/linux/linux_dtrace.h>
 #include <compat/linux/linux_emul.h>
 #include <compat/linux/linux_ioctl.h>
 #include <compat/linux/linux_mib.h>
 #include <compat/linux/linux_util.h>
 
-FEATURE(linuxulator_v4l, "V4L ioctl wrapper support in the linuxulator");
-FEATURE(linuxulator_v4l2, "V4L2 ioctl wrapper support in the linuxulator");
-
 MODULE_VERSION(linux_common, 1);
 
-/**
- * Special DTrace provider for the linuxulator.
- *
- * In this file we define the provider for the entire linuxulator. All
- * modules (= files of the linuxulator) use it.
- *
- * We define a different name depending on the emulated bitsize, see
- * ../../<ARCH>/linux{,32}/linux.h, e.g.:
- *      native bitsize          = linuxulator
- *      amd64, 32bit emulation  = linuxulator32
- */
-LIN_SDT_PROVIDER_DEFINE(linuxulator);
-LIN_SDT_PROVIDER_DEFINE(linuxulator32);
-
 SET_DECLARE(linux_device_handler_set, struct linux_device_handler);
 
 TAILQ_HEAD(, linux_ioctl_handler_element) linux_ioctl_handlers =
diff --git a/sys/compat/linux/linux_util.c b/sys/compat/linux/linux_util.c
index 59fc844e1cbe..9b801b522a45 100644
--- a/sys/compat/linux/linux_util.c
+++ b/sys/compat/linux/linux_util.c
@@ -52,6 +52,7 @@ __FBSDID("$FreeBSD$");
 
 #include <machine/stdarg.h>
 
+#include <compat/linux/linux_dtrace.h>
 #include <compat/linux/linux_mib.h>
 #include <compat/linux/linux_util.h>
 
@@ -60,6 +61,23 @@ MALLOC_DEFINE(M_EPOLL, "lepoll", "Linux events structures");
 MALLOC_DEFINE(M_FUTEX, "futex", "Linux futexes");
 MALLOC_DEFINE(M_FUTEX_WP, "futex wp", "Linux futex waiting proc");
 
+FEATURE(linuxulator_v4l, "V4L ioctl wrapper support in the linuxulator");
+FEATURE(linuxulator_v4l2, "V4L2 ioctl wrapper support in the linuxulator");
+
+/**
+ * Special DTrace provider for the linuxulator.
+ *
+ * In this file we define the provider for the entire linuxulator. All
+ * modules (= files of the linuxulator) use it.
+ *
+ * We define a different name depending on the emulated bitsize, see
+ * ../../<ARCH>/linux{,32}/linux.h, e.g.:
+ *      native bitsize          = linuxulator
+ *      amd64, 32bit emulation  = linuxulator32
+ */
+LIN_SDT_PROVIDER_DEFINE(linuxulator);
+LIN_SDT_PROVIDER_DEFINE(linuxulator32);
+
 char linux_emul_path[MAXPATHLEN] = "/compat/linux";
 
 SYSCTL_STRING(_compat_linux, OID_AUTO, emul_path, CTLFLAG_RWTUN,
diff --git a/sys/conf/files.i386 b/sys/conf/files.i386
index aa26d29c02f9..ffbb8c314e3e 100644
--- a/sys/conf/files.i386
+++ b/sys/conf/files.i386
@@ -86,7 +86,6 @@ cddl/dev/dtrace/x86/dis_tables.c			optional dtrace_fbt | dtraceall compile-with
 cddl/dev/dtrace/x86/instr_size.c			optional dtrace_fbt | dtraceall compile-with "${DTRACE_C}"
 compat/linprocfs/linprocfs.c	optional linprocfs
 compat/linsysfs/linsysfs.c	optional linsysfs
-compat/linux/linux_common.c	optional compat_linux
 compat/linux/linux_dummy.c	optional compat_linux
 compat/linux/linux_event.c	optional compat_linux
 compat/linux/linux_emul.c	optional compat_linux



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202106100931.15A9V2xG030515>