Curiously, sometimes these Flash and AIR processes don't jump to 100% immediately, but wait until a few minutes after resuming.
This seems to be exposing a strange bug in the kernel (I'm using Hardy 8.04 on a Core 2 Duo system). When one of these processes goes nuts, one core gets pegged at 100%, with most of that 100% going to the Flash process. The other core can be at a low utilization, less than 50%. But other processes on the system seem to not migrate to the less-busy core, and the Flash process starves these other, seemingly unable-to- migrate processes. The result is that, for example, the audio in a video will suddenly stop playing, or the opposite, the video in a video will stop playing, while the audio continues. This happens even when watching a local video in Mplayer, not just when watching a Flash video --if there's a Flash process in the background (like the little Flash applet that Gmail uses to play chat sounds), and it goes nuts, the Mplayer process suffers because it doesn't migrate to the other, nearly- idle core. But as soon as I kill the misbehaving Flash process, everything returns to normal. As far as I can tell, if the other processes would migrate to the core that's not servicing the wide-open- throttle Flash process, they'd have plenty of CPU time. I recall in the past--perhaps before the CFS kernel scheduler--the kernel would adjust the priority of a process depending on how long it'd been running at high CPU usage. For example, if a process at nice 0 had been running at 100% for several minutes, its priority would gradually change so that other nice-0 processes could have bursts of 100% usage. The kernel would seem to assume that if a process had been using 100% of the CPU for a while, it would be doing a long job, and it would make sense to give other processes short-term priority. However, this is not the case anymore: a process can be at 100% for a long time and its priority never changes. This causes these rogue Flash processes to starve other processes for CPU time until the rogue process is killed. Do I need to change my CPU scheduler until this is fixed in Flash? Is there a fix that can be applied to the kernel, or a runtime setting that can be changed? -- Flash uses 100% CPU after resuming from suspend https://bugs.launchpad.net/bugs/281526 You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. -- ubuntu-bugs mailing list [email protected] https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs
