[Bug 29384] Slow switch between TTY1-TTY6 with /dev/fb0 or X11 involved

bugzilla-daemon at freedesktop.org bugzilla-daemon at freedesktop.org
Sun Aug 8 05:53:36 PDT 2010


--- Comment #21 from peterle at hottemptation.org 2010-08-08 05:53:36 PDT ---

[peter at timeline linux-2.6]$ git bisect log
git bisect start '--' 'drivers/gpu/drm/radeon'
# good: [e40152ee1e1c7a63f4777791863215e3faa37a86] Linus 2.6.34
git bisect good e40152ee1e1c7a63f4777791863215e3faa37a86
# bad: [9fe6206f400646a2322096b56c59891d530e8d51] Linux 2.6.35
git bisect bad 9fe6206f400646a2322096b56c59891d530e8d51
# bad: [ce8a3eb20c4cb7d9e0c33e7560070688cd9066fc] drm/radeon/kms/pm: make pm
spam debug only
git bisect bad ce8a3eb20c4cb7d9e0c33e7560070688cd9066fc
# good: [f405a1ab2bf316b1969fc5355891e5dff4e1a54c] drivers/gpu/drm: Use kmemdup
git bisect good f405a1ab2bf316b1969fc5355891e5dff4e1a54c
# good: [2aba631c008e7d82e3ec45dd32bec1ea63a963cf] radeon: Unify PM entry paths
git bisect good 2aba631c008e7d82e3ec45dd32bec1ea63a963cf
# good: [539d24181753e40174746d576d415bfb56131975] drm/radeon/kms: more pm
git bisect good 539d24181753e40174746d576d415bfb56131975
# good: [91700f3cac56a1998a56d41e4459a5cebdb4f752] radeon: Split out ring
locking and allocation
git bisect good 91700f3cac56a1998a56d41e4459a5cebdb4f752
# good: [ca2af92311eee95820f3b48c35045e5f56bc1477] drm/radeon/kms: fix lock
ordering in ring, ib handling
git bisect good ca2af92311eee95820f3b48c35045e5f56bc1477
# bad: [ce8f53709bf440100cb9d31b1303291551cf517f] drm/radeon/kms/pm: rework
power management
git bisect bad ce8f53709bf440100cb9d31b1303291551cf517f
# good: [d7311171c4cc8d6231427f7ac5056b939a184b80] drm/radeon/kms/pm: add
support for no display power states
git bisect good d7311171c4cc8d6231427f7ac5056b939a184b80
# good: [d7311171c4cc8d6231427f7ac5056b939a184b80] drm/radeon/kms/pm: add
support for no display power states
git bisect good d7311171c4cc8d6231427f7ac5056b939a184b80

[peter at timeline linux-2.6]$ git bisect good
ce8f53709bf440100cb9d31b1303291551cf517f is the first bad commit
commit ce8f53709bf440100cb9d31b1303291551cf517f
Author: Alex Deucher <alexdeucher at gmail.com>
Date:   Fri May 7 15:10:16 2010 -0400

    drm/radeon/kms/pm: rework power management

    - Separate dynpm and profile based power management methods.  You can
select the pm method
      by echoing the selected method ("dynpm" or "profile") to power_method in
    - Expose basic 4 profile in profile method
      "default" - default clocks
      "auto" - select between low and high based on ac/dc state
      "low" - DC, low power mode
      "high" - AC, performance mode
      The current base profile is "default", but it should switched to "auto"
once we've tested
      on more systems.  Switching the state is a matter of echoing the
requested profile to
      power_profile in sysfs.  The lowest power states are selected
automatically when dpms turns
      the monitors off in all states but default.
    - Remove dynamic fence-based reclocking for the moment.  We can revisit
this later once we
      have basic pm in.
    - Move pm init/fini to modesetting path.  pm is tightly coupled with
display state.  Make sure
      display side is initialized before pm.
    - Add pm suspend/resume functions to make sure pm state is properly
reinitialized on resume.
    - Remove dynpm module option.  It's now selectable via sysfs.

    Signed-off-by: Alex Deucher <alexdeucher at gmail.com>
    Signed-off-by: Dave Airlie <airlied at redhat.com>

:040000 040000 fa3acba12b9886453c2de619577ae633abfc97bc
faf940f2c2791f1382ed1abbfa54e22df7e1c936 M    drivers

Here I got the problem with to slow switch between tty1-tty6 if /dev/fb* is in
use by a program (example: fbida with an png image)
Is this what you need?

Just a note to the other bug 27744 "stuck atombios"
Bisecting: 39 revisions left to test after this (roughly 5 steps)
[f405a1ab2bf316b1969fc5355891e5dff4e1a54c] drivers/gpu/drm: Use kmemdup
herebiosbug_butnotswitchbug (END) 
I got this dmesg output after resuspend:
PM: early resume of devices complete after 0.838 msecs
ehci_hcd 0000:00:1a.0: PCI INT A -> GSI 16 (level, low) -> IRQ 16
ehci_hcd 0000:00:1a.0: setting latency timer to 64
HDA Intel 0000:00:1b.0: PCI INT A -> GSI 22 (level, low) -> IRQ 22
HDA Intel 0000:00:1b.0: setting latency timer to 64
HDA Intel 0000:00:1b.0: irq 29 for MSI/MSI-X
ehci_hcd 0000:00:1d.0: PCI INT A -> GSI 23 (level, low) -> IRQ 23
ehci_hcd 0000:00:1d.0: setting latency timer to 64
pci 0000:00:1e.0: setting latency timer to 64
ahci 0000:00:1f.2: setting latency timer to 64
pci 0000:00:1f.3: PCI INT C -> GSI 18 (level, low) -> IRQ 18
radeon 0000:02:00.0: setting latency timer to 64
HDA Intel 0000:02:00.1: PCI INT B -> GSI 17 (level, low) -> IRQ 17
HDA Intel 0000:02:00.1: setting latency timer to 64
ath9k 0000:05:00.0: PCI INT A -> GSI 17 (level, low) -> IRQ 17
HDA Intel 0000:02:00.1: irq 30 for MSI/MSI-X
sd 0:0:0:0: [sda] Starting disk
[drm] Clocks initialized !
[drm] ring test succeeded in 1 usecs
radeon 0000:02:00.0: no free indirect buffer !
[drm:r600_ib_test] *ERROR* radeon: failed to get ib (-16).
[drm:evergreen_resume] *ERROR* radeon: failled testing IB (-16).
usb 2-1.5: reset high speed USB device using ehci_hcd and address 3
ata1: SATA link up 3.0 Gbps (SStatus 123 SControl 300)
ata1.00: configured for UDMA/133
PM: resume of devices complete after 419.798 msecs
Restarting tasks ... done.
video LNXVIDEO:00: Restoring backlight state
        [ pm_notifier_block : 171 ] event :4

atl1c 0000:03:00.0: irq 31 for MSI/MSI-X
ADDRCONF(NETDEV_UP): eth0: link is not ready
ADDRCONF(NETDEV_UP): wlan0: link is not ready
ath9k: Two wiphys trying to scan at the same time

If I have more time I will try to found the reason for this, too. And post it
in 27744.

Configure bugmail: https://bugs.freedesktop.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.

More information about the dri-devel mailing list