CC: kbuild-...@lists.01.org TO: cros-kernel-buildrepo...@googlegroups.com tree: https://android.googlesource.com/kernel/common android-5.4 head: ff2d9520b4aa4a23e2c9e37b6a5ca255d6f5715e commit: ff2d9520b4aa4a23e2c9e37b6a5ca255d6f5715e [3/3] ANDROID: Add a tracepoint for mapping inode to full path :::::: branch date: 5 months ago :::::: commit date: 5 months ago config: x86_64-randconfig-c002-20200602 (attached as .config) compiler: gcc-9 (Debian 9.3.0-13) 9.3.0
If you fix the issue, kindly add following tag as appropriate Reported-by: kbuild test robot <l...@intel.com> Reported-by: Julia Lawall <julia.law...@lip6.fr> coccinelle warnings: (new ones prefixed by >>) >> fs/namei.c:811:17-24: ERROR: reference preceded by free on line 799 git remote add android-common https://android.googlesource.com/kernel/common git remote update android-common git checkout ff2d9520b4aa4a23e2c9e37b6a5ca255d6f5715e vim +811 fs/namei.c ff2d9520b4aa4a Joel Fernandes 2019-03-14 777 ff2d9520b4aa4a Joel Fernandes 2019-03-14 778 static void success_walk_trace(struct nameidata *nd) ff2d9520b4aa4a Joel Fernandes 2019-03-14 779 { ff2d9520b4aa4a Joel Fernandes 2019-03-14 780 struct path *pt = &nd->path; ff2d9520b4aa4a Joel Fernandes 2019-03-14 781 struct inode *i = nd->inode; ff2d9520b4aa4a Joel Fernandes 2019-03-14 782 char buf[INIT_PATH_SIZE], *try_buf; ff2d9520b4aa4a Joel Fernandes 2019-03-14 783 int cur_path_size; ff2d9520b4aa4a Joel Fernandes 2019-03-14 784 char *p; ff2d9520b4aa4a Joel Fernandes 2019-03-14 785 ff2d9520b4aa4a Joel Fernandes 2019-03-14 786 /* When eBPF/ tracepoint is disabled, keep overhead low. */ ff2d9520b4aa4a Joel Fernandes 2019-03-14 787 if (!trace_inodepath_enabled()) ff2d9520b4aa4a Joel Fernandes 2019-03-14 788 return; ff2d9520b4aa4a Joel Fernandes 2019-03-14 789 ff2d9520b4aa4a Joel Fernandes 2019-03-14 790 /* First try stack allocated buffer. */ ff2d9520b4aa4a Joel Fernandes 2019-03-14 791 try_buf = buf; ff2d9520b4aa4a Joel Fernandes 2019-03-14 792 cur_path_size = INIT_PATH_SIZE; ff2d9520b4aa4a Joel Fernandes 2019-03-14 793 ff2d9520b4aa4a Joel Fernandes 2019-03-14 794 while (cur_path_size <= PATH_MAX) { ff2d9520b4aa4a Joel Fernandes 2019-03-14 795 /* Free previous heap allocation if we are now trying ff2d9520b4aa4a Joel Fernandes 2019-03-14 796 * a second or later heap allocation. ff2d9520b4aa4a Joel Fernandes 2019-03-14 797 */ ff2d9520b4aa4a Joel Fernandes 2019-03-14 798 if (try_buf != buf) ff2d9520b4aa4a Joel Fernandes 2019-03-14 @799 kfree(try_buf); ff2d9520b4aa4a Joel Fernandes 2019-03-14 800 ff2d9520b4aa4a Joel Fernandes 2019-03-14 801 /* All but the first alloc are on the heap. */ ff2d9520b4aa4a Joel Fernandes 2019-03-14 802 if (cur_path_size != INIT_PATH_SIZE) { ff2d9520b4aa4a Joel Fernandes 2019-03-14 803 try_buf = kmalloc(cur_path_size, GFP_KERNEL); ff2d9520b4aa4a Joel Fernandes 2019-03-14 804 if (!try_buf) { ff2d9520b4aa4a Joel Fernandes 2019-03-14 805 try_buf = buf; ff2d9520b4aa4a Joel Fernandes 2019-03-14 806 sprintf(try_buf, "error:buf_alloc_failed"); ff2d9520b4aa4a Joel Fernandes 2019-03-14 807 break; ff2d9520b4aa4a Joel Fernandes 2019-03-14 808 } ff2d9520b4aa4a Joel Fernandes 2019-03-14 809 } ff2d9520b4aa4a Joel Fernandes 2019-03-14 810 ff2d9520b4aa4a Joel Fernandes 2019-03-14 @811 p = d_path(pt, try_buf, cur_path_size); ff2d9520b4aa4a Joel Fernandes 2019-03-14 812 ff2d9520b4aa4a Joel Fernandes 2019-03-14 813 if (!IS_ERR(p)) { ff2d9520b4aa4a Joel Fernandes 2019-03-14 814 char *end = mangle_path(try_buf, p, "\n"); ff2d9520b4aa4a Joel Fernandes 2019-03-14 815 ff2d9520b4aa4a Joel Fernandes 2019-03-14 816 if (end) { ff2d9520b4aa4a Joel Fernandes 2019-03-14 817 try_buf[end - try_buf] = 0; ff2d9520b4aa4a Joel Fernandes 2019-03-14 818 break; ff2d9520b4aa4a Joel Fernandes 2019-03-14 819 } else { ff2d9520b4aa4a Joel Fernandes 2019-03-14 820 /* On mangle errors, double path size ff2d9520b4aa4a Joel Fernandes 2019-03-14 821 * till PATH_MAX. ff2d9520b4aa4a Joel Fernandes 2019-03-14 822 */ ff2d9520b4aa4a Joel Fernandes 2019-03-14 823 cur_path_size = cur_path_size << 1; ff2d9520b4aa4a Joel Fernandes 2019-03-14 824 continue; ff2d9520b4aa4a Joel Fernandes 2019-03-14 825 } ff2d9520b4aa4a Joel Fernandes 2019-03-14 826 } ff2d9520b4aa4a Joel Fernandes 2019-03-14 827 ff2d9520b4aa4a Joel Fernandes 2019-03-14 828 if (PTR_ERR(p) == -ENAMETOOLONG) { ff2d9520b4aa4a Joel Fernandes 2019-03-14 829 /* If d_path complains that name is too long, ff2d9520b4aa4a Joel Fernandes 2019-03-14 830 * then double path size till PATH_MAX. ff2d9520b4aa4a Joel Fernandes 2019-03-14 831 */ ff2d9520b4aa4a Joel Fernandes 2019-03-14 832 cur_path_size = cur_path_size << 1; ff2d9520b4aa4a Joel Fernandes 2019-03-14 833 continue; ff2d9520b4aa4a Joel Fernandes 2019-03-14 834 } ff2d9520b4aa4a Joel Fernandes 2019-03-14 835 ff2d9520b4aa4a Joel Fernandes 2019-03-14 836 sprintf(try_buf, "error:d_path_failed_%lu", ff2d9520b4aa4a Joel Fernandes 2019-03-14 837 -1 * PTR_ERR(p)); ff2d9520b4aa4a Joel Fernandes 2019-03-14 838 break; ff2d9520b4aa4a Joel Fernandes 2019-03-14 839 } ff2d9520b4aa4a Joel Fernandes 2019-03-14 840 ff2d9520b4aa4a Joel Fernandes 2019-03-14 841 if (cur_path_size > PATH_MAX) ff2d9520b4aa4a Joel Fernandes 2019-03-14 842 sprintf(try_buf, "error:d_path_name_too_long"); ff2d9520b4aa4a Joel Fernandes 2019-03-14 843 ff2d9520b4aa4a Joel Fernandes 2019-03-14 844 trace_inodepath(i, try_buf); ff2d9520b4aa4a Joel Fernandes 2019-03-14 845 ff2d9520b4aa4a Joel Fernandes 2019-03-14 846 if (try_buf != buf) ff2d9520b4aa4a Joel Fernandes 2019-03-14 847 kfree(try_buf); ff2d9520b4aa4a Joel Fernandes 2019-03-14 848 return; ff2d9520b4aa4a Joel Fernandes 2019-03-14 849 } ff2d9520b4aa4a Joel Fernandes 2019-03-14 850 --- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/kbuild-...@lists.01.org
.config.gz
Description: application/gzip
_______________________________________________ kbuild mailing list -- kbuild@lists.01.org To unsubscribe send an email to kbuild-le...@lists.01.org