Bug 1850961

Summary: /usr/share/systemtap/tapset/sssd_functions.stp missing a comma
Product: Red Hat Enterprise Linux 8 Reporter: Alexey Tikhonov <atikhono>
Component: sssdAssignee: avisiedo <avisiedo>
Status: CLOSED ERRATA QA Contact: sssd-qe <sssd-qe>
Severity: low Docs Contact:
Priority: low    
Version: 8.2CC: abokovoy, apeetham, atikhono, avisiedo, extras-qa, grajaiya, jhrozek, lslebodn, mcermak, mzidek, pbrezina, rharwood, sbose, sgoveas, ssorce, thalman, tscherf, wcohen
Target Milestone: rcKeywords: Triaged
Target Release: 8.0   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard: sync-to-jira
Fixed In Version: sssd-2.3.0-3.el8 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: 1840194 Environment:
Last Closed: 2020-11-04 02:05:29 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On: 1840194    
Bug Blocks:    

Description Alexey Tikhonov 2020-06-25 09:30:35 UTC
+++ This bug was initially created as a clone of Bug #1840194 +++

Description of problem:

When running systemtap testsuite on fedora rawhide I saw a lot of failures. Like the following:

FAIL: abort: TEST 5: abort() in the middle of a probe handler body (--compatible 3.3): stderr: fails to match regex "^semantic error: unresolved function \(similar: [^\n]*?\): identifier 'abort' at [^\n]*?\.stp:3:5\n": got "parse error: expected 'probe', 'global', 'private', 'function', or '%{'
        saw: identifier 'METHOD_SENTINEL' at /usr/share/systemtap/tapset/sssd_functions.stp:10:34
     source:        METHOD_RESOLVER_HANDLER=9 METHOD_SENTINEL=10
                                              ^

1 parse error.
WARNING: tapset "/usr/share/systemtap/tapset/sssd_functions.stp" has errors, and will be skipped
Pass 2: analysis failed.  [man error::pass2]
"
FAIL: abort: TEST 7: abort() in timer.profile (more concurrency and no globals): stderr: string should be "", but got "parse error: expected 'probe', 'global', 'private', 'function', or '%{'
        saw: identifier 'METHOD_SENTINEL' at /usr/share/systemtap/tapset/sssd_functions.stp:10:34
     source:        METHOD_RESOLVER_HANDLER=9 METHOD_SENTINEL=10
                                              ^

1 parse error.
WARNING: tapset "/usr/share/systemtap/tapset/sssd_functions.stp" has errors, and will be skipped
"


Version-Release number of selected component (if applicable):


How reproducible:

every time


Steps to Reproduce:
1. dnf install systemtap-testsuite kernel-devel
2. dnf debuginfo kernel
3.  sudo stap -e 'probe timer.profile { 
    abort();
    error("fire after abort!\n")
}'


Actual results:


parse error: expected 'probe', 'global', 'private', 'function', or '%{'
        saw: identifier 'METHOD_SENTINEL' at /usr/share/systemtap/tapset/sssd_functions.stp:10:34
     source:        METHOD_RESOLVER_HANDLER=9 METHOD_SENTINEL=10
                                              ^

1 parse error.
WARNING: tapset "/usr/share/systemtap/tapset/sssd_functions.stp" has errors, and will be skipped


Expected results:

$ sudo stap -e 'probe timer.profile { 
    abort();
    error("fire after abort!\n")
}'



Additional info:

Looks like a trivial missing comma to fix the issue.

--- Additional comment from William Cohen on 2020-05-26 14:51:50 UTC ---

Also see the same problem with the sssd_functions.stp file on F32 with sssd-common-2.3.0-1.fc32.x86_64.

--- Additional comment from avisiedo on 2020-06-11 07:58:45 UTC ---

Hi William,

Thank you very much for spotting this issue and your patch. I will push the changes as soon as possible.

Best regards

Whiteboard: sync-to-jira

--- Additional comment from Alexey Tikhonov on 2020-06-25 08:24:39 UTC ---

Upstream PR: https://github.com/SSSD/sssd/pull/5202

Comment 1 Alexey Tikhonov 2020-06-25 12:09:02 UTC
Pushed PR: https://github.com/SSSD/sssd/pull/5202

* `master`
    * 66029529fa0f0e2d16999f22294822deeec5f60b - systemtap: Missing a comma

Comment 2 Alexey Tikhonov 2020-07-03 09:13:04 UTC
*** Bug 1853592 has been marked as a duplicate of this bug. ***

Comment 5 Amith 2020-07-07 19:28:10 UTC
Verified the bug on SSSD Version: sssd-2.3.0-3.el8.x86_64

Steps followed during verification:

1. Reproduce Parse error with older version of SSSD.

2. Check the sssd_functions.stp file for the presence of comma.

# grep "METHOD_RESOLVER_HANDLER=9" /usr/share/systemtap/tapset/sssd_functions.stp 
       METHOD_RESOLVER_HANDLER=9 METHOD_SENTINEL=10

3. Upgrade the sssd version to latest build.

4. Repeat step-(2)

# grep "METHOD_RESOLVER_HANDLER=9" /usr/share/systemtap/tapset/sssd_functions.stp 
       METHOD_RESOLVER_HANDLER=9, METHOD_SENTINEL=10

5. Execute systemtap testsuite with latest sssd build and look for "parse error" in logs.

https://beaker.engineering.redhat.com/jobs/4396728 -- GREEN JOB.

Comment 9 errata-xmlrpc 2020-11-04 02:05:29 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory (sssd bug fix and enhancement update), and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHBA-2020:4569