By using this site, you agree to the Privacy Policy and Terms of Use.
Accept
World of SoftwareWorld of SoftwareWorld of Software
  • News
  • Software
  • Mobile
  • Computing
  • Gaming
  • Videos
  • More
    • Gadget
    • Web Stories
    • Trending
    • Press Release
Search
  • Privacy
  • Terms
  • Advertise
  • Contact
Copyright © All Rights Reserved. World of Software.
Reading: Linux 2026 “Spring Cleaning” To Address Some Code Remnants As Far Back As Linux v0.1
Share
Sign In
Notification Show More
Font ResizerAa
World of SoftwareWorld of Software
Font ResizerAa
  • Software
  • Mobile
  • Computing
  • Gadget
  • Gaming
  • Videos
Search
  • News
  • Software
  • Mobile
  • Computing
  • Gaming
  • Videos
  • More
    • Gadget
    • Web Stories
    • Trending
    • Press Release
Have an existing account? Sign In
Follow US
  • Privacy
  • Terms
  • Advertise
  • Contact
Copyright © All Rights Reserved. World of Software.
World of Software > Computing > Linux 2026 “Spring Cleaning” To Address Some Code Remnants As Far Back As Linux v0.1
Computing

Linux 2026 “Spring Cleaning” To Address Some Code Remnants As Far Back As Linux v0.1

News Room
Last updated: 2026/04/10 at 9:38 AM
News Room Published 10 April 2026
Share
Linux 2026 “Spring Cleaning” To Address Some Code Remnants As Far Back As Linux v0.1
SHARE

A big kernel patch series was posted today by longtime Linux developer Thomas Gleixner. The set of 38 patches amount to some big time “spring cleaning” with addressing some code remnants still around that originated back in the very early Linux v0.1 kernel while some other code being cleaned up dates back to the Linux 1.3~2.1 kernel series from the 90’s.

Gleixner posted today a big tree-wide cleanup for addressing code “[ab]use” around the LATCH, CLOCK_TICK_RATE, and get_cycles() components. Gleixner explained of these little talked about antiquated code remnants still part of the Linux kernel:

“1) LATCH

The LATCH define goes back to Linux version 0.1 and has survived until today for the very wrong reasons.

Initially it was based on the x86 PIT frequency and also steered the timekeeping conversions.

With the arrival of non x86 architectures it got changed to be based on CLOCK_TICK_RATE in order not to change core code which depended on LATCH.

That all got meaningless when timers, timekeeping and scheduling infrastructure got rewritten more than two decades ago.

But there is still a lonely survivor in arch/x86/kernel/apm_32.c which dates back to Linux 1.3.46 (Dec. 1995)

Which causes the next historical gem

2) CLOCK_TICK_RATE

When Linux got expanded beyond i386 LATCH was made “flexible” by basing it on CLOCK_TICK_RATE to adjust for other frequencies than the i386 PIT frequency.

As LATCH this got meaningless long ago and for amusement value it got copied into new architectures arriving way after it got obsolete for no reason but with comments to the effect that it’s meaningless

And of course it had a lonely survivor in arch/x86/kernel/setup.c despite it being only an alias for PIT_TICK_RATE for a very long time.

3) get_cycles()

That was introduced in 2.1.133pre4 (Dec. 1998) to utilize the back then brand new TSC. The introduction broke everything except i386 SMP with a CPU having a TSC and got then fixed up within a couple of days with empty stubs returning 0 and #ifdeffery for CONFIG_TSC before the 2.2.0 release.

It’s amusing that the naming deliberately ignored that TSC is the acronym for Time Stamp Counter and not Cycle Counter and rather went for the underlying coincidence that the TSC was running at the same fixed frequency as the CPU core.

That turned out to be interesting when CPUs started to have frequency scaling as the TSC then turned into a variable frequency random number generator.

A decade later CPU designers came to senses and made the TSC invariant usually running at the nominal CPU frequency, which allowed to use it for reliable timekeeping purposes.

Non x86 architectures implemented get_cycles() based on whatever continuously running counter they had available in their CPUs. Some of them actual CPU cycle counters, but many of them running at a fixed frequency which was completely unrelated to CPU cycles.

Around 2004/5 the timekeeping subsystem was completely rewritten and made generic along with the scheduling clock and other related infrastructure. With that rewrite get_cycles() got mostly obsolete, but despite it being on the todo list of quite some people it never ceased to exist and it was just a conveniance vehicle to base other things like the recent addition of random_get_entropy() on top with a hideous #ifdef/#define macro maze.

The other remaining use cases are mostly debugging and testing code. Especially the usage in performance test code is [hilarious] at best. While the name get_cycles() suggests that it provides access to CPU cycles the reality is that it provides a unspecified counter for most systems, where a lot of architectures simply return 0 because they either do not have such a counter or did not bother to implement it at all.

So in fact get_cycles() should have been renamed to get_bogo_cycles() long ago matching the BogoMIPS “impress your friends” printk which still exists for historical amusement value.

But the real solution is to remove it all together instead of proliferating the bogosity.”

Thus the big patch series goes on to remove the Linux kernel’s LATCH and CLOCK_TICK_RATE while consolidating and cleaning up other code, including the get_cycles() bits. The get_cycles() code is sticking around just for a couple of CPU architectures as just an architecture-internal implementation detail.

The big clean-up patch series can be found on the kernel mailing list.

Sign Up For Daily Newsletter

Be keep up! Get the latest breaking news delivered straight to your inbox.
By signing up, you agree to our Terms of Use and acknowledge the data practices in our Privacy Policy. You may unsubscribe at any time.
Share This Article
Facebook Twitter Email Print
Share
What do you think?
Love0
Sad0
Happy0
Sleepy0
Angry0
Dead0
Wink0
Previous Article Breaking the stranglehold: Responses to data sovereignty risk | Computer Weekly Breaking the stranglehold: Responses to data sovereignty risk | Computer Weekly
Next Article Was yesterday’s sale just the beginning? Was yesterday’s sale just the beginning?
Leave a comment

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

Stay Connected

248.1k Like
69.1k Follow
134k Pin
54.3k Follow

Latest News

The 256GB Google Pixel 10a has already dropped to £399
The 256GB Google Pixel 10a has already dropped to £399
Gadget
Evidence of Traction: The Criterion That Proves Everything | HackerNoon
Evidence of Traction: The Criterion That Proves Everything | HackerNoon
Computing
Tech executives to be criminally liable for non-compliance with Ofcom – UKTN
Tech executives to be criminally liable for non-compliance with Ofcom – UKTN
News
Navigating the European Union’s AI and health data framework
Navigating the European Union’s AI and health data framework
News

You Might also Like

Evidence of Traction: The Criterion That Proves Everything | HackerNoon
Computing

Evidence of Traction: The Criterion That Proves Everything | HackerNoon

1 Min Read
Firefox 149 vs. Chrome 147 Web Browser Performance On Linux
Computing

Firefox 149 vs. Chrome 147 Web Browser Performance On Linux

2 Min Read
CES 2026: first phone-free AI glasses with eSIM and 4G connectivity unveiled · TechNode
Computing

CES 2026: first phone-free AI glasses with eSIM and 4G connectivity unveiled · TechNode

1 Min Read
The AI Illusion (Part 2): The AI Detection Mirage | HackerNoon
Computing

The AI Illusion (Part 2): The AI Detection Mirage | HackerNoon

10 Min Read
//

World of Software is your one-stop website for the latest tech news and updates, follow us now to get the news that matters to you.

Quick Link

  • Privacy Policy
  • Terms of use
  • Advertise
  • Contact

Topics

  • Computing
  • Software
  • Press Release
  • Trending

Sign Up for Our Newsletter

Subscribe to our newsletter to get our newest articles instantly!

World of SoftwareWorld of Software
Follow US
Copyright © All Rights Reserved. World of Software.
Welcome Back!

Sign in to your account

Lost your password?