udev-cache: Remove unnecessary tar read from stdin
PATCH 1/2 udev-cache: Remove unnecessary tar read from stdin
xargs already formats the inputs to tar correctly, so the '-T -' argument to tar is unnecessary.
Signed-off-by Ken Sharp <[email protected]>
--- meta/recipes-core/udev/udev/udev-cache | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
meta/recipes-core/udev/udev/udev-cache +1 -1
@@ -57,7 +57,7 @@ echo "Populating dev cache" udevadm control --stop-exec-queue sysconf_cmd > "$SYSCONF_TMP" find /dev -xdev \( -type b -o -type c -o -type l \) | cut -c 2- \ - | xargs tar cf "${DEVCACHE_TMP}" -T- + | xargs tar cf "${DEVCACHE_TMP}" gzip < "${DEVCACHE_TMP}" > "$DEVCACHE" rm -f "${DEVCACHE_TMP}" mv "$SYSCONF_TMP" "$SYSCONF_CACHED"
Signature · 1 line
1.9.1
PATCH 2/2 udev-cache: improve error handling
If an error occurs while the udev cache is being populated, the system is left in a state where udev is stopped. Remedy this with a clean up function to restart udev and remove any intermediate files.
Signed-off-by Ken Sharp <[email protected]>
Reviewed-by Ben Shelton <[email protected]>
--- meta/recipes-core/udev/udev/udev-cache | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-)
meta/recipes-core/udev/udev/udev-cache +7 -1
@@ -51,9 +51,15 @@ fi [ "${VERBOSE}" == "no" ] || echo "found." echo "Populating dev cache" +err_cleanup () { + echo "udev-cache: update failed!" + udevadm control --start-exec-queue + rm -f -- "$SYSCONF_TMP" "$DEVCACHE_TMP" "$DEVCACHE" "$SYSCONF_CACHED" +} + ( set -e - trap 'echo "udev-cache: update failed!"' EXIT + trap 'err_cleanup' EXIT udevadm control --stop-exec-queue sysconf_cmd > "$SYSCONF_TMP" find /dev -xdev \( -type b -o -type c -o -type l \) | cut -c 2- \
Signature · 1 line
1.9.1