[Bug 661411] [NEW] Multi-core load balancing not working properly after suspend to disk

Felix Kuehling felix.kuehling at amd.com
Fri Oct 15 19:00:35 UTC 2010


Public bug reported:

CPU: Intel(R) Core(TM) i7 CPU         860, 4 cores, hyperthreading

Symptoms: After suspending to disk load balancing of processes across
CPU cores is not working properly. Runnable processes have to share a
CPU core even if idle CPU cores are available. This is particularly
noticeable when running parallel builds (e.g. make -j8 ...). They take
much longer and the GNOME system monitor applet shows that most CPU
cores are idle when there is enough work to keep them all busy.

A simple test to visualize the problem is to run "(while true; do true;
done) & (while true; do true; done)" in bash and look at the CPU usage
in top. After a fresh boot, the two subshells run with 100% CPU usage
each, so each gets its own core to run on. When running this experiment
after a suspend/resume cycle the two subshells run with 50% CPU usage
each, so they're made to share a CPU core, although idle CPU cores are
available.

Steps to reproduce:
* Boot system
* log in as normal user
* run the following command in a terminal window running bash: (while true; do true; done) & (while true; do true; done)
* In a second terminal window run top and observe two bash processes at the top, each running with 100% CPU usage
  (each bash gets its own CPU core)
* kill the two bash subshell processes
* suspend to disk
* wake up the system
* Run the same command as above: (while true; do true; done) & (while true; do true; done)
* In top the two bash processes run with 50% CPU usage
  (the two bash processes apparently share one CPU core, although idle cores are available)

Expected result: load balancing should continue working after resuming.
The two bash subshells should each run with 100% CPU usage.

Actual result: load balancing is broken after resume. The two bash
subshells have to share a CPU core even when idle CPU cores are
available to balance the load.

ProblemType: Bug
DistroRelease: Ubuntu 10.10
Package: linux-image-2.6.35-22-generic 2.6.35-22.34
Regression: Yes
Reproducible: Yes
ProcVersionSignature: Ubuntu 2.6.35-22.34-generic 2.6.35.4
Uname: Linux 2.6.35-22-generic x86_64
NonfreeKernelModules: fglrx
AlsaVersion: Advanced Linux Sound Architecture Driver Version 1.0.23.
Architecture: amd64
ArecordDevices:
 **** List of CAPTURE Hardware Devices ****
 card 0: Intel [HDA Intel], device 0: VT1828S Analog [VT1828S Analog]
   Subdevices: 2/2
   Subdevice #0: subdevice #0
   Subdevice #1: subdevice #1
AudioDevicesInUse:
 USER        PID ACCESS COMMAND
 /dev/snd/controlC0:  fkuehlin   1753 F.... pulseaudio
 /dev/snd/pcmC0D0p:   fkuehlin   1753 F...m pulseaudio
CRDA: Error: [Errno 2] No such file or directory
Card0.Amixer.info:
 Card hw:0 'Intel'/'HDA Intel at 0xfbaf8000 irq 52'
   Mixer name	: 'VIA VT1828S'
   Components	: 'HDA:11064441,104383d0,00100100'
   Controls      : 35
   Simple ctrls  : 20
Card1.Amixer.info:
 Card hw:1 'Generic'/'HD-Audio Generic at 0xfbbfc000 irq 53'
   Mixer name	: 'ATI R6xx HDMI'
   Components	: 'HDA:1002aa01,00aa0100,00100200'
   Controls      : 4
   Simple ctrls  : 1
Card1.Amixer.values:
 Simple mixer control 'IEC958',0
   Capabilities: pswitch pswitch-joined penum
   Playback channels: Mono
   Mono: Playback [on]
Date: Fri Oct 15 14:56:46 2010
HibernationDevice: RESUME=UUID=8f6cfcae-9123-48f0-a9c6-1e962e6b726e
InstallationMedia: Ubuntu 10.04 LTS "Lucid Lynx" - Release amd64 (20100429)
IwConfig:
 lo        no wireless extensions.
 
 eth0      no wireless extensions.
MachineType: System manufacturer System Product Name
ProcCmdLine: BOOT_IMAGE=/boot/vmlinuz-2.6.35-22-generic root=UUID=c9f4b289-89ae-42c0-ba57-13b1b26131da ro quiet splash
ProcEnviron:
 PATH=(custom, user)
 LANG=en_CA.UTF-8
 SHELL=/bin/bash
RelatedPackageVersions: linux-firmware 1.38
RfKill:
 
SourcePackage: linux
WifiSyslog:
 Oct 15 14:55:59 Harpoon kernel: [17206.856773] ACPI Warning: Incorrect checksum in table [OEMB] - 0x03, should be 0xED (20100428/tbutils-314)
 Oct 15 14:55:59 Harpoon kernel: [17206.856958] ACPI Warning: Incorrect checksum in table [OEMB] - 0x03, should be 0xED (20100428/tbutils-314)
dmi.bios.date: 03/25/2010
dmi.bios.vendor: American Megatrends Inc.
dmi.bios.version: 1408
dmi.board.asset.tag: To Be Filled By O.E.M.
dmi.board.name: P7P55D
dmi.board.vendor: ASUSTeK Computer INC.
dmi.board.version: Rev 1.xx
dmi.chassis.asset.tag: Asset-1234567890
dmi.chassis.type: 3
dmi.chassis.vendor: Chassis Manufacture
dmi.chassis.version: Chassis Version
dmi.modalias: dmi:bvnAmericanMegatrendsInc.:bvr1408:bd03/25/2010:svnSystemmanufacturer:pnSystemProductName:pvrSystemVersion:rvnASUSTeKComputerINC.:rnP7P55D:rvrRev1.xx:cvnChassisManufacture:ct3:cvrChassisVersion:
dmi.product.name: System Product Name
dmi.product.version: System Version
dmi.sys.vendor: System manufacturer

** Affects: linux (Ubuntu)
     Importance: Undecided
         Status: New


** Tags: amd64 apport-bug hibernate kernel-power maverick needs-upstream-testing regression-release resume

-- 
Multi-core load balancing not working properly after suspend to disk
https://bugs.launchpad.net/bugs/661411
You received this bug notification because you are a member of Kernel
Bugs, which is subscribed to linux in ubuntu.




More information about the kernel-bugs mailing list