Skip to content

haptics: drop the stale __assign_str argument in the tracepoint header - #3140

Merged
loki666 merged 1 commit into
ROCKNIX:nextfrom
xiaodoudou:haptics-trace-assign-str
Aug 7, 2026
Merged

haptics: drop the stale __assign_str argument in the tracepoint header#3140
loki666 merged 1 commit into
ROCKNIX:nextfrom
xiaodoudou:haptics-trace-assign-str

Conversation

@xiaodoudou

@xiaodoudou xiaodoudou commented Aug 7, 2026

Copy link
Copy Markdown
Contributor

Summary

  • What is the goal of this PR?

__assign_str() lost its second parameter in 6.10; it now takes the string from the matching __string() entry, which sits right above it. Both vendored haptics patches still pass two arguments in include/trace/events/qcom_haptics.h, so the header does not compile once tracepoints are enabled:

include/trace/events/qcom_haptics.h:94:1: error: macro '__assign_str' passed 2 arguments, but takes just 1

This is invisible in the shipping config: CONFIG_FTRACE is off, so the TP_fast_assign body is never really compiled and the stale call is never checked. The fix is one line each in the SM8550 and SM8750 patches, which ship the same header.

Testing

  • How was this tested?

Built the SM8550 aarch64 image with CONFIG_FTRACE=y and CONFIG_ENABLE_DEFAULT_TRACERS=y. SM8750 was not built; the change there is textually identical and the header is the same file.

  • Test results:

Without this change the build fails at drivers/input/misc/qcom-hv-haptics.o. With it the kernel builds clean and exposes working ufs: tracepoints. Nothing exercised the haptics tracepoint at runtime, and with CONFIG_FTRACE=n this is a no-op in the shipping config anyway.

Additional Context

Spotted while working on the SM8550 deep suspend/resume PR (#3126): enabling tracepoints there to investigate UFS clock gating is what made the build fail. The fix itself is unrelated to that work, hence a separate PR.


AI Usage

While ROCKNIX doesn't have restrictions on AI tools in contributing, please be transparent about their usage as it
helps set the right context for reviewers.

Did you use AI tools to help write this code? YES

Yes. AI was used to find the bug and write the change.

__assign_str() lost its second parameter in 6.10; the string is taken
from the matching __string() entry instead. Both vendored haptics
patches still pass two, so the tracepoint header does not compile:

  include/trace/events/qcom_haptics.h:94:1: error: macro '__assign_str'
  passed 2 arguments, but takes just 1

This is invisible in the shipping config. CONFIG_FTRACE is off, so the
TP_fast_assign body is never really compiled and the stale call is
never checked. It breaks the build immediately for anyone who turns
tracepoints on, which is how it surfaced: enabling them on SM8550 to
investigate the UFS clock-gating behaviour in ROCKNIX#3126.

SM8550 and SM8750 carry the same header and both need it.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
@xiaodoudou
xiaodoudou force-pushed the haptics-trace-assign-str branch from f999cf1 to d8a3b36 Compare August 7, 2026 13:03
@loki666
loki666 added this pull request to the merge queue Aug 7, 2026
Merged via the queue into ROCKNIX:next with commit 8a3527b Aug 7, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants