M+ & H bugs with Milestone Movements WW14
Stephen Jolley
All,
Thanks,
Stephen K. Jolley Yocto Project Program Manager ( Cell: (208) 244-4460 * Email: sjolley.yp.pm@...
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Enhancements/Bugs closed WW14!
Stephen Jolley
All,
Thanks,
Stephen K. Jolley Yocto Project Program Manager ( Cell: (208) 244-4460 * Email: sjolley.yp.pm@...
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Yocto Project Newcomer & Unassigned Bugs - Help Needed
Stephen Jolley
All,
The triage team is starting to try and collect up and classify bugs which a newcomer to the project would be able to work on in a way which means people can find them. They're being listed on the triage page under the appropriate heading:
https://wiki.yoctoproject.org/wiki/Bug_Triage#Newcomer_Bugs
The idea is these bugs should be straight forward for a person to help work on who doesn't have deep experience with the project. If anyone can help, please take ownership of the bug and send patches! If anyone needs help/advice there are people on irc who can likely do so, or some of the more experienced contributors will likely be happy to help too.
Also, the triage team meets weekly and does its best to handle the bugs reported into the Bugzilla. The number of people attending that meeting has fallen, as have the number of people available to help fix bugs. One of the things we hear users report is they don't know how to help. We (the triage team) are therefore going to start reporting out the currently 313 unassigned or newcomer bugs.
We're hoping people may be able to spare some time now and again to help out with these. Bugs are split into two types, "true bugs" where things don't work as they should and "enhancements" which are features we'd want to add to the system. There are also roughly four different "priority" classes right now, “3.1”, “3.2, "3.99" and "Future", the more pressing/urgent issues being in "3.1" and then “3.2”.
Please review this link and if a bug is something you would be able to help with either take ownership of the bug, or send me (sjolley.yp.pm@...) an e-mail with the bug number you would like and I will assign it to you (please make sure you have a Bugzilla account). The list is at: https://wiki.yoctoproject.org/wiki/Bug_Triage_Archive#Unassigned_or_Newcomer_Bugs
Thanks,
Stephen K. Jolley Yocto Project Program Manager ( Cell: (208) 244-4460 * Email: sjolley.yp.pm@...
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current Top developers on Yocto Project 3.1
Stephen Jolley
All,
Thanks,
Stephen K. Jolley Yocto Project Program Manager ( Cell: (208) 244-4460 * Email: sjolley.yp.pm@...
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Reminder: Yocto Project Technical Team Meeting @ Monthly from 8am on the first Tuesday (PDT)
Stephen Jolley
All,
Just a reminder we will hold the monthly Yocto Project Technical Meeting at 8am PST tomorrow. (4/7)
We will be discussing plans for YP 3.2 – See: https://docs.google.com/document/d/100bTV-etO0joh6rAkcr7smlZ9iuENG_8BtaXs_vb54c/edit?usp=sharing
Yocto Project Technical Team Meeting: We encourage people attending the meeting to logon and announce themselves on the Yocto Project IRC chancel during the meeting (optional): Yocto IRC: http://webchat.freenode.net/?channels=#yocto
Wiki: https://www.yoctoproject.org/public-virtual-meetings/
When Monthly from 8am to 8:30am on the first Tuesday Pacific Time Where Zoom Meeting: https://zoom.us/j/990892712
I am tracking the minutes at: https://docs.google.com/document/d/1ly8nyhO14kDNnFcW2QskANXW3ZT7QwKC5wWVDg9dDH4/edit?pli=1 Please request access if you want to assist in editing them. The world should have view access.
Thanks,
Stephen K. Jolley Yocto Project Program Manager ( Cell: (208) 244-4460 * Email: sjolley.yp.pm@...
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
u-boot factory reset
Damien LEFEVRE
Hi, First time
customizing u-boot, forgive my basic question. To implement a
factory reset, my initramfs expects a ‘factoryreset’ kernel
parameter to format an overlay FS partition before mounting it. The target machine
is a Tegra TX2. I’m able to use
the Volume Up button for factory reset, which is gpio-313 . When
starting the board if I press the button say 5s, I’d like to add
the ‘factoryreset’ parameter to the boot parameters I think I could use
this syntax @uboot_var('factoryreset') in the KERNEL_ROOTSPEC
variable and have the variable set either to '' or 'factoryreset' Maybe, I should append distro_bootcmd to add the gpio pin reading to set factoryreset variable before proceeding with the boot sequence. But how can I add
the variable and have it set if the if the gpio pin is at a certain
state? Thanks, -Damien
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Re: Any way to enable automatic package-index if rpms are changed?
Ross Burton <ross@...>
On Mon, 6 Apr 2020 at 04:09, Joel A Cohen <aaron@...> wrote:
One of my most frequent annoying mistakes is to forget to run package index.I did start implementing this: http://git.yoctoproject.org/cgit/cgit.cgi/poky-contrib/log/?h=ross/index I think it mostly worked but wasn't quite finished. If you're interested please do grab those top three patches and give it a go (INHERIT += "package-index"). Ross
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Re: Any way to enable automatic package-index if rpms are changed?
Alexander Kanavin
Not really, I don’t think bitbake has a way to build a recipe after all other recipes. Alex
On Mon 6. Apr 2020 at 5.09, Joel A Cohen <aaron@...> wrote:
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Any way to enable automatic package-index if rpms are changed?
Joel A Cohen
One of my most frequent annoying mistakes is to forget to run package index. It would be nice if I could INHERIT += "auto-package-index" or something like that. Is there a hook that such a class would easily be able to hook into? --Aaron
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Error running GO-lang executable on target device
salman.isd@...
I am trying to run the yocto go example on my arm target device. This is the receipe I am using https://git.yoctoproject.org/cgit.cgi/poky/plain/meta/recipes-extended/go-examples/go-helloworld_0.1.bb
I made one change to the recipe. I added GO_LINKSHARED="" which removes the runtime dependecy of the package on "go-runtime". I have used both go 1.12 and go 1.14 The package is built correctly. I transfer and try to run on the device but this error. ./go-helloworld
-sh: ./go-helloworld: No such file or directory
Running file on the binary shows file go-helloworld
go-helloworld: ELF 32-bit LSB pie executable, ARM, EABI5 version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux.so.3, BuildID[sha1]=b5d8fa526402b35c3233f7ce3e578eb9596d9de8, for GNU/Linux 3.2.0, stripped
There is no ld-linux.so.3 on my device, only ld-linux-armhf.so.3. So I creade a symlink like shown ld-linux.so.3 -> ld-linux-armhf.so.3 Tried to run my binary again and this time it segfaults. Does anyone have an idea what might be going on? All my C programs built with yocto refer to the correct ld-linux-armhf.so.3 and run fine.Do I need to install some other go-related stuff before running my program?
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Re: yocto on tinkerbaord using meta-rockchip
Michael Nazzareno Trimarchi
Hi
On Mon, Mar 23, 2020 at 10:49 PM Michael Nazzareno Trimarchi via Lists.Yoctoproject.Org <michael=amarulasolutions.com@...> wrote: I get some experience and get working the tinker board on meta-rockchip layer. I should start to play with maniline soon and test vyasa board to have the same level of support Michael Michael -- | Michael Nazzareno Trimarchi Amarula Solutions BV | | COO - Founder Cruquiuskade 47 | | +31(0)851119172 Amsterdam 1018 AM NL | | [`as] http://www.amarulasolutions.com |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
wic files with multiple rootfs source plugins and rm_work enabled
Joel A Cohen
I'm trying to create a multi-partition image, and just ran across a difficult to track-down issue that I'm a little curious about. It's the intersection of rm_work, and needing to get to the sysroot of another image recipe. RM_WORK_EXCLUDE_ITEMS is respected insomuch as I have an empty directory named "rootfs" that remains in tmp/work/.../secondary-image/rootfs However, a task in rm_work named "rm_work_rootfs" has a "cleandirs" flag set on the rootfs directory. This seems redundant and confusing to me. Why does the rootfs directory need special handling? It took me quite a bit to track down how this works. Is this the correct way to do this? It actually seems to be that the source plugin should be smart enough to populate the sysroot of images as needed, rather than needing to prevent cleaning them. Thanks, Aaron My recipes contain: WKS_FILE = "dev.wks" DEPENDS += "secondary-image" # The following doesn't work, the rootfs directory will be empty RM_WORK_EXCLUDE_ITEMS += "rootfs" # The following is needed... rm_work_rootfs[cleandirs] = "" dev.wks: part / --source rootfs --fstype=ext4 --label platform --align 1024 --use-uuid part /usr/local --source rootfs --rootfs-dir=secondary-image --size 4096 --fstype=ext4 --use-uuid
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
weston systemd and getty@tty1.service
timemaster@...
Hi all, I spent the whole day today fixing this strange problem.
I was trying to get weston working with systemd under root (no other user installed). Corresponding systemd service for weston is already in master, so this part was easy. But after booting the system up, weston desktop appeared and was replaced in a few seconds with the tty1 console. What was even more strange, after a few minutes the desktop reappeared again. Later on today I found out that the problem is in getty@..., which hasn't be installed /etc/systemd/system/getty.target.wants/, it seems to me that this service is not needed at all because systemd will spin up agetty for each chvt anyway. I was able to track the origin of this file down to the function systemd_preset_all and was able to remove the file using a custom function (simple rm) linked in IMAGE_PREPROCESS_COMMAND variable, but would rather do it somewhere else. Thanks TM
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Re: Zeus - Post Build folder corruption
#yocto
Ross Burton <ross@...>
That's not random, that's pieces of Py that presumably were not expanded.
toggle quoted messageShow quoted text
Can you replicate this with just plain oe-core, or what layers/classes do you have? I'm guessing something failed to do Python-expansion correctly so the Py passed through to the shell. Ross
On Sat, 4 Apr 2020 at 05:40, Joel Winarske <joel.winarske@...> wrote:
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Re: Image size reduction
Ajam Ali
Hi All,
Thanks for your suggestions. I am working on your suggestions.
I will let you know if it did not work for me.
Regards,
Ajam Ali
From: yocto@... <yocto@...> on behalf of Gmane Admin via lists.yoctoproject.org <gley-yocto=m.gmane-mx.org@...>
Sent: Saturday, April 4, 2020 9:36 PM To: yocto@... <yocto@...> Subject: Re: [yocto] Image size reduction [CAUTION: This Email is from outside the Organization. Do not click links or open attachments unless you trust the sender.]
Op 29-03-2020 om 18:28 schreef Ajam Ali: > Hi All, > > Actually my current image size is 3.9GB because of heavy size packages > required by my project and without project required packages my image > size in Yocto is 800MB. So your project adds 3.1GB right > I want to reduce the image size as maximum as possible. 3.1GB is huge. Compare to f.i. Libreoffice (installed 0.5GB or so). Either your own code has a lot of fat, or you are pulling in lots of packages you don't really need. But is there no way to advise you without knowing more. > Please suggest the best possible way so that I could reduce the maximum > possible size(desirable below 1.5 GB). > > > Thanks in advance, > Ajam Ali > > > Sent from Outlook Mobile <https://apc01.safelinks.protection.outlook.com/?url=https%3A%2F%2Faka.ms%2Fblhgte&data=02%7C01%7Cajama%40hcl.com%7Cf719cb14fe674f86f02408d7d8b236b0%7C189de737c93a4f5a8b686f4ca9941912%7C0%7C0%7C637216132261322392&sdata=8in2t%2B6mXtrsRwa7GmgGQDl69uRzL7g4smj%2Ba3QG9gU%3D&reserved=0> > ::DISCLAIMER:: > ------------------------------------------------------------------------ > The contents of this e-mail and any attachment(s) are confidential and > intended for the named recipient(s) only. E-mail transmission is not > guaranteed to be secure or error-free as information could be > intercepted, corrupted, lost, destroyed, arrive late or incomplete, or > may contain viruses in transmission. The e mail and its contents (with > or without referred errors) shall therefore not attach any liability on > the originator or HCL or its affiliates. Views or opinions, if any, > presented in this email are solely those of the author and may not > necessarily reflect the views or opinions of HCL or its affiliates. Any > form of reproduction, dissemination, copying, disclosure, modification, > distribution and / or publication of this message without the prior > written consent of authorized representative of HCL is strictly > prohibited. If you have received this email in error please delete it > and notify the sender immediately. Before opening any email and/or > attachments, please check them for viruses and other defects. > ------------------------------------------------------------------------ > > >
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Re: Compressing btrfs image
Gmane Admin
Op 28-03-2020 om 21:06 schreef Konrad Weihmann:
AFAIK there is no way to mount something without root credentials.You can loop mount the image file using udisksctl as an ordinary user, which mounts the image under /media/<user name>. fakeroot/pseudo is intercepting some calls before they will reach the kernel, but mounting isn't a supported option - it just makes all child processes think they running under uid 0.I wanted to take a snap shot, see this thread: "How to create a btrfs snapshot in the rootfs image (during build)?" I found you need to be owner of the root directory of the image, but there is no option to mkfs that with btrfs. The only route for that I found was create and ext4 image with '-E root_owner' then btrfs-convert. But then I found there is no way to 'btrfs send' without becoming root... See also "Howto take a snapshot from an image as ordinary user?" on lkml. I added in "image_types.bbclass:IMAGE_CMD_btrfs ()" two commands:
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Re: Image size reduction
Gmane Admin
Op 29-03-2020 om 18:28 schreef Ajam Ali:
Hi All,So your project adds 3.1GB right I want to reduce the image size as maximum as possible.3.1GB is huge. Compare to f.i. Libreoffice (installed 0.5GB or so). Either your own code has a lot of fat, or you are pulling in lots of packages you don't really need. But is there no way to advise you without knowing more. Please suggest the best possible way so that I could reduce the maximum possible size(desirable below 1.5 GB).
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
[meta-selinux][PATCH 1/3] sysklogd: sync the initscript to latest oe-core version
Yi Zhao
The sysklogd has been updated to 2.1.1 in oe-core and the klogd was
removed from this version since syslogd performs logging of kernel messages. So we update the initscript to adapt it. Signed-off-by: Yi Zhao <yi.zhao@...> --- recipes-extended/sysklogd/files/sysklogd | 47 +++++++++++++++--------- 1 file changed, 29 insertions(+), 18 deletions(-) mode change 100755 => 100644 recipes-extended/sysklogd/files/sysklogd diff --git a/recipes-extended/sysklogd/files/sysklogd b/recipes-extended/sysklogd/files/sysklogd old mode 100755 new mode 100644 index 8c6eeb5..e49c2da --- a/recipes-extended/sysklogd/files/sysklogd +++ b/recipes-extended/sysklogd/files/sysklogd @@ -12,12 +12,13 @@ # Short-Description: System logger ### END INIT INFO +# Source function library. +. /etc/init.d/functions + PATH=/bin:/usr/bin:/sbin:/usr/sbin pidfile_syslogd=/var/run/syslogd.pid -pidfile_klogd=/var/run/klogd.pid -binpath_syslogd=/sbin/syslogd -binpath_klogd=/sbin/klogd +binpath_syslogd=/usr/sbin/syslogd test -x $binpath || exit 0 @@ -87,6 +88,22 @@ running() return 0 } +waitpid () +{ + pid=$1 + # Give pid a chance to exit before we restart with a 5s timeout in 1s intervals + if [ -z "$pid" ]; then + return + fi + timeout=5; + while [ $timeout -gt 0 ] + do + timeout=$(( $timeout-1 )) + kill -0 $pid 2> /dev/null || break + sleep 1 + done +} + case "$1" in start) log_begin_msg "Starting system log daemon..." @@ -94,36 +111,24 @@ case "$1" in start-stop-daemon --start --quiet --pidfile $pidfile_syslogd --name syslogd --startas $binpath_syslogd -- $SYSLOGD test ! -x /sbin/restorecon || /sbin/restorecon -RF /dev/log /var/log/ log_end_msg $? - log_begin_msg "Starting kernel log daemon..." - start-stop-daemon --start --quiet --pidfile $pidfile_klogd --name klogd --startas $binpath_klogd -- $KLOGD - log_end_msg $? ;; stop) log_begin_msg "Stopping system log daemon..." start-stop-daemon --stop --quiet --pidfile $pidfile_syslogd --name syslogd log_end_msg $? - log_begin_msg "Stopping kernel log daemon..." - start-stop-daemon --stop --quiet --retry 3 --exec $binpath_klogd --pidfile $pidfile_klogd - log_end_msg $? ;; reload|force-reload) log_begin_msg "Reloading system log daemon..." start-stop-daemon --stop --quiet --signal 1 --pidfile $pidfile_syslogd --name syslogd log_end_msg $? - log_begin_msg "Reloading kernel log daemon..." - start-stop-daemon --stop --quiet --retry 3 --exec $binpath_klogd --pidfile $pidfile_klogd - start-stop-daemon --start --quiet --pidfile $pidfile_klogd --name klogd --startas $binpath_klogd -- $KLOGD - log_end_msg $? ;; restart) log_begin_msg "Restarting system log daemon..." + pid=`cat $pidfile_syslogd 2> /dev/null` start-stop-daemon --stop --retry 5 --quiet --pidfile $pidfile_syslogd --name syslogd + waitpid $pid start-stop-daemon --start --quiet --pidfile $pidfile_syslogd --name syslogd --startas $binpath_syslogd -- $SYSLOGD log_end_msg $? - log_begin_msg "Reloading kernel log daemon..." - start-stop-daemon --stop --quiet --retry 3 --exec $binpath_klogd --pidfile $pidfile_klogd - start-stop-daemon --start --quiet --pidfile $pidfile_klogd --name klogd --startas $binpath_klogd -- $KLOGD - log_end_msg $? ;; reload-or-restart) if running @@ -133,8 +138,14 @@ case "$1" in $0 start fi ;; + status) + status syslogd + RETVAL=$? + [ $RETVAL -eq 0 ] && exit $rval + exit $RETVAL + ;; *) - log_success_msg "Usage: /etc/init.d/sysklogd {start|stop|reload|restart|force-reload|reload-or-restart}" + log_success_msg "Usage: /etc/init.d/sysklogd {start|stop|reload|restart|force-reload|reload-or-restart|status}" exit 1 esac -- 2.17.1
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
[meta-selinux][PATCH 3/3] bind: install volatiles file with correct name
Yi Zhao
Install volatiles file as 04_bind rather than volatiles.04_bind.
Signed-off-by: Yi Zhao <yi.zhao@...> --- recipes-connectivity/bind/bind_selinux.inc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/recipes-connectivity/bind/bind_selinux.inc b/recipes-connectivity/bind/bind_selinux.inc index 1dfef8a..1be9260 100644 --- a/recipes-connectivity/bind/bind_selinux.inc +++ b/recipes-connectivity/bind/bind_selinux.inc @@ -4,7 +4,7 @@ SRC_URI += "file://volatiles.04_bind" do_install_append() { install -d ${D}${sysconfdir}/default/volatiles - install -m 0644 ${WORKDIR}/volatiles.04_bind ${D}${sysconfdir}/default/volatiles/volatiles.04_bind + install -m 0644 ${WORKDIR}/volatiles.04_bind ${D}${sysconfdir}/default/volatiles/04_bind sed -i '/^\s*\/usr\/sbin\/rndc-confgen/a\ [ -x /sbin/restorecon ] && /sbin/restorecon -F /etc/bind/rndc.key' ${D}${sysconfdir}/init.d/bind -- 2.17.1
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
[meta-selinux][PATCH 2/3] eudev: remove udev-cache and sync the initscript to latest oe-core version
Yi Zhao
The udev-cache has been remove in oe-core commit
048f4149b8438c521e8b65a3c96d850a9b4a3e5b. So we can also remove it. Also sync the initscript to latest oe-core version. Signed-off-by: Yi Zhao <yi.zhao@...> --- recipes-core/eudev/files/init | 66 +++++------------------------ recipes-core/eudev/files/udev-cache | 32 -------------- 2 files changed, 11 insertions(+), 87 deletions(-) delete mode 100644 recipes-core/eudev/files/udev-cache diff --git a/recipes-core/eudev/files/init b/recipes-core/eudev/files/init index ee64f86..daa4079 100644 --- a/recipes-core/eudev/files/init +++ b/recipes-core/eudev/files/init @@ -3,7 +3,7 @@ ### BEGIN INIT INFO # Provides: udev # Required-Start: mountvirtfs -# Required-Stop: +# Required-Stop: # Default-Start: S # Default-Stop: # Short-Description: Start udevd, populate /dev and load drivers. @@ -14,23 +14,10 @@ export TZ=/etc/localtime [ -d /sys/class ] || exit 1 [ -r /proc/mounts ] || exit 1 [ -x @UDEVD@ ] || exit 1 -if [ "$use_udev_cache" != "" ]; then - [ -f /etc/default/udev-cache ] && . /etc/default/udev-cache -fi + [ -f /etc/udev/udev.conf ] && . /etc/udev/udev.conf [ -f /etc/default/rcS ] && . /etc/default/rcS -readfiles () { - READDATA="" - for filename in $@; do - if [ -r $filename ]; then - while read line; do - READDATA="$READDATA$line" - done < $filename - fi - done -} - kill_udevd () { pid=`pidof -x udevd` [ -n "$pid" ] && kill $pid @@ -59,58 +46,27 @@ case "$1" in # the automount rule for udev needs /tmp directory available, as /tmp is a symlink # to /var/tmp which in turn is a symlink to /var/volatile/tmp, we need to make sure # /var/volatile/tmp directory to be available. - mkdir -p /var/volatile/tmp + mkdir -m 1777 -p /var/volatile/tmp # restorecon /run early to allow mdadm creating dir /run/mdadm test ! -x /sbin/restorecon || /sbin/restorecon -F /run - # Cache handling. - # A list of files which are used as a criteria to judge whether the udev cache could be reused. - CMP_FILE_LIST="/proc/version /proc/cmdline /proc/devices /proc/atags" - if [ "$use_udev_cache" != "" ]; then - if [ "$DEVCACHE" != "" ]; then - if [ -e $DEVCACHE ]; then - readfiles $CMP_FILE_LIST - NEWDATA="$READDATA" - readfiles /etc/udev/cache.data - OLDDATA="$READDATA" - if [ "$OLDDATA" = "$NEWDATA" ]; then - tar --directory=/ -xf $DEVCACHE > /dev/null 2>&1 - not_first_boot=1 - [ "$VERBOSE" != "no" ] && echo "udev: using cache file $DEVCACHE" - [ -e /dev/shm/udev.cache ] && rm -f /dev/shm/udev.cache - else - # Output detailed reason why the cached /dev is not used - if [ "$VERBOSE" != "no" ]; then - echo "udev: udev cache not used" - echo "udev: we use $CMP_FILE_LIST as criteria to judge whether the cache /dev could be resued" - echo "udev: olddata: $OLDDATA" - echo "udev: newdata: $NEWDATA" - fi - echo "$NEWDATA" > /dev/shm/udev.cache - fi - else - if [ "$ROOTFS_READ_ONLY" != "yes" ]; then - # If rootfs is not read-only, it's possible that a new udev cache would be generated; - # otherwise, we do not bother to read files. - readfiles $CMP_FILE_LIST - echo "$READDATA" > /dev/shm/udev.cache - fi - fi - fi - fi - # make_extra_nodes kill_udevd > "/dev/null" 2>&1 # trigger the sorted events - echo -e '\000\000\000\000' > /proc/sys/kernel/hotplug + [ -e /proc/sys/kernel/hotplug ] && echo -e '\000' >/proc/sys/kernel/hotplug @UDEVD@ -d udevadm control --env=STARTUP=1 if [ "$not_first_boot" != "" ];then - udevadm trigger --action=add --subsystem-nomatch=tty --subsystem-nomatch=mem --subsystem-nomatch=vc --subsystem-nomatch=vtconsole --subsystem-nomatch=misc --subsystem-nomatch=dcon --subsystem-nomatch=pci_bus --subsystem-nomatch=graphics --subsystem-nomatch=backlight --subsystem-nomatch=video4linux --subsystem-nomatch=platform - (udevadm settle --timeout=10; udevadm control --env=STARTUP=)& + if [ "$PROBE_PLATFORM_BUS" != "yes" ]; then + PLATFORM_BUS_NOMATCH="--subsystem-nomatch=platform" + else + PLATFORM_BUS_NOMATCH="" + fi + udevadm trigger --action=add --subsystem-nomatch=tty --subsystem-nomatch=mem --subsystem-nomatch=vc --subsystem-nomatch=vtconsole --subsystem-nomatch=misc --subsystem-nomatch=dcon --subsystem-nomatch=pci_bus --subsystem-nomatch=graphics --subsystem-nomatch=backlight --subsystem-nomatch=video4linux $PLATFORM_BUS_NOMATCH + (udevadm settle --timeout=3; udevadm control --env=STARTUP=)& else udevadm trigger --action=add udevadm settle diff --git a/recipes-core/eudev/files/udev-cache b/recipes-core/eudev/files/udev-cache deleted file mode 100644 index 6898577..0000000 --- a/recipes-core/eudev/files/udev-cache +++ /dev/null @@ -1,32 +0,0 @@ -#!/bin/sh -e - -### BEGIN INIT INFO -# Provides: udev-cache -# Required-Start: mountall -# Required-Stop: -# Default-Start: S -# Default-Stop: -# Short-Description: cache /dev to speedup the udev next boot -### END INIT INFO - -export TZ=/etc/localtime - -[ -r /proc/mounts ] || exit 1 -[ -x @UDEVD@ ] || exit 1 -[ -d /sys/class ] || exit 1 - -[ -f /etc/default/rcS ] && . /etc/default/rcS -[ -f /etc/default/udev-cache ] && . /etc/default/udev-cache - -if [ "$ROOTFS_READ_ONLY" = "yes" ]; then - [ "$VERBOSE" != "no" ] && echo "udev-cache: read-only rootfs, skip generating udev-cache" - exit 0 -fi - -if [ "$DEVCACHE" != "" -a -e /dev/shm/udev.cache ]; then - echo "Populating dev cache" - tar --directory=/ --selinux --xattrs -cf "$DEVCACHE" dev - mv /dev/shm/udev.cache /etc/udev/cache.data -fi - -exit 0 -- 2.17.1
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|