Skip to contentSkip to conversation

eudev: Replaces udev with eudev for compatibility when using sysvinit on newer kernels

PATCH New Alejandro Hernandez 1 participant 4 messages Mar 1, 2016 1 message not in the archive

lore
Share & tools
lore

A message that is not in the archive (sent off-list or not yet received): [email protected]

#1 lore raw

PATCH v3 1/4 eudev: Replaces udev with eudev for compatibility when using sysvinit on newer kernels

udev has started to fail on new kernels (4.4), due to being deprecated in favor of systemd's udev implementation. To maintain a sysvinit alternative we also need to provide an alternative to udev. Eudev is a fork of systemds udev, this new eudev recipe provides upstream udev 220 funcitonality.

- Removes patches that dont apply anymore
- ToDo: eudev-ptest?

[YOCTO #8998]

---
 meta/conf/distro/include/default-providers.inc     |   2 +-
 .../udev/{udev => eudev}/devfs-udev.rules          |   0
 meta/recipes-core/udev/{udev => eudev}/init        |   0
 meta/recipes-core/udev/{udev => eudev}/links.conf  |   0
 meta/recipes-core/udev/{udev => eudev}/local.rules |   0
 .../udev/{udev => eudev}/permissions.rules         |   0
 meta/recipes-core/udev/{udev => eudev}/run.rules   |   0
 meta/recipes-core/udev/{udev => eudev}/udev-cache  |   0
 .../udev/{udev => eudev}/udev-cache.default        |   0
 meta/recipes-core/udev/{udev => eudev}/udev.rules  |   0
 meta/recipes-core/udev/eudev_3.1.5.bb              |  93 +++++++++++++++++
 meta/recipes-core/udev/udev.inc                    | 112 ---------------------
 ...yboard_force_release.sh-shell-script-path.patch |  35 -------
 ...-Add-stdint.h-as-it-was-removed-from-mtd-.patch |  29 ------
 ...c-Makefile.am-Check-for-input.h-and-input.patch |  52 ----------
 .../recipes-core/udev/udev/add-install-ptest.patch |  86 ----------------
 .../udev/udev/avoid-mouse-autosuspend.patch        |  25 -----
 .../udev/udev/fix_rule-syntax-regex-ptest.patch    |  58 -----------
 meta/recipes-core/udev/udev/run-ptest              |   5 -
 meta/recipes-core/udev/udev_182.bb                 |   9 --
 20 files changed, 94 insertions(+), 412 deletions(-)
 rename meta/recipes-core/udev/{udev => eudev}/devfs-udev.rules (100%)
 rename meta/recipes-core/udev/{udev => eudev}/init (100%)
 rename meta/recipes-core/udev/{udev => eudev}/links.conf (100%)
 rename meta/recipes-core/udev/{udev => eudev}/local.rules (100%)
 rename meta/recipes-core/udev/{udev => eudev}/permissions.rules (100%)
 rename meta/recipes-core/udev/{udev => eudev}/run.rules (100%)
 rename meta/recipes-core/udev/{udev => eudev}/udev-cache (100%)
 rename meta/recipes-core/udev/{udev => eudev}/udev-cache.default (100%)
 rename meta/recipes-core/udev/{udev => eudev}/udev.rules (100%)
 create mode 100644 meta/recipes-core/udev/eudev_3.1.5.bb
 delete mode 100644 meta/recipes-core/udev/udev.inc
 delete mode 100644 meta/recipes-core/udev/udev/0001-Fixing-keyboard_force_release.sh-shell-script-path.patch
 delete mode 100644 meta/recipes-core/udev/udev/0001-mtd_probe.h-Add-stdint.h-as-it-was-removed-from-mtd-.patch
 delete mode 100644 meta/recipes-core/udev/udev/0002-configure.ac-Makefile.am-Check-for-input.h-and-input.patch
 delete mode 100644 meta/recipes-core/udev/udev/add-install-ptest.patch
 delete mode 100644 meta/recipes-core/udev/udev/avoid-mouse-autosuspend.patch
 delete mode 100644 meta/recipes-core/udev/udev/fix_rule-syntax-regex-ptest.patch
 delete mode 100644 meta/recipes-core/udev/udev/run-ptest
 delete mode 100644 meta/recipes-core/udev/udev_182.bb
meta/conf/distro/include/default-providers.inc +1 -1
index bb382bd..ba85c78 100644
@@ -44,7 +44,7 @@ PREFERRED_PROVIDER_nativesdk-opkg ?= "nativesdk-opkg"
 PREFERRED_PROVIDER_console-tools ?= "kbd"
 PREFERRED_PROVIDER_gzip-native ?= "pigz-native"
 PREFERRED_PROVIDER_make ?= "make"
-PREFERRED_PROVIDER_udev ?= "${@bb.utils.contains('DISTRO_FEATURES','systemd','systemd','udev',d)}"
+PREFERRED_PROVIDER_udev ?= "${@bb.utils.contains('DISTRO_FEATURES','systemd','systemd','eudev',d)}"
 # There are issues with runtime packages and PREFERRED_PROVIDER, see YOCTO #5044 for details
 # on this rather strange entry.
 PREFERRED_PROVIDER_bluez4 ?= "${@bb.utils.contains('DISTRO_FEATURES','bluetooth bluez5','bluez5','bluez4',d)}"
meta/recipes-core/udev/eudev/devfs-udev.rules renamed from meta/recipes-core/udev/udev/devfs-udev.rules +0 -0
similarity index 100%
rename from meta/recipes-core/udev/udev/devfs-udev.rules
rename to meta/recipes-core/udev/eudev/devfs-udev.rules
meta/recipes-core/udev/eudev/init renamed from meta/recipes-core/udev/udev/init +0 -0
similarity index 100%
rename from meta/recipes-core/udev/udev/init
rename to meta/recipes-core/udev/eudev/init
meta/recipes-core/udev/eudev/links.conf renamed from meta/recipes-core/udev/udev/links.conf +0 -0
similarity index 100%
rename from meta/recipes-core/udev/udev/links.conf
rename to meta/recipes-core/udev/eudev/links.conf
meta/recipes-core/udev/eudev/local.rules renamed from meta/recipes-core/udev/udev/local.rules +0 -0
similarity index 100%
rename from meta/recipes-core/udev/udev/local.rules
rename to meta/recipes-core/udev/eudev/local.rules
meta/recipes-core/udev/eudev/permissions.rules renamed from meta/recipes-core/udev/udev/permissions.rules +0 -0
similarity index 100%
rename from meta/recipes-core/udev/udev/permissions.rules
rename to meta/recipes-core/udev/eudev/permissions.rules
meta/recipes-core/udev/eudev/run.rules renamed from meta/recipes-core/udev/udev/run.rules +0 -0
similarity index 100%
rename from meta/recipes-core/udev/udev/run.rules
rename to meta/recipes-core/udev/eudev/run.rules
meta/recipes-core/udev/eudev/udev-cache renamed from meta/recipes-core/udev/udev/udev-cache +0 -0
similarity index 100%
rename from meta/recipes-core/udev/udev/udev-cache
rename to meta/recipes-core/udev/eudev/udev-cache
meta/recipes-core/udev/eudev/udev-cache.default renamed from meta/recipes-core/udev/udev/udev-cache.default +0 -0
similarity index 100%
rename from meta/recipes-core/udev/udev/udev-cache.default
rename to meta/recipes-core/udev/eudev/udev-cache.default
meta/recipes-core/udev/eudev/udev.rules renamed from meta/recipes-core/udev/udev/udev.rules +0 -0
similarity index 100%
rename from meta/recipes-core/udev/udev/udev.rules
rename to meta/recipes-core/udev/eudev/udev.rules
meta/recipes-core/udev/eudev_3.1.5.bb new file +93 -0

93 lines not on this page · raw message

meta/recipes-core/udev/udev.inc deleted +0 -112

112 lines not on this page · raw message

meta/recipes-core/udev/udev/0001-Fixing-keyboard_force_release.sh-shell-script-path.patch deleted +0 -35
deleted file mode 100644
index 41deafa..0000000
@@ -1,35 +0,0 @@
-From 0f8290c943da298abd269ca60fd8375dfb219971 Mon Sep 17 00:00:00 2001
-From: Alexandru DAMIAN <[email protected]>
-Date: Thu, 12 Jul 2012 12:54:48 +0300
-Subject: [PATCH] Fixing keyboard_force_release.sh shell script path
-
-With the introduction of rootprefix, the keyboard-force-release.sh.in
-was modified to be executed with @rootprefix@/bin/sh, which is wrong
-because @rootprefix@ defaults to /usr (which is correct), but the
-shell is always at /bin/sh (IEEE Std 1003.2-1992).
-
-Therefore the interpreter for shell scripts needs to be /bin/sh at all times.
-
-The upstream moved to configurable root prefix, this patch taclkes a 
-transition bug, and will not be applied upstream.
-
-Upstream-Status: Inappropriate [legacy version]
-
-Signed-off-by: Alexandru DAMIAN <[email protected]>
----
- src/keymap/keyboard-force-release.sh.in |    2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/keymap/keyboard-force-release.sh.in b/src/keymap/keyboard-force-release.sh.in
-index dd040ce..597a3a6 100755
---- a/src/keymap/keyboard-force-release.sh.in
-+++ b/src/keymap/keyboard-force-release.sh.in
-@@ -1,4 +1,4 @@
--#!@rootprefix@/bin/sh -e
-+#!/bin/sh -e
- # read list of scancodes, convert hex to decimal and
- # append to the atkbd force_release sysfs attribute
- # $1 sysfs devpath for serioX
--- 
-1.7.9.5
-
meta/recipes-core/udev/udev/0001-mtd_probe.h-Add-stdint.h-as-it-was-removed-from-mtd-.patch deleted +0 -29
deleted file mode 100644
index 8d2df1a..0000000
@@ -1,29 +0,0 @@
-From 2935f9b2dfb92c3ce4376a988cd01b624430905b Mon Sep 17 00:00:00 2001
-From: Saul Wold <[email protected]>
-Date: Tue, 19 Jan 2016 09:49:56 -0800
-Subject: [PATCH 1/2] mtd_probe.h: Add stdint.h as it was removed from
- mtd-user.h in the kernel
-
-
-Upstream-Status: Inappropriate [Upstream unsupported]
-
-Signed-off-by: Saul Wold <[email protected]>
----
- src/mtd_probe/mtd_probe.h | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/src/mtd_probe/mtd_probe.h b/src/mtd_probe/mtd_probe.h
-index 2a37ede..49c1918 100644
---- a/src/mtd_probe/mtd_probe.h
-+++ b/src/mtd_probe/mtd_probe.h
-@@ -18,6 +18,7 @@
-  */
- 
- #include <mtd/mtd-user.h>
-+#include <stdint.h>
- 
- /* Full oob structure as written on the flash */
- struct sm_oob {
--- 
-2.5.0
-
meta/recipes-core/udev/udev/0002-configure.ac-Makefile.am-Check-for-input.h-and-input.patch deleted +0 -52

52 lines not on this page · raw message

meta/recipes-core/udev/udev/add-install-ptest.patch deleted +0 -86

86 lines not on this page · raw message

meta/recipes-core/udev/udev/avoid-mouse-autosuspend.patch deleted +0 -25
deleted file mode 100644
index 2c31b33..0000000
@@ -1,25 +0,0 @@
-Source: http://cgit.freedesktop.org/systemd/systemd/commit/rules/42-usb-hid-pm.rules?id=e0386cf2809219bbdd30895f46f1f567b56902b6
-
-Some USB ports on external hubs may be reported as "fixed". We only want
-to auto-enable this on ports that are internal to the machine, so check
-the parent state as well.
-
-Upstream-Status: backport
-
-Signed-off-by: Nitin A Kamble <[email protected]>
-2013/09/13
-
-Index: udev-182/rules/42-usb-hid-pm.rules
-===================================================================
---- udev-182.orig/rules/42-usb-hid-pm.rules
-+++ udev-182/rules/42-usb-hid-pm.rules
-@@ -46,4 +46,9 @@ ACTION=="add", SUBSYSTEM=="usb", ATTRS{i
- ACTION=="add", SUBSYSTEM=="usb", ATTR{idVendor}=="14dd", ATTR{idProduct}="0002", TEST=="power/control", ATTR{power/control}="auto"
-
- # USB HID devices that are internal to the machine should also be safe to autosuspend
-+# And skip it for devices which are external but say "fixed"
-+ACTION=="add", SUBSYSTEM=="usb", SUBSYSTEMS=="usb", ATTRS{removable}=="removable", GOTO="usb_hid_pm_end"
-+ACTION=="add", SUBSYSTEM=="usb", SUBSYSTEMS=="usb", ATTRS{removable}=="unknown", GOTO="usb_hid_pm_end"
- ACTION=="add", SUBSYSTEM=="usb", ATTR{bInterfaceClass}=="03", ATTRS{removable}=="fixed", TEST=="../power/control", ATTR{../power/control}="auto"
-+LABEL="usb_hid_pm_end"
-+
meta/recipes-core/udev/udev/fix_rule-syntax-regex-ptest.patch deleted +0 -58

58 lines not on this page · raw message

meta/recipes-core/udev/udev/run-ptest deleted +0 -5
deleted file mode 100644
index 0e39806..0000000
@@ -1,5 +0,0 @@
-#!/bin/sh
-
-tar -C test/ -xJf test/sys.tar.xz
-make -k check-TESTS
-make test-sys-distclean
meta/recipes-core/udev/udev_182.bb deleted +0 -9
deleted file mode 100644
index b216352..0000000
@@ -1,9 +0,0 @@
-include udev.inc
-
-PR = "r9"
-
-# module-init-tools from kmod_git will provide libkmod runtime
-DEPENDS += "module-init-tools"
-
-SRC_URI[md5sum] = "1b964456177fbf48023dfee7db3a708d"
-SRC_URI[sha256sum] = "7857ed19fafd8f3ca8de410194e8c7336e9eb8a20626ea8a4ba6449b017faba4"
Signature · 1 line
2.6.2
#2 lore raw

PATCH 2/4 libgudev: Fix for new eudev implementation

In reply to a message not in the archive

systemd is not a necessary feature for libgudev anymore since we are providing eudev as an alternative to udev

---
 meta/recipes-gnome/libgudev/libgudev_230.bb | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)
meta/recipes-gnome/libgudev/libgudev_230.bb +1 -2
index ea8e82c..c61316b 100644
@@ -10,6 +10,5 @@ RCONFLICTS_${PN} = "systemd (<= 220)"
 LICENSE = "LGPLv2.1"
 LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c"
 
-inherit gnomebase distro_features_check
+inherit gnomebase
 
-REQUIRED_DISTRO_FEATURES = "systemd"
Signature · 1 line
2.6.2
#3 lore raw

PATCH 3/4 usbutils: Fix for new eudev implementation

In reply to a message not in the archive

usbutils was only compatible with systemds udev, since we now provide a udev alternative compatible with upstream systemds udev, we can now use the newer version of usbutils along with it too.

---
 meta/recipes-bsp/usbutils/usbutils-008/iconv.patch | 41 ----------------------
 meta/recipes-bsp/usbutils/usbutils/iconv.patch     | 29 +++++++--------
 meta/recipes-bsp/usbutils/usbutils_007.bb          | 31 ----------------
 meta/recipes-bsp/usbutils/usbutils_008.bb          |  5 +--
 4 files changed, 16 insertions(+), 90 deletions(-)
 delete mode 100644 meta/recipes-bsp/usbutils/usbutils-008/iconv.patch
 delete mode 100644 meta/recipes-bsp/usbutils/usbutils_007.bb
meta/recipes-bsp/usbutils/usbutils-008/iconv.patch deleted +0 -41
deleted file mode 100644
index 6455567..0000000
@@ -1,41 +0,0 @@
-This patch adds support for detecting iconv support using autotools
-uclibc does not have iconv implementation inside libc like glibc, therefore
-the existing checks were not sufficient, it worked for glibc but not for
-uclibc. The new patch portably detects the iconv support and adds the
-libiconv to linker cmdline
-
-This patch should be submitted upstream too
-
-Upstream-Status: Pending
-
-Signed-off-by: Khem Raj <[email protected]>
-
-Index: usbutils-008/configure.ac
-===================================================================
---- usbutils-008.orig/configure.ac
-+++ usbutils-008/configure.ac
-@@ -10,7 +10,9 @@ AC_USE_SYSTEM_EXTENSIONS
- AC_SYS_LARGEFILE
- 
- AC_CHECK_HEADERS([byteswap.h])
--AC_CHECK_FUNCS([nl_langinfo iconv])
-+
-+AM_GNU_GETTEXT
-+AM_ICONV
- 
- PKG_CHECK_MODULES(LIBUSB, libusb-1.0 >= 1.0.0)
- 
-Index: usbutils-008/Makefile.am
-===================================================================
---- usbutils-008.orig/Makefile.am
-+++ usbutils-008/Makefile.am
-@@ -29,7 +29,8 @@ lsusb_CPPFLAGS = \
- 
- lsusb_LDADD = \
- 	$(LIBUSB_LIBS) \
--	$(UDEV_LIBS)
-+	$(UDEV_LIBS) \
-+	$(LIBICONV)
- 
- man_MANS = \
- 	lsusb.8	\
meta/recipes-bsp/usbutils/usbutils/iconv.patch +15 -14
index c557334..6455567 100644
@@ -10,10 +10,10 @@ Upstream-Status: Pending
 
 Signed-off-by: Khem Raj <[email protected]>
 
-Index: usbutils-007/configure.ac
+Index: usbutils-008/configure.ac
 ===================================================================
---- usbutils-007.orig/configure.ac
-+++ usbutils-007/configure.ac
+--- usbutils-008.orig/configure.ac
++++ usbutils-008/configure.ac
 @@ -10,7 +10,9 @@ AC_USE_SYSTEM_EXTENSIONS
  AC_SYS_LARGEFILE
  
@@ -23,18 +23,19 @@ Index: usbutils-007/configure.ac
 +AM_GNU_GETTEXT
 +AM_ICONV
  
- AC_ARG_ENABLE(zlib,
- 	AS_HELP_STRING(--disable-zlib,disable support for zlib))
-Index: usbutils-007/Makefile.am
+ PKG_CHECK_MODULES(LIBUSB, libusb-1.0 >= 1.0.0)
+ 
+Index: usbutils-008/Makefile.am
 ===================================================================
---- usbutils-007.orig/Makefile.am
-+++ usbutils-007/Makefile.am
-@@ -27,7 +27,7 @@ lsusb_CPPFLAGS = \
- 	-DDATADIR=\"$(datadir)\"
+--- usbutils-008.orig/Makefile.am
++++ usbutils-008/Makefile.am
+@@ -29,7 +29,8 @@ lsusb_CPPFLAGS = \
  
  lsusb_LDADD = \
--	$(LIBUSB_LIBS)
-+	$(LIBUSB_LIBS) $(LIBICONV)
+ 	$(LIBUSB_LIBS) \
+-	$(UDEV_LIBS)
++	$(UDEV_LIBS) \
++	$(LIBICONV)
  
- if HAVE_ZLIB
- lsusb_CPPFLAGS += -DHAVE_LIBZ
+ man_MANS = \
+ 	lsusb.8	\
meta/recipes-bsp/usbutils/usbutils_007.bb deleted +0 -31
deleted file mode 100644
index b93b2bd..0000000
@@ -1,31 +0,0 @@
-SUMMARY = "Host side USB console utilities"
-DESCRIPTION = "Contains the lsusb utility for inspecting the devices connected to the USB bus."
-HOMEPAGE = "http://www.linux-usb.org"
-SECTION = "base"
-
-LICENSE = "GPLv2+"
-LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f"
-
-DEPENDS = "libusb zlib virtual/libiconv"
-
-SRC_URI = "${KERNELORG_MIRROR}/linux/utils/usb/usbutils/usbutils-${PV}.tar.gz \
-           file://usb-devices-avoid-dependency-on-bash.patch \
-           file://Fix-NULL-pointer-crash.patch \
-           file://iconv.patch \
-          "
-
-SRC_URI[md5sum] = "be6c42294be5c940f208190d3479d50c"
-SRC_URI[sha256sum] = "e65c234cadf7c81b6b1567c440e3b9b31b44f51c27df3e45741b88848d8b37d3"
-
-inherit autotools gettext pkgconfig
-
-do_install_append() {
-	# We only need the compressed copy, remove the uncompressed version
-	rm -f ${D}${datadir}/usb.ids
-}
-
-PACKAGES += "${PN}-ids"
-FILES_${PN}-dev += "${datadir}/pkgconfig"
-FILES_${PN}-ids = "${datadir}/usb*"
-
-RDEPENDS_${PN} = "${PN}-ids"
meta/recipes-bsp/usbutils/usbutils_008.bb +1 -4
index 0f2d8d4..75312c3 100644
@@ -6,7 +6,7 @@ SECTION = "base"
 LICENSE = "GPLv2+"
 LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
 
-DEPENDS = "libusb zlib virtual/libiconv systemd"
+DEPENDS = "libusb zlib virtual/libiconv udev"
 
 SRC_URI = "${KERNELORG_MIRROR}/linux/utils/usb/usbutils/usbutils-${PV}.tar.gz \
            file://usb-devices-avoid-dependency-on-bash.patch \
@@ -18,9 +18,6 @@ SRC_URI[md5sum] = "cb20148c2e784577e924a7b4c560c8fb"
 SRC_URI[sha256sum] = "6d5f16c2961df37e22e492c736a3e162a8fde24480f23a40d85f79af80d3fe95"
 
 inherit autotools gettext pkgconfig distro_features_check
-# This version of usbutils relies on the udev from systemd, so unless 
-# we can decouple udev from system, we require systemd for now.
-REQUIRED_DISTRO_FEATURES = "systemd"
 
 FILES_${PN}-dev += "${datadir}/pkgconfig"
 
Signature · 1 line
2.6.2
#4 lore raw

PATCH 4/4 maintainers.inc: Add new eudev package and change maintainership for udev

In reply to a message not in the archive
---
 meta-yocto/conf/distro/include/maintainers.inc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
meta-yocto/conf/distro/include/maintainers.inc +1 -1
index 8fe87c8..a474b1f 100644
@@ -160,6 +160,7 @@ RECIPE_MAINTAINER_pn-enchant = "Maxin B. John <[email protected]>"
 RECIPE_MAINTAINER_pn-encodings = "Jussi Kukkonen <[email protected]>"
 RECIPE_MAINTAINER_pn-epiphany = "Alexander Kanavin <[email protected]>"
 RECIPE_MAINTAINER_pn-ethtool = "Maxin B. John <[email protected]>"
+RECIPE_MAINTAINER_pn-eudev = "Alejandro Hernandez <[email protected]>"
 RECIPE_MAINTAINER_pn-expat = "Jussi Kukkonen <[email protected]>"
 RECIPE_MAINTAINER_pn-file = "Robert Yang <[email protected]>"
 RECIPE_MAINTAINER_pn-findutils = "Chen Qi <[email protected]>"
@@ -663,7 +664,6 @@ RECIPE_MAINTAINER_pn-u-boot-fw-utils = "Denys Dmytriyenko <[email protected]>"
 RECIPE_MAINTAINER_pn-u-boot-mkimage = "Denys Dmytriyenko <[email protected]>"
 RECIPE_MAINTAINER_pn-ubootchart = "Ross Burton <[email protected]>"
 RECIPE_MAINTAINER_pn-uclibc = "Khem Raj <[email protected]>"
-RECIPE_MAINTAINER_pn-udev = "Maxin B. John <[email protected]>"
 RECIPE_MAINTAINER_pn-udev-extraconf = "Maxin B. John <[email protected]>"
 RECIPE_MAINTAINER_pn-unfs3 = "Randy Witt <[email protected]>"
 RECIPE_MAINTAINER_pn-unifdef = "Ross Burton <[email protected]>"
Signature · 1 line
2.6.2