{
  "id": 3186054,
  "title": "isolcpus= takes CPUs off the scheduler. Hardware IRQs still land there.",
  "url": "https://urgent.news/2026/08/25/isolcpus-takes-cpus-off-the-scheduler-hardware-irqs-still-land-there",
  "topic": "tech",
  "section": "Tech",
  "published": "2026-08-25T03:46:13.000Z",
  "source": {
    "name": "Dev.to",
    "slug": "dev-to",
    "url": "https://dev.to/sunshoutkernel/isolcpus-takes-cpus-off-the-scheduler-hardware-irqs-still-land-there-ihe"
  },
  "original_language": "en",
  "account": "The GRUB_CMDLINE_LINUX_DEFAULT parameter isolcpus=0,1 tells the operating system to exclude CPU0 and CPU1 from the process scheduler. However, hardware interrupts continue to interrupt these isolated CPUs. Although userspace tasks stop running on CPU0 and CPU1, hardware interrupts still occur on those cores. This can be verified by running processes on CPU0/1 and observing that /proc/interrupts still records IRQ activity on those cores. Isolcpus is a scheduling hint, not a solution for interrupt handling. It is necessary for certain use cases like DPDK, user-space NICs, or cycle-accurate loops, but not sufficient on its own. To confirm the actual isolation, you can check the /proc/cmdline file after reboot for isolcpus=0,1, grep PREEMPT from /boot/config-$(uname -r), and use the taskset command to test a known userspace PID. Additionally, newer kernels offer more advanced options such as domain, cpusets, cgroup cpuset, irqaffinity, or manual irqaffinity to manage IRQs. These newer methods offer better control over interrupt handling compared to isolcpus.",
  "summary": "The blunt tool is still in a lot of GRUB files: GRUB_CMDLINE_LINUX_DEFAULT = \"isolcpus=0,1\" Then update-grub (or grub2-mkconfig ) and reboot. Userspace tasks stop landing on CPU0/1. That is all most people verify — they fire a few busy loops and top looks empty on those cores. IRQs do not care. isolcpus is a scheduler isolation hint. Hardware interrupts can still fire on the \"isolated\" CPUs. I…",
  "key_points": [],
  "editors_take": null,
  "illustration": null,
  "coverage": {
    "outlets": 1,
    "also_reported_by": []
  },
  "ai_generated": true,
  "disclaimer": "Summaries, key points and the editor’s take are written by software from other outlets’ reporting and may contain errors — always check the linked original."
}