From: John L. <mov...@us...> - 2003-10-26 00:37:53
|
Update of /cvsroot/oprofile/oprofile/daemon In directory sc8-pr-cvs1:/tmp/cvs-serv23491/daemon Modified Files: opd_cookie.c opd_sfile.c Log Message: ifixes for 2.6 image filtering Index: opd_cookie.c =================================================================== RCS file: /cvsroot/oprofile/oprofile/daemon/opd_cookie.c,v retrieving revision 1.6 retrieving revision 1.7 diff -u -p -d -r1.6 -r1.7 --- opd_cookie.c 26 Oct 2003 00:21:07 -0000 1.6 +++ opd_cookie.c 26 Oct 2003 00:36:22 -0000 1.7 @@ -117,6 +117,7 @@ char const * find_cookie(cookie_t cookie goto out; } + /* not sure this can ever happen due to is_cookie_ignored */ entry = create_cookie(cookie); list_add(&entry->list, &hashes[hash]); out: @@ -136,8 +137,10 @@ int is_cookie_ignored(cookie_t cookie) goto out; } - /* The cookie isn't found. We assume it's ignored. */ - return 1; + entry = create_cookie(cookie); + list_add(&entry->list, &hashes[hash]); + return entry->ignored; + out: return entry->ignored; } Index: opd_sfile.c =================================================================== RCS file: /cvsroot/oprofile/oprofile/daemon/opd_sfile.c,v retrieving revision 1.11 retrieving revision 1.12 diff -u -p -d -r1.11 -r1.12 --- opd_sfile.c 26 Oct 2003 00:21:07 -0000 1.11 +++ opd_sfile.c 26 Oct 2003 00:36:22 -0000 1.12 @@ -137,15 +137,14 @@ create_sfile(struct transient const * tr if (separate_kernel || (separate_lib && !ki)) sf->app_cookie = trans->app_cookie; - sf->ignored = 1; - if (separate_lib && trans->app_cookie != INVALID_COOKIE) - sf->ignored = is_cookie_ignored(trans->app_cookie); - if (sf->ignored) { - if (!ki) - sf->ignored = is_cookie_ignored(trans->cookie); - else - sf->ignored = is_image_ignored(ki->name); - } + if (!ki) + sf->ignored = is_cookie_ignored(sf->cookie); + else + sf->ignored = is_image_ignored(ki->name); + + /* give a dependent sfile a chance to redeem itself */ + if (sf->ignored && sf->app_cookie != INVALID_COOKIE) + sf->ignored = is_cookie_ignored(sf->app_cookie); return sf; } |