summaryrefslogtreecommitdiff
path: root/packages
diff options
context:
space:
mode:
authorGraeme Gregory <dp@xora.org.uk>2005-07-18 11:35:28 +0000
committerOpenEmbedded Project <openembedded-devel@lists.openembedded.org>2005-07-18 11:35:28 +0000
commit729d010c7ed96156da365ff0f761f313a45dac23 (patch)
treead5a712c20489575536c745e72961d92f4ace6c3 /packages
parent3143c04f905275f5f07c4147c914e7f859b5fd7d (diff)
parentc0304ae5a229a4b4b83b107c85e8567bbf471a31 (diff)
merge of ca44dbdae3cd2507c9be579eafbacd0e07bcca43
and efd8c005871477b3c2788c1257799459527dd028
Diffstat (limited to 'packages')
-rw-r--r--packages/udev/udev-063/fix-alignment.patch24
-rw-r--r--packages/udev/udev_063.bb26
2 files changed, 42 insertions, 8 deletions
diff --git a/packages/udev/udev-063/fix-alignment.patch b/packages/udev/udev-063/fix-alignment.patch
new file mode 100644
index 0000000000..8c7b8b5ac5
--- /dev/null
+++ b/packages/udev/udev-063/fix-alignment.patch
@@ -0,0 +1,24 @@
+diff --git a/udev_rules_parse.c b/udev_rules_parse.c
+--- a/udev_rules_parse.c
++++ b/udev_rules_parse.c
+@@ -241,6 +241,7 @@ static int add_to_rules(struct udev_rule
+ int valid;
+ char *linepos;
+ char *attr;
++ size_t padding;
+ int retval;
+
+ /* get all the keys */
+@@ -506,6 +507,11 @@ static int add_to_rules(struct udev_rule
+
+ /* grow buffer and add rule */
+ rule_size = sizeof(struct udev_rule) + rule->bufsize;
++ padding = (sizeof(size_t) - rule_size % sizeof(size_t)) % sizeof(size_t);
++ dbg("add %zi padding bytes", padding);
++ rule_size += padding;
++ rule->bufsize += padding;
++
+ rules->buf = realloc(rules->buf, rules->bufsize + rule_size);
+ if (!rules->buf) {
+ err("realloc failed");
+
diff --git a/packages/udev/udev_063.bb b/packages/udev/udev_063.bb
index 60340ca175..083a6bf88a 100644
--- a/packages/udev/udev_063.bb
+++ b/packages/udev/udev_063.bb
@@ -1,13 +1,23 @@
SRC_URI = "http://kernel.org/pub/linux/utils/kernel/hotplug/udev-${PV}.tar.gz \
- file://tmpfs.patch;patch=1 \
- file://noasmlinkage.patch;patch=1 \
- file://flags.patch;patch=1 \
- file://init"
+ file://tmpfs.patch;patch=1 \
+ file://noasmlinkage.patch;patch=1 \
+ file://flags.patch;patch=1 \
+ file://fix-alignment.patch;patch=1 \
+ file://init"
include udev.inc
-PR = "r0"
+PR = "r1"
-#FIXME a) udevd doesn't start with our init script (the init script seems to be pretty oudated)
-#FIXME b) lots of alignment errors when manually starting udevd
-DEFAULT_PREFERENCE = "-1"
+#FIXME UDEV MIGRATION PLAN:
+#FIXME a) udevd is now a netlink daemon and needs to be started by the init script (ours is way too old)
+#FIXME b) sbin/hotplug should no longer be called by the kernel, i.e. echo "" >/proc/sys/kernel/hotplug
+#FIXME done c) until d) happens, udev will emulate hotplugd behaviour (see do_install_append()
+#FIXME d) eventually hotplug should no longer be used at all, all agents shall be converted to udev rules
+
+EXTRA_OEMAKE = "EXTRAS=extras/run_directory/"
+
+do_install_append() {
+ install -m 0755 extras/run_directory/udev_run_hotplugd ${D}${sbindir}/
+ echo RUN+="/sbin/udev_run_hotplugd" >>${D}${sysconfdir}/udev/rules.d/50-udev.rules
+}