Skip to content

Hide userland threads by default - #2083

Merged
fasterit merged 2 commits into
htop-dev:mainfrom
BenBE:config-defaults-hide-threads
Aug 22, 2026
Merged

Hide userland threads by default#2083
fasterit merged 2 commits into
htop-dev:mainfrom
BenBE:config-defaults-hide-threads

Conversation

@BenBE

@BenBE BenBE commented Aug 22, 2026

Copy link
Copy Markdown
Member

This PR changes a long‑standing default, and might be one of the most visible changes yet. Userland threads were originally shown to help users learn about NPTL/LWP at a time when these threading models were still rare, but that historical purpose has since long faded. Modern applications routinely spawn large numbers of lightweight threads, and exposing all of them by default has become more distracting than informative.

With NPTL now widely adopted and commonly used, hiding userland threads provides a cleaner, more relevant process view. The updated default enables hide_userland_threads, reducing clutter while still allowing users to inspect userland threads explicitly when needed. Please note that this change only affects new setups while existing configurations are kept unchanged unless they are manually adjusted.

Please note: To restore the old behavior for your setup use the Shift+H (capital H) toggle key while watching the process list OR hit F2 to enter setup, navigate the Display Options to the left and toggle the Hide userland process threads entry in the Global options: section on the right by pressing SPACE or ENTER once that entry is selected; hit F10 or q to leave the setup screen.

This commit changes a long‑standing default, and might be one of
the most visible changes yet. Userland threads were originally
shown to help users learn about NPTL/LWP at a time when these
threading models were still rare, but that historical purpose
has since long faded. Modern applications routinely spawn large
numbers of lightweight threads, and exposing all of them by
default has become more distracting than informative.

With NPTL now widely adopted and commonly used, hiding userland
threads provides a cleaner, more relevant process view. The
updated default enables hide_userland_threads, reducing clutter
while still allowing users to inspect userland threads explicitly
when needed. Please note that this change only affects new setups
while existing configurations are kept unchanged unless they are
manually adjusted.
@BenBE BenBE added this to the 3.6.0 milestone Aug 22, 2026
@BenBE BenBE added documentation 📖 Improvements or additions to documentation default change Changes a default setting or default UI object labels Aug 22, 2026
@coderabbitai

coderabbitai Bot commented Aug 22, 2026

Copy link
Copy Markdown

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Repository UI

Review profile: ASSERTIVE

Plan: Pro Plus

Run ID: fca7e643-3378-4c38-a1d9-9c8cd75d7be1

📥 Commits

Reviewing files that changed from the base of the PR and between c69e29c and 11ded9b.

📒 Files selected for processing (1)
  • htop.1.in

Included review availability: Your plan provides up to 8 included reviews per hour; 7 remain after this review.


📝 Walkthrough

Walkthrough

Settings_new now sets hideUserlandThreads to true by default. The manual corrects the K toggle description and clarifies that H hides NPTL, pthreads, LWP, and other userspace threads.

Suggested reviewers: hishamhm, natoscott, fasterit

Poem

Userland threads now stay unseen,
While K and H state what they mean.
Defaults align with documented view,
Clear words guide each toggle through.

Merge Risk: ⚪ Minimal · up to 11ded

This changes the default process view for new setups by hiding userland threads, while existing configurations remain unchanged and the prior behavior remains available through the documented controls. No actionable merge-blocking risk remains after normal checks and review.


Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@fasterit fasterit left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

etc -> etc.
Otherwise fine.
Try to find a shorter summary for the Changelog 😄 .

Comment thread htop.1.in Outdated
@BenBE
BenBE force-pushed the config-defaults-hide-threads branch from c69e29c to 11ded9b Compare August 22, 2026 14:41
@fasterit
fasterit merged commit 1a4504c into htop-dev:main Aug 22, 2026
21 checks passed
@hishamhm

Copy link
Copy Markdown
Member

Makes sense :) I toggle them often, depending on whether I'm interested in the inner workings of some processes or just want an overall look of the system.

Here's an unsolicited wild idea that occurred to me the other day: what if clicking the thr and kthr counters of the Meter toggled their display on and off? I don't think anything in Meters is clickable yet (at least they weren't in my days), but seeing the thread gray out made this thought spring to my mind the other day.

Cheers, and keep up the amazing work! <3

@fasterit

Copy link
Copy Markdown
Member

@hishamhm give #2085 a spin when you have time

BenBE pushed a commit to fasterit/htop that referenced this pull request Aug 23, 2026
…icked

Idea from Hisham in htop-dev#2083 (comment)

Assisted-by: Microsoft Copilot/Claude Sonnet 4.6
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

default change Changes a default setting or default UI object documentation 📖 Improvements or additions to documentation

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants