Codebase list pseudo / df1d132
Revert "pseudo_fix_path: do not expand symlinks in /proc" This reverts commit 300d7570720bc14d01f49d285498d71cce3ce44e. This is causing faults for real world builds, e.g.: Exception: subprocess.CalledProcessError: Command 'tar --exclude='.git' --exclude='__pycache__' --xattrs --xattrs-include='*' -chf - -C /home/pokybuild/yocto-worker/beaglebone/build/meta -p . | tar --xattrs --xattrs-include='*' -xf - -C /home/pokybuild/yocto-worker/beaglebone/build/build/tmp/work/beaglebone_yocto-poky-linux-gnueabi/core-image-minimal/1.0-r0/sdk-ext/image//usr/local/oe-sdk-hardcoded-buildpath/layers/build/meta' returned non-zero exit status 134. Subprocess output: abort()ing pseudo client by server request. See https://wiki.yoctoproject.org/wiki/Pseudo_Abort for more details on this. Check logfile: /home/pokybuild/yocto-worker/beaglebone/build/build/tmp/work/beaglebone_yocto-poky-linux-gnueabi/core-image-minimal/1.0-r0/pseudo//pseudo.log /bin/sh: line 1: 1732017 Broken pipe tar --exclude='.git' --exclude='__pycache__' --xattrs --xattrs-include='*' -chf - -C /home/pokybuild/yocto-worker/beaglebone/build/meta -p . 1732018 Aborted (core dumped) | tar --xattrs --xattrs-include='*' -xf - -C /home/pokybuild/yocto-worker/beaglebone/build/build/tmp/work/beaglebone_yocto-poky-linux-gnueabi/core-image-minimal/1.0-r0/sdk-ext/image//usr/local/oe-sdk-hardcoded-buildpath/layers/build/meta ERROR: Logfile of failure stored in: /home/pokybuild/yocto-worker/beaglebone/build/build/tmp/work/beaglebone_yocto-poky-linux-gnueabi/core-image-minimal/1.0-r0/temp/log.do_populate_sdk_ext.1725807 NOTE: recipe core-image-minimal-1.0-r0: task do_populate_sdk_ext: Failed ERROR: Task (/home/pokybuild/yocto-worker/beaglebone/build/meta/recipes-core/images/core-image-minimal.bb:do_populate_sdk_ext) failed with exit code '1' Pseudo log: path mismatch [1 link]: ino 14050447 db '/home/pokybuild/yocto-worker/beaglebone/build/build/tmp/work/beaglebone_yocto-poky-linux-gnueabi/core-image-minimal/1.0-r0/sdk-ext/image/usr/local/oe-sdk-hardcoded-buildpath/layers/build/meta/COPYING.MIT' req '/proc/self/fd/3/./COPYING.MIT'. Richard Purdie 2 years ago
1 changed file(s) with 0 addition(s) and 17 deletion(s). Raw diff Collapse all Expand all
2727 #include "pseudo.h"
2828 #include "pseudo_ipc.h"
2929 #include "pseudo_db.h"
30
31 /* O_PATH is defined in glibc 2.16 and later only */
32 #ifndef O_PATH
33 #define O_PATH 010000000
34 #endif
3530
3631 struct pseudo_variables {
3732 char *key;
682677 */
683678 if (!leave_this && is_dir) {
684679 int is_link = S_ISLNK(buf->st_mode);
685
686 /* do not expand symlinks in the proc filesystem, since they may not be real
687 * check if newpath starts with "/proc/"
688 * strlen of "/proc/" = 6
689 */
690 if (is_link && (strncmp("/proc/", newpath, 6) == 0)) {
691 pseudo_debug(PDBGF_PATH | PDBGF_VERBOSE,
692 "pae: '%s' is procfs symlink, not expanding\n",
693 newpath);
694 is_link = 0;
695 }
696
697680 if (link_recursion >= PSEUDO_MAX_LINK_RECURSION && is_link) {
698681 pseudo_diag("link recursion too deep, not expanding path '%s'.\n", newpath);
699682 is_link = 0;