[Bug 26438] New: [2.6.33-rc6 fc76be4 (git snapshot) + drm-radeon-next] playing Second Life cause GPU lockup.

2010-02-05 Thread bugzilla-daemon
http://bugs.freedesktop.org/show_bug.cgi?id=26438

   Summary: [2.6.33-rc6 fc76be4 (git snapshot) + drm-radeon-next]
playing Second Life cause GPU lockup.
   Product: DRI
   Version: XOrg CVS
  Platform: Other
OS/Version: All
Status: NEW
  Severity: normal
  Priority: medium
 Component: DRM/Radeon
AssignedTo: dri-devel@lists.sourceforge.net
ReportedBy: shawn.st...@rogers.com


Created an attachment (id=33086)
 -- (http://bugs.freedesktop.org/attachment.cgi?id=33086)
kernel bootup output

module options for radeon: modeset=1 audio=0 dynclks=1 dynpm=1

* Notes: While I was trying to fiddle with VBOs in Second Life the drm spit
out:
radeon :01:00.0: vbo resource seems too big for the bo

No matter what VRAM size set, 256 and texture memory of 192, or 128MB vram and
texture memory of  96MB (you can set what the game 'thinks' is the most memory
available, it attempts and fails to look at the Xorg log file for VRAM info
(the string changed and thus broke this code it falls back to 128MB)

I don't think this had anything to do to trigger this, but that error is
alarming nonetheless.

Crash below:

Feb  5 03:11:46 segfault kernel: [ 2603.824186] [drm] Requested: e: 6 m:
7 p: 16
Feb  5 03:11:47 segfault kernel: [ 2604.386373] [ cut here
]
Feb  5 03:11:47 segfault kernel: [ 2604.386392] WARNING: at
drivers/gpu/drm/radeon/radeon_fence.c:159 radeon_fence_signaled+0x6a/0x9c
[radeon]()
Feb  5 03:11:47 segfault kernel: [ 2604.386395] Hardware name: 4058CTO
Feb  5 03:11:47 segfault kernel: [ 2604.386396] Querying an unemited fence :
88003af579c0 !
Feb  5 03:11:47 segfault kernel: [ 2604.386398] Modules linked in: aes_x86_64
aes_generic ipv6 radeon ttm drm_kms_helper drm i2c_algo_bit acpi_cpufreq
cpufreq_conservative cpufreq_ondemand cpufreq_powersave cpufreq_stats
freq_table uinput fuse coretemp firewire_sbp2 arc4 ecb iwlagn iwlcore mac80211
snd_hda_codec_conexant snd_seq_dummy thinkpad_acpi hwmon snd_usb_audio
snd_hda_intel snd_hda_codec snd_hwdep snd_seq_oss snd_usb_lib snd_pcm_oss
snd_seq_midi snd_mixer_oss snd_seq_midi_event snd_rawmidi snd_pcm snd_seq
cfg80211 uvcvideo rfkill videodev i2c_i801 snd_timer snd_seq_device
snd_page_alloc v4l1_compat snd wmi joydev v4l2_compat_ioctl32 soundcore
i2c_core ata_generic sdhci_pci sdhci firewire_ohci firewire_core ricoh_mmc
mmc_core crc_itu_t pata_acpi video output e1000e [last unloaded:
scsi_wait_scan]
Feb  5 03:11:47 segfault kernel: [ 2604.386449] Pid: 11077, comm:
do-not-directly Not tainted 2.6.33-rc6-custom-00237-g9b03279 #1
Feb  5 03:11:47 segfault kernel: [ 2604.386451] Call Trace:
Feb  5 03:11:47 segfault kernel: [ 2604.386457]  [8104493a]
warn_slowpath_common+0x77/0x8f
Feb  5 03:11:47 segfault kernel: [ 2604.386459]  [8104499f]
warn_slowpath_fmt+0x3c/0x3e
Feb  5 03:11:47 segfault kernel: [ 2604.386473]  [a032ffcf] ?
radeon_fence_destroy+0x69/0x6e [radeon]
Feb  5 03:11:47 segfault kernel: [ 2604.386486]  [a033005a]
radeon_fence_signaled+0x6a/0x9c [radeon]
Feb  5 03:11:47 segfault kernel: [ 2604.386499]  [a033091e]
radeon_sync_obj_signaled+0x9/0xb [radeon]
Feb  5 03:11:47 segfault kernel: [ 2604.386504]  [a02648d8]
ttm_bo_wait+0x56/0x14e [ttm]
Feb  5 03:11:47 segfault kernel: [ 2604.386520]  [a03403c5]
radeon_bo_wait+0xa8/0xc8 [radeon]
Feb  5 03:11:47 segfault kernel: [ 2604.386535]  [a03404b3]
radeon_gem_busy_ioctl+0x47/0x9c [radeon]
Feb  5 03:11:47 segfault kernel: [ 2604.386544]  [a02e822a]
drm_ioctl+0x254/0x366 [drm]
Feb  5 03:11:47 segfault kernel: [ 2604.386559]  [a034046c] ?
radeon_gem_busy_ioctl+0x0/0x9c [radeon]
Feb  5 03:11:47 segfault kernel: [ 2604.386563]  [811b1f9c] ?
inode_has_perm+0x75/0x8b
Feb  5 03:11:47 segfault kernel: [ 2604.386567]  [8100fad3] ?
__switch_to_xtra+0x11c/0x13c
Feb  5 03:11:47 segfault kernel: [ 2604.386571]  [810076d0] ?
__switch_to+0x215/0x227
Feb  5 03:11:47 segfault kernel: [ 2604.386574]  [810f9498]
vfs_ioctl+0x2d/0xa1
Feb  5 03:11:47 segfault kernel: [ 2604.386577]  [810f9a00]
do_vfs_ioctl+0x47d/0x4c3
Feb  5 03:11:47 segfault kernel: [ 2604.386579]  [810f9a97]
sys_ioctl+0x51/0x74
Feb  5 03:11:47 segfault kernel: [ 2604.386582]  [81008a82]
system_call_fastpath+0x16/0x1b
Feb  5 03:11:47 segfault kernel: [ 2604.386584] ---[ end trace b5271f8192af5e53
]---


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

--
The Planet: dedicated and managed hosting, cloud storage, colocation
Stay online with enterprise data centers and the best network in the business
Choose flexible plans and management services without long-term contracts
Personal 24x7 support from experience 

Re: hung bootup with drm/radeon/kms: move radeon KMS on/off switch out of staging.

2010-02-05 Thread Dave Airlie

 If it now does not boot up if all its sub-options are enabled, even of some 
 of those sub-options are new, does that count as a driver regression? Sure it 
 does to me ...

But it doesn't to anyone else under any reasonable meaning of the word 
regression. 

The config option states
Choose this option if you want kernel modesetting enabled by default,
  and you have a new enough userspace to support this. Running old
  userspaces with this enabled will cause pain.

Will cause pain sounds painful to me, I can make it seem much worse if 
you'd like.

Dave.

--
The Planet: dedicated and managed hosting, cloud storage, colocation
Stay online with enterprise data centers and the best network in the business
Choose flexible plans and management services without long-term contracts
Personal 24x7 support from experience hosting pros just a phone call away.
http://p.sf.net/sfu/theplanet-com
--
___
Dri-devel mailing list
Dri-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/dri-devel


[Bug 26438] [2.6.33-rc6 fc76be4 (git snapshot) + drm-radeon-next] playing Second Life cause GPU lockup.

2010-02-05 Thread bugzilla-daemon
http://bugs.freedesktop.org/show_bug.cgi?id=26438





--- Comment #1 from Shawn Starr shawn.st...@rogers.com  2010-02-05 00:34:51 
PST ---
Created an attachment (id=33087)
 -- (http://bugs.freedesktop.org/attachment.cgi?id=33087)
crashdump (easier to read than in bug)


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

--
The Planet: dedicated and managed hosting, cloud storage, colocation
Stay online with enterprise data centers and the best network in the business
Choose flexible plans and management services without long-term contracts
Personal 24x7 support from experience hosting pros just a phone call away.
http://p.sf.net/sfu/theplanet-com
--
___
Dri-devel mailing list
Dri-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/dri-devel


[Bug 26438] [CS checker code][2.6.33-rc6 fc76be4 (git snapshot) + drm-radeon-next] playing Second Life cause GPU lockup.

2010-02-05 Thread bugzilla-daemon
http://bugs.freedesktop.org/show_bug.cgi?id=26438


Shawn Starr shawn.st...@rogers.com changed:

   What|Removed |Added

Summary|[2.6.33-rc6 fc76be4 (git|[CS checker code][2.6.33-rc6
   |snapshot) + drm-radeon-next]|fc76be4 (git snapshot) +
   |playing Second Life cause   |drm-radeon-next] playing
   |GPU lockup. |Second Life cause GPU
   ||lockup.




--- Comment #2 from Shawn Starr shawn.st...@rogers.com  2010-02-05 00:38:28 
PST ---
From Dave Airlie: Thats the CS checker code from glisse. He'll need to test
when he gets back from FOSDEM


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

--
The Planet: dedicated and managed hosting, cloud storage, colocation
Stay online with enterprise data centers and the best network in the business
Choose flexible plans and management services without long-term contracts
Personal 24x7 support from experience hosting pros just a phone call away.
http://p.sf.net/sfu/theplanet-com
--
___
Dri-devel mailing list
Dri-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/dri-devel


[Bug 26438] [CS checker code][r6xx][2.6.33-rc6 fc76be4 (git snapshot) + drm-radeon-next] playing Second Life cause GPU lockup.

2010-02-05 Thread bugzilla-daemon
http://bugs.freedesktop.org/show_bug.cgi?id=26438


Shawn Starr shawn.st...@rogers.com changed:

   What|Removed |Added

Summary|[CS checker code][2.6.33-rc6|[CS checker
   |fc76be4 (git snapshot) +|code][r6xx][2.6.33-rc6
   |drm-radeon-next] playing|fc76be4 (git snapshot) +
   |Second Life cause GPU   |drm-radeon-next] playing
   |lockup. |Second Life cause GPU
   ||lockup.




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

--
The Planet: dedicated and managed hosting, cloud storage, colocation
Stay online with enterprise data centers and the best network in the business
Choose flexible plans and management services without long-term contracts
Personal 24x7 support from experience hosting pros just a phone call away.
http://p.sf.net/sfu/theplanet-com
--
___
Dri-devel mailing list
Dri-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/dri-devel


Re: i915 #GP [was: mmotm 2010-02-01-16-25 uploaded]

2010-02-05 Thread Jiri Slaby
On 02/03/2010 10:41 PM, Jiri Slaby wrote:
 On 02/02/2010 01:25 AM, a...@linux-foundation.org wrote:
 The mm-of-the-moment snapshot 2010-02-01-16-25 has been uploaded to
 
 Hi, when thunderbird appears on clean X+xterm I get this with the snapshot:
 [drm:i915_gem_do_execbuffer] *ERROR* Invalid object handle 1073741824 at
 index 1
 general protection fault:  [#1] SMP
 last sysfs file: /sys/devices/pci:00/:00:1e.0/:04:00.0/resource
 CPU 0
 Pid: 3412, comm: X Not tainted 2.6.33-rc6-mm1_64+ #941 To be filled by
 O.E.M./To Be Filled By O.E.M.
 RIP: 0010:[812579ef]  [812579ef]
 i915_gem_do_execbuffer+0x3ef/0xbf0
 RSP: 0018:8801c2313c68  EFLAGS: 00010202
 RAX: 8801c2f6a7c8 RBX: 0002 RCX: 0049
 RDX: 6b6b6b6b6b6b6b6b RSI: 81237e70 RDI: 8801c2a28738
 RBP: 8801c2313d18 R08:  R09: 0200
 R10:  R11: 0004 R12: 8801c2f6a7b8
 R13: 8801c2313d38 R14:  R15: fff7
 FS:  7f4910c476f0() GS:88010020() knlGS:
 CS:  0010 DS:  ES:  CR0: 80050033
 CR2: 7f48fb928000 CR3: 0001c2cd5000 CR4: 06f0
 DR0:  DR1:  DR2: 
 DR3:  DR6: 0ff0 DR7: 0400
 Process X (pid: 3412, threadinfo 8801c2312000, task 8801c3539c00)
 Stack:
  81803580 00d0 8801c2e043d8 00d7ba90
 0 0060 810be556 8801c5f918f8 8801c2f6a7b8
 0 8801cbc0a048  8801c2f6a7b8 8801c5f918d8
 Call Trace:
  [810be556] ? __slab_alloc+0x266/0x2f0
  [81258584] i915_gem_execbuffer+0x1b4/0x360
  [81253516] ? i915_gem_sw_finish_ioctl+0x96/0xd0
  [812363ed] drm_ioctl+0x1bd/0x480
  [8108fe12] ? unlock_page+0x22/0x30
  [812583d0] ? i915_gem_execbuffer+0x0/0x360
  [810a9dbb] ? handle_mm_fault+0x18b/0x3c0
  [810d7468] vfs_ioctl+0x38/0xd0
  [810d7ca0] do_vfs_ioctl+0x80/0x340
  [81024841] ? do_page_fault+0x131/0x2d0
  [810d7faa] sys_ioctl+0x4a/0x80
  [81002e6b] system_call_fastpath+0x16/0x1b
 Code: 44 8b 5a 08 45 85 db 74 4f 31 db 4c 8b 65 a0 49 89 d5 66 2e 0f 1f
 84 00 00 00 00 00 48 63 c3 49 8d 04 c4 48 8b 10 48 85 d2 74 25 48 8b
 92 80 00 00 00 c7 82 a0 00 00 00 00 00 00 00 48 8b 38 48
 RIP  [812579ef] i915_gem_do_execbuffer+0x3ef/0xbf0
  RSP 8801c2313c68
 ---[ end trace 99140c91bbc9294a ]---
 
 
 opposing to 2010-01-15-15-34 which was OK. This is a setup with no KMS
 with 2.9.1 intel X drv.




 Does reverting 859ddf09743a8cc680af33f7259ccd0fd36bfe9d help?

For me it fixes the problem.

-- 
js

--
The Planet: dedicated and managed hosting, cloud storage, colocation
Stay online with enterprise data centers and the best network in the business
Choose flexible plans and management services without long-term contracts
Personal 24x7 support from experience hosting pros just a phone call away.
http://p.sf.net/sfu/theplanet-com
--
___
Dri-devel mailing list
Dri-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/dri-devel


[PATCH] drm/radeon/kms: add workaround for rn50/rv100 servers

2010-02-05 Thread Alex Deucher
From a1a2ac30881c62fc7ed12edac8e4e4e46a4938ac Mon Sep 17 00:00:00 2001
From: Alex Deucher alexdeuc...@gmail.com
Date: Fri, 5 Feb 2010 03:34:16 -0500
Subject: [PATCH] drm/radeon/kms: add workaround for rn50/rv100 servers

Some servers have two VGA ports but only report
one in the bios connector tables.  On these systems
always set up the TV DAC so that it displays properly
even if the bios is wrong.

Signed-off-by: Alex Deucher alexdeuc...@gmail.com
---
 drivers/gpu/drm/radeon/r100.c   |   65 +++
 drivers/gpu/drm/radeon/radeon_legacy_crtc.c |   23 -
 2 files changed, 65 insertions(+), 23 deletions(-)

diff --git a/drivers/gpu/drm/radeon/r100.c b/drivers/gpu/drm/radeon/r100.c
index 33da89a..6915dc3 100644
--- a/drivers/gpu/drm/radeon/r100.c
+++ b/drivers/gpu/drm/radeon/r100.c
@@ -1794,6 +1794,9 @@ int r100_gpu_reset(struct radeon_device *rdev)

 void r100_set_common_regs(struct radeon_device *rdev)
 {
+   struct drm_device *dev = rdev-ddev;
+   bool force_dac2 = false;
+
/* set these so they don't interfere with anything */
WREG32(RADEON_OV0_SCALE_CNTL, 0);
WREG32(RADEON_SUBPIC_CNTL, 0);
@@ -1802,6 +1805,68 @@ void r100_set_common_regs(struct radeon_device *rdev)
WREG32(RADEON_DVI_I2C_CNTL_1, 0);
WREG32(RADEON_CAP0_TRIG_CNTL, 0);
WREG32(RADEON_CAP1_TRIG_CNTL, 0);
+
+   /* always set up dac2 on rn50 and some rv100 as lots
+* of servers seem to wire it up to a VGA port but
+* don't report it in the bios connector
+* table.
+*/
+   switch (dev-pdev-device) {
+   /* RN50 */
+   case 0x515e:
+   case 0x5969:
+   force_dac2 = true;
+   break;
+   /* RV100*/
+   case 0x5159:
+   case 0x515a:
+   /* DELL triple head servers */
+   if ((dev-pdev-subsystem_vendor == 0x1028 /* DELL */) 
+   ((dev-pdev-subsystem_device == 0x016c) ||
+(dev-pdev-subsystem_device == 0x016d) ||
+(dev-pdev-subsystem_device == 0x016e) ||
+(dev-pdev-subsystem_device == 0x016f) ||
+(dev-pdev-subsystem_device == 0x0170) ||
+(dev-pdev-subsystem_device == 0x017d) ||
+(dev-pdev-subsystem_device == 0x017e) ||
+(dev-pdev-subsystem_device == 0x0183) ||
+(dev-pdev-subsystem_device == 0x018a) ||
+(dev-pdev-subsystem_device == 0x019a)))
+   force_dac2 = true;
+   break;
+   }
+
+   if (force_dac2) {
+   u32 disp_hw_debug = RREG32(RADEON_DISP_HW_DEBUG);
+   u32 tv_dac_cntl = RREG32(RADEON_TV_DAC_CNTL);
+   u32 dac2_cntl = RREG32(RADEON_DAC_CNTL2);
+
+   /* For CRT on DAC2, don't turn it on if BIOS didn't
+  enable it, even it's detected.
+   */
+
+   /* force it to crtc0 */
+   dac2_cntl = ~RADEON_DAC2_DAC_CLK_SEL;
+   dac2_cntl |= RADEON_DAC2_DAC2_CLK_SEL;
+   disp_hw_debug |= RADEON_CRT2_DISP1_SEL;
+
+   /* set up the TV DAC */
+   tv_dac_cntl = ~(RADEON_TV_DAC_PEDESTAL |
+RADEON_TV_DAC_STD_MASK |
+RADEON_TV_DAC_RDACPD |
+RADEON_TV_DAC_GDACPD |
+RADEON_TV_DAC_BDACPD |
+RADEON_TV_DAC_BGADJ_MASK |
+RADEON_TV_DAC_DACADJ_MASK);
+   tv_dac_cntl |= (RADEON_TV_DAC_NBLANK |
+   RADEON_TV_DAC_NHOLD |
+   RADEON_TV_DAC_STD_PS2 |
+   (0x58  16));
+
+   WREG32(RADEON_TV_DAC_CNTL, tv_dac_cntl);
+   WREG32(RADEON_DISP_HW_DEBUG, disp_hw_debug);
+   WREG32(RADEON_DAC_CNTL2, dac2_cntl);
+   }
 }

 /*
diff --git a/drivers/gpu/drm/radeon/radeon_legacy_crtc.c
b/drivers/gpu/drm/radeon/radeon_legacy_crtc.c
index 376e697..83d4dbd 100644
--- a/drivers/gpu/drm/radeon/radeon_legacy_crtc.c
+++ b/drivers/gpu/drm/radeon/radeon_legacy_crtc.c
@@ -582,29 +582,6 @@ static bool radeon_set_crtc_timing(struct
drm_crtc *crtc, struct drm_display_mod
   ? RADEON_CRTC_V_SYNC_POL
   : 0));

-   /* TODO - Dell Server */
-   if (0) {
-   uint32_t disp_hw_debug = RREG32(RADEON_DISP_HW_DEBUG);
-   uint32_t tv_dac_cntl = RREG32(RADEON_TV_DAC_CNTL);
-   uint32_t dac2_cntl = RREG32(RADEON_DAC_CNTL2);
-   uint32_t crtc2_gen_cntl = RREG32(RADEON_CRTC2_GEN_CNTL);
-
-   dac2_cntl = ~RADEON_DAC2_DAC_CLK_SEL;
-   dac2_cntl |= RADEON_DAC2_DAC2_CLK_SEL;
-
-   /* For CRT on DAC2, don't turn it on if BIOS didn't
-  

Re: hung bootup with drm/radeon/kms: move radeon KMS on/off switch out of staging.

2010-02-05 Thread Ingo Molnar

* Dave Airlie airl...@linux.ie wrote:

 
  If it now does not boot up if all its sub-options are enabled, even of some 
  of those sub-options are new, does that count as a driver regression? Sure 
  it 
  does to me ...
 
 But it doesn't to anyone else under any reasonable meaning of the word 
 regression.

There are reactions in this thread that contradict your 'anyone else' point.

 The config option states
 Choose this option if you want kernel modesetting enabled by default,
   and you have a new enough userspace to support this. Running old
   userspaces with this enabled will cause pain.
 
 Will cause pain sounds painful to me, I can make it seem much worse if 
 you'd like.

Except you are missing that the hang (and the first crash as well) happens on 
brand-new user-space just as much - not just on 'old userspaces'.

The bugs i've triggered are independent of any user-space component - it 
happens with a fresh distro just as much.

As i suggested before, at least the text should be updated to include what 
has been written about CONFIG_DRM_RADEON_KMS in this thread before:

  This is a completely new driver.  It's only part of the existing drm for 
  compatibility reasons.  It requires an entirely different graphics stack 
  above it and works very differently from the old drm stack.

Thanks,

Ingo

--
The Planet: dedicated and managed hosting, cloud storage, colocation
Stay online with enterprise data centers and the best network in the business
Choose flexible plans and management services without long-term contracts
Personal 24x7 support from experience hosting pros just a phone call away.
http://p.sf.net/sfu/theplanet-com
--
___
Dri-devel mailing list
Dri-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/dri-devel


Re: [PATCH] drm/radeon/kms: set gart pages to invalid on unbind

2010-02-05 Thread Jerome Glisse
On Fri, Feb 05, 2010 at 04:01:16PM +1000, Dave Airlie wrote:
 From: Dave Airlie airl...@redhat.com
 
 this uses a new entrypoint to invalidate gart entries instead of using 0.
 
 I'm not 100% sure this is going to work, we probably need to allocate
 a dummy page and point all the GTT entries at it similiar to what AGP does.
 but we can test this first I suppose.
 
 Signed-off-by: Dave Airlie airl...@redhat.com

I have a patch that allocate dummy page and set it on unbind (intend is
also to use this dummy page for outofbound gart access on gpu that can
point to dummy). I will clean it up and send it monday, but i think it's
better to push it in 2.6.34 unless we have bugs associated to that (and
we might)

Cheers,
Jerome

--
The Planet: dedicated and managed hosting, cloud storage, colocation
Stay online with enterprise data centers and the best network in the business
Choose flexible plans and management services without long-term contracts
Personal 24x7 support from experience hosting pros just a phone call away.
http://p.sf.net/sfu/theplanet-com
--
___
Dri-devel mailing list
Dri-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/dri-devel


Re: hung bootup with drm/radeon/kms: move radeon KMS on/off switch out of staging.

2010-02-05 Thread Dave Airlie
On Fri, Feb 5, 2010 at 7:00 PM, Ingo Molnar mi...@elte.hu wrote:

 * Dave Airlie airl...@linux.ie wrote:


  If it now does not boot up if all its sub-options are enabled, even of some
  of those sub-options are new, does that count as a driver regression? Sure 
  it
  does to me ...

 But it doesn't to anyone else under any reasonable meaning of the word
 regression.

 There are reactions in this thread that contradict your 'anyone else' point.

 The config option states
 Choose this option if you want kernel modesetting enabled by default,
           and you have a new enough userspace to support this. Running old
           userspaces with this enabled will cause pain.

 Will cause pain sounds painful to me, I can make it seem much worse if
 you'd like.

 Except you are missing that the hang (and the first crash as well) happens on
 brand-new user-space just as much - not just on 'old userspaces'.

 The bugs i've triggered are independent of any user-space component - it
 happens with a fresh distro just as much.

 As i suggested before, at least the text should be updated to include what
 has been written about CONFIG_DRM_RADEON_KMS in this thread before:

   This is a completely new driver.  It's only part of the existing drm for
   compatibility reasons.  It requires an entirely different graphics stack
   above it and works very differently from the old drm stack.


Okay I've attached a patch with a revised Kconfig in it.

Does this sound more like reality?

Dave.


0001-drm-radeon-kms-change-Kconfig-text-to-reflect-the-ne.patch
Description: Binary data
--
The Planet: dedicated and managed hosting, cloud storage, colocation
Stay online with enterprise data centers and the best network in the business
Choose flexible plans and management services without long-term contracts
Personal 24x7 support from experience hosting pros just a phone call away.
http://p.sf.net/sfu/theplanet-com--
___
Dri-devel mailing list
Dri-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/dri-devel


[PATCH] drm/radeon/kms: add support for hardcoded edids in rom

2010-02-05 Thread Alex Deucher
From eae41c519d9e3dd948fa965a16f0ef6586386ca1 Mon Sep 17 00:00:00 2001
From: Alex Deucher alexdeuc...@gmail.com
Date: Fri, 5 Feb 2010 04:21:19 -0500
Subject: [PATCH] drm/radeon/kms: add support for hardcoded edids in rom

Some servers hardcode an edid in rom so that they will
work properly with KVMs.  This is a port of the relevant
code from the ddx.

Signed-off-by: Alex Deucher alexdeuc...@gmail.com
---
 drivers/gpu/drm/radeon/radeon.h |1 +
 drivers/gpu/drm/radeon/radeon_combios.c |   21 +
 drivers/gpu/drm/radeon/radeon_display.c |   15 ++-
 drivers/gpu/drm/radeon/radeon_mode.h|2 ++
 4 files changed, 38 insertions(+), 1 deletions(-)

diff --git a/drivers/gpu/drm/radeon/radeon.h b/drivers/gpu/drm/radeon/radeon.h
index 584b206..ede3e91 100644
--- a/drivers/gpu/drm/radeon/radeon.h
+++ b/drivers/gpu/drm/radeon/radeon.h
@@ -826,6 +826,7 @@ struct radeon_device {
struct workqueue_struct *wq;
struct work_struct hotplug_work;
int num_crtc; /* number of crtcs */
+   bool edid_in_rom; /* hardcoded edid in rom */

/* audio stuff */
struct timer_list   audio_timer;
diff --git a/drivers/gpu/drm/radeon/radeon_combios.c
b/drivers/gpu/drm/radeon/radeon_combios.c
index 24a485a..e75edd9 100644
--- a/drivers/gpu/drm/radeon/radeon_combios.c
+++ b/drivers/gpu/drm/radeon/radeon_combios.c
@@ -443,6 +443,27 @@ static uint16_t combios_get_table_offset(struct
drm_device *dev,

 }

+struct edid *
+radeon_combios_get_hardcoded_edid(struct radeon_device *rdev)
+{
+   struct drm_device *dev = rdev-ddev;
+   u16 edid_info;
+   struct edid *edid = NULL;
+
+   edid_info = combios_get_table_offset(dev, COMBIOS_HARDCODED_EDID_TABLE);
+   if (edid_info) {
+   if (RBIOS8(edid_info) == 0xff) {
+   edid = kmalloc(EDID_LENGTH * (4 /*MAX_EDID_EXT_NUM*/ + 
1),
+  GFP_KERNEL);
+   if (edid == NULL)
+   return NULL;
+   memcpy((unsigned char *)edid,
+  (unsigned char *)(rdev-bios + edid_info), 
EDID_LENGTH);
+   }
+   }
+   return edid;
+}
+
 static struct radeon_i2c_bus_rec combios_setup_i2c_bus(struct
radeon_device *rdev,
   int ddc_line)
 {
diff --git a/drivers/gpu/drm/radeon/radeon_display.c
b/drivers/gpu/drm/radeon/radeon_display.c
index 42f1def..7beefb3 100644
--- a/drivers/gpu/drm/radeon/radeon_display.c
+++ b/drivers/gpu/drm/radeon/radeon_display.c
@@ -384,6 +384,8 @@ static bool radeon_setup_enc_conn(struct drm_device *dev)

 int radeon_ddc_get_modes(struct radeon_connector *radeon_connector)
 {
+   struct drm_device *dev = radeon_connector-base.dev;
+   struct radeon_device *rdev = dev-dev_private;
int ret = 0;

if ((radeon_connector-base.connector_type ==
DRM_MODE_CONNECTOR_DisplayPort) ||
@@ -400,7 +402,9 @@ int radeon_ddc_get_modes(struct radeon_connector
*radeon_connector)
radeon_connector-edid = drm_get_edid(radeon_connector-base,
radeon_connector-ddc_bus-adapter);
radeon_i2c_do_lock(radeon_connector-ddc_bus, 0);
}
-
+   /* some servers provide a hardcoded edid in rom for KVMs */
+   if ((!radeon_connector-edid)  rdev-edid_in_rom)
+   radeon_connector-edid = 
radeon_combios_get_hardcoded_edid(rdev);
if (radeon_connector-edid) {
drm_mode_connector_update_edid_property(radeon_connector-base,
radeon_connector-edid);
ret = drm_add_edid_modes(radeon_connector-base, 
radeon_connector-edid);
@@ -863,6 +867,7 @@ static int radeon_modeset_create_props(struct
radeon_device *rdev)

 int radeon_modeset_init(struct radeon_device *rdev)
 {
+   struct drm_device *dev = rdev-ddev;
int i;
int ret;

@@ -886,6 +891,14 @@ int radeon_modeset_init(struct radeon_device *rdev)
return ret;
}

+   /* add quirks -- is there a better place for this? */
+   rdev-edid_in_rom = false;
+   if (ASIC_IS_RN50(rdev)) {
+   if ((dev-pdev-subsystem_vendor == 0x108e /* SUN */) 
+   ((dev-pdev-subsystem_device == 0x016c)))
+   rdev-edid_in_rom = true;
+   }
+
if (rdev-flags  RADEON_SINGLE_CRTC)
rdev-num_crtc = 1;
else {
diff --git a/drivers/gpu/drm/radeon/radeon_mode.h
b/drivers/gpu/drm/radeon/radeon_mode.h
index 81bfc5b..184e44b 100644
--- a/drivers/gpu/drm/radeon/radeon_mode.h
+++ b/drivers/gpu/drm/radeon/radeon_mode.h
@@ -479,6 +479,8 @@ extern int radeon_crtc_cursor_set(struct drm_crtc *crtc,
 extern int radeon_crtc_cursor_move(struct drm_crtc *crtc,
   int x, int y);

+extern struct edid *
+radeon_combios_get_hardcoded_edid(struct radeon_device *rdev);
 extern bool radeon_atom_get_clock_info(struct drm_device *dev);
 extern 

Re: hung bootup with drm/radeon/kms: move radeon KMS on/off switch out of staging.

2010-02-05 Thread Ingo Molnar

* Dave Airlie airl...@gmail.com wrote:

 On Fri, Feb 5, 2010 at 7:00 PM, Ingo Molnar mi...@elte.hu wrote:
 
  * Dave Airlie airl...@linux.ie wrote:
 
 
   If it now does not boot up if all its sub-options are enabled, even of 
   some
   of those sub-options are new, does that count as a driver regression? 
   Sure it
   does to me ...
 
  But it doesn't to anyone else under any reasonable meaning of the word
  regression.
 
  There are reactions in this thread that contradict your 'anyone else' point.
 
  The config option states
  Choose this option if you want kernel modesetting enabled by default,
  ? ? ? ? ? and you have a new enough userspace to support this. Running old
  ? ? ? ? ? userspaces with this enabled will cause pain.
 
  Will cause pain sounds painful to me, I can make it seem much worse if
  you'd like.
 
  Except you are missing that the hang (and the first crash as well) happens 
  on
  brand-new user-space just as much - not just on 'old userspaces'.
 
  The bugs i've triggered are independent of any user-space component - it
  happens with a fresh distro just as much.
 
  As i suggested before, at least the text should be updated to include what
  has been written about CONFIG_DRM_RADEON_KMS in this thread before:
 
  ? This is a completely new driver. ?It's only part of the existing drm for
  ? compatibility reasons. ?It requires an entirely different graphics stack
  ? above it and works very differently from the old drm stack.
 
 
 Okay I've attached a patch with a revised Kconfig in it.
 
 Does this sound more like reality?

Looks perfect to me!

Acked-by: Ingo Molnar mi...@elte.hu

Ingo

--
The Planet: dedicated and managed hosting, cloud storage, colocation
Stay online with enterprise data centers and the best network in the business
Choose flexible plans and management services without long-term contracts
Personal 24x7 support from experience hosting pros just a phone call away.
http://p.sf.net/sfu/theplanet-com
--
___
Dri-devel mailing list
Dri-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/dri-devel


[Bug 15233] Kernel Panic, drm frame buffer helper bug (Radeon 520)

2010-02-05 Thread bugzilla-daemon
http://bugzilla.kernel.org/show_bug.cgi?id=15233





--- Comment #1 from Beiruty mahmoudshmaite...@yahoo.com  2010-02-05 13:05:36 
---
It could be related to bug 15179.

-- 
Configure bugmail: http://bugzilla.kernel.org/userprefs.cgi?tab=email
--- You are receiving this mail because: ---
You are watching the assignee of the bug.

--
The Planet: dedicated and managed hosting, cloud storage, colocation
Stay online with enterprise data centers and the best network in the business
Choose flexible plans and management services without long-term contracts
Personal 24x7 support from experience hosting pros just a phone call away.
http://p.sf.net/sfu/theplanet-com
--
___
Dri-devel mailing list
Dri-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/dri-devel


[Bug 15233] New: Kernel Panic, drm frame buffer helper bug (Radeon 520)

2010-02-05 Thread bugzilla-daemon
http://bugzilla.kernel.org/show_bug.cgi?id=15233

   Summary: Kernel Panic, drm frame buffer helper bug (Radeon 520)
   Product: Drivers
   Version: 2.5
Kernel Version: 2.6.33.999 (daily PPA mainline 2/5/2010)
  Platform: All
OS/Version: Linux
  Tree: Mainline
Status: NEW
  Severity: normal
  Priority: P1
 Component: Video(DRI - non Intel)
AssignedTo: drivers_video-...@kernel-bugs.osdl.org
ReportedBy: mahmoudshmaite...@yahoo.com
Regression: Yes


Created an attachment (id=24917)
 -- (http://bugzilla.kernel.org/attachment.cgi?id=24917)
Kernel Panic 2.6.33.999 on 2/5/2010

Trying the daily build of kernel 2.6.33.999 from PPA mainline, date: 5/2/2010.
This time, the console started in kernel-mode setting, and a panic with
detailed message was displayed.


Motherboard: MSI 7207
Video: R520

You can see it in the attached photo.

-- 
Configure bugmail: http://bugzilla.kernel.org/userprefs.cgi?tab=email
--- You are receiving this mail because: ---
You are watching the assignee of the bug.

--
The Planet: dedicated and managed hosting, cloud storage, colocation
Stay online with enterprise data centers and the best network in the business
Choose flexible plans and management services without long-term contracts
Personal 24x7 support from experience hosting pros just a phone call away.
http://p.sf.net/sfu/theplanet-com
--
___
Dri-devel mailing list
Dri-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/dri-devel


[Bug 15233] Kernel Panic, drm frame buffer helper bug (Radeon 520)

2010-02-05 Thread bugzilla-daemon
http://bugzilla.kernel.org/show_bug.cgi?id=15233


Alex Deucher alexdeuc...@gmail.com changed:

   What|Removed |Added

 CC||alexdeuc...@gmail.com




--- Comment #2 from Alex Deucher alexdeuc...@gmail.com  2010-02-05 16:36:28 
---
The panic has nothing to do with the drm itself; rather the drm changed back to
the console when the panic happened so you could see it.  That's one of the new
features of the kms enabled drm.

-- 
Configure bugmail: http://bugzilla.kernel.org/userprefs.cgi?tab=email
--- You are receiving this mail because: ---
You are watching the assignee of the bug.

--
The Planet: dedicated and managed hosting, cloud storage, colocation
Stay online with enterprise data centers and the best network in the business
Choose flexible plans and management services without long-term contracts
Personal 24x7 support from experience hosting pros just a phone call away.
http://p.sf.net/sfu/theplanet-com
--
___
Dri-devel mailing list
Dri-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/dri-devel


[Bug 15233] Kernel Panic, drm frame buffer helper bug (Radeon 520)

2010-02-05 Thread bugzilla-daemon
http://bugzilla.kernel.org/show_bug.cgi?id=15233


Beiruty mahmoudshmaite...@yahoo.com changed:

   What|Removed |Added

 Resolution|CODE_FIX|INVALID




-- 
Configure bugmail: http://bugzilla.kernel.org/userprefs.cgi?tab=email
--- You are receiving this mail because: ---
You are watching the assignee of the bug.

--
The Planet: dedicated and managed hosting, cloud storage, colocation
Stay online with enterprise data centers and the best network in the business
Choose flexible plans and management services without long-term contracts
Personal 24x7 support from experience hosting pros just a phone call away.
http://p.sf.net/sfu/theplanet-com
--
___
Dri-devel mailing list
Dri-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/dri-devel


[Bug 15233] Kernel Panic, drm frame buffer helper bug (Radeon 520)

2010-02-05 Thread bugzilla-daemon
http://bugzilla.kernel.org/show_bug.cgi?id=15233





--- Comment #4 from Alex Deucher alexdeuc...@gmail.com  2010-02-05 17:41:58 
---
well, there's still an oops from something...

-- 
Configure bugmail: http://bugzilla.kernel.org/userprefs.cgi?tab=email
--- You are receiving this mail because: ---
You are watching the assignee of the bug.

--
The Planet: dedicated and managed hosting, cloud storage, colocation
Stay online with enterprise data centers and the best network in the business
Choose flexible plans and management services without long-term contracts
Personal 24x7 support from experience hosting pros just a phone call away.
http://p.sf.net/sfu/theplanet-com
--
___
Dri-devel mailing list
Dri-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/dri-devel


[Bug 26450] New: crash in plymouth with radeon.dynpm=1

2010-02-05 Thread bugzilla-daemon
http://bugs.freedesktop.org/show_bug.cgi?id=26450

   Summary: crash in plymouth with radeon.dynpm=1
   Product: DRI
   Version: DRI CVS
  Platform: Other
OS/Version: All
Status: NEW
  Severity: normal
  Priority: medium
 Component: DRM/Radeon
AssignedTo: dri-devel@lists.sourceforge.net
ReportedBy: kdeko...@yahoo.com


Using git a87a52ebe2b68cd1fad1b25141a73eca3aadf158 in drm-radeon-testing

If I boot without radeon.dynpm=1, the machine boots to gdm just fine.

If I boot with radeon.dynpm=1, plymouth starts, but hangs when it is ready to
transition to gdm. At this point you can still ssh to the box. And doing dmesg
I get the below kernel fault.

I believe it is caused by 898e61d5a3c977de119a3b5f60bfcb6c496b7382


plymouth is plymouth-0.8.0-0.2009.29.09.19.3.fc12.x86_64

video card is rv635 

01:00.0 VGA compatible controller: ATI Technologies Inc Mobility Radeon HD 3600
Series (prog-if 00 [VGA controller])
Subsystem: ASUSTeK Computer Inc. Device 01da
Flags: bus master, fast devsel, latency 0, IRQ 29
Memory at d000 (64-bit, prefetchable) [size=256M]
Memory at fe9e (64-bit, non-prefetchable) [size=64K]
I/O ports at d000 [size=256]
[virtual] Expansion ROM at fe90 [disabled] [size=128K]
Capabilities: access denied
Kernel driver in use: radeon
Kernel modules: radeon

machine is dual head

dmesg | grep drm
[drm] Initialized drm 1.1.0 20060810
[drm] radeon defaulting to kernel modesetting.
[drm] radeon kernel modesetting enabled.
[drm] radeon: Initializing kernel modesetting.
[drm] register mmio base: 0xFE9E
[drm] register mmio size: 65536
[drm] Clocks initialized !
[drm] 4 Power State(s)
[drm] State 0 Default (default)
[drm]   16 PCIE Lanes
[drm]   3 Clock Mode(s)
[drm]   0 engine/memory: 725000/50
[drm]   1 engine/memory: 725000/50
[drm]   2 engine/memory: 725000/50
[drm] State 1 Performance 
[drm]   16 PCIE Lanes
[drm]   3 Clock Mode(s)
[drm]   0 engine/memory: 11/50
[drm]   1 engine/memory: 30/50
[drm]   2 engine/memory: 725000/50
[drm] State 2 Default 
[drm]   16 PCIE Lanes
[drm]   3 Clock Mode(s)
[drm]   0 engine/memory: 60/50
[drm]   1 engine/memory: 60/50
[drm]   2 engine/memory: 60/50
[drm] State 3 Performance 
[drm]   16 PCIE Lanes
[drm]   3 Clock Mode(s)
[drm]   0 engine/memory: 30/50
[drm]   1 engine/memory: 30/50
[drm]   2 engine/memory: 725000/50
[drm] radeon: power management initialized
[drm] Detected VRAM RAM=256M, BAR=256M
[drm] RAM width 128bits DDR
[drm] radeon: 256M of VRAM memory ready
[drm] radeon: 512M of GTT memory ready.
[drm] radeon: using MSI.
[drm] radeon: irq initialized.
[drm] GART: num cpu pages 131072, num gpu pages 131072
[drm] Loading RV635 Microcode
[drm] ring test succeeded in 1 usecs
[drm] radeon: ib pool ready.
[drm] ib test succeeded in 0 usecs
[drm] Enabling audio support
[drm] Default TV standard: NTSC
[drm] Radeon Display Connectors
[drm] Connector 0:
[drm]   DVI-I
[drm]   HPD1
[drm]   DDC: 0x7e50 0x7e50 0x7e54 0x7e54 0x7e58 0x7e58 0x7e5c 0x7e5c
[drm]   Encoders:
[drm] DFP1: INTERNAL_UNIPHY
[drm] CRT2: INTERNAL_KLDSCP_DAC2
[drm] Connector 1:
[drm]   DIN
[drm]   Encoders:
[drm] TV1: INTERNAL_KLDSCP_DAC2
[drm] Connector 2:
[drm]   DVI-I
[drm]   HPD2
[drm]   DDC: 0x7e40 0x7e40 0x7e44 0x7e44 0x7e48 0x7e48 0x7e4c 0x7e4c
[drm]   Encoders:
[drm] CRT1: INTERNAL_KLDSCP_DAC1
[drm] DFP2: INTERNAL_KLDSCP_LVTMA
[drm] fb mappable at 0xD0141000
[drm] vram apper at 0xD000
[drm] size 7257600
[drm] fb depth is 24
[drm]pitch is 6912
fb0: radeondrmfb frame buffer device
[drm] Initialized radeon 2.0.0 20080528 for :01:00.0 on minor 0
[drm:drm_mode_rmfb] *ERROR* tried to remove a fb that we didn't own
[drm:drm_mode_rmfb] *ERROR* tried to remove a fb that we didn't own
[drm:drm_mode_getfb] *ERROR* invalid framebuffer id


ERROR:


[drm:drm_mode_rmfb] *ERROR* tried to remove a fb that we didn't own
BUG: unable to handle kernel NULL pointer dereference at 0148
IP: [a00d073b] radeon_pm_compute_clocks+0x7b/0x21e [radeon]
PGD 2132b6067 PUD 21329c067 PMD 0 
Oops:  [#1] SMP 
last sysfs file: /sys/devices/virtual/net/lo/type
CPU 1 
Modules linked in: stp llc tun hwmon_vid coretemp sunrpc cpufreq_ondemand
acpi_cpufreq freq_table ip6t_REJECT nf_conntrack_ipv6 ip6table_filter
ip6_tables ipv6 kvm_intel kvm uinput snd_hda_codec_atihdmi
snd_hda_codec_intelhdmi snd_hda_codec_realtek snd_hda_intel snd_hda_codec
snd_seq snd_usb_audio snd_usb_lib snd_rawmidi snd_seq_device snd_pcm snd_hwdep
snd_timer pwc snd videodev v4l1_compat iTCO_wdt atl1 iTCO_vendor_support
v4l2_compat_ioctl32 soundcore mii serio_raw asus_atk0110 pcspkr i2c_i801
snd_page_alloc joydev dm_multipath firewire_ohci firewire_core crc_itu_t

Re: [Bug #15043] Display goes off with i915.powersave=1 after suspend-resume

2010-02-05 Thread Jesse Barnes
On Thu, 4 Feb 2010 21:42:02 +0100
Rafael J. Wysocki r...@sisk.pl wrote:

 On Thursday 04 February 2010, Soeren Sonnenburg wrote:
  On Mon, 2010-02-01 at 01:22 +0100, Rafael J. Wysocki wrote:
   This message has been generated automatically as a part of a
   report of recent regressions.
   
   The following bug entry is on the current list of known
   regressions from 2.6.32.  Please verify if it still should be
   listed and let me know (either way).
   
   
   Bug-Entry :
   http://bugzilla.kernel.org/show_bug.cgi?id=15043
   Subject   : Display goes off with i915.powersave=1
   after suspend-resume Submitter: Soeren Sonnenburg
   so...@debian.org Date   : 2010-01-10 20:09 (22
   days old) References  :
   http://marc.info/?l=linux-kernelm=126315457519505w=4
  
  yes still exists in current git.
 
 Thanks for the update.

Just updated the corresponding FDO bug
(https://bugs.freedesktop.org/show_bug.cgi?id=24314).  There are some
hw bugs related to FBC handling on 945GM though, so we may have to
disable it on some machines.

-- 
Jesse Barnes, Intel Open Source Technology Center

--
The Planet: dedicated and managed hosting, cloud storage, colocation
Stay online with enterprise data centers and the best network in the business
Choose flexible plans and management services without long-term contracts
Personal 24x7 support from experience hosting pros just a phone call away.
http://p.sf.net/sfu/theplanet-com
--
___
Dri-devel mailing list
Dri-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/dri-devel


[Bug 15166] Changing brightness of backlight freezes kernel with radeon kms enabled.

2010-02-05 Thread bugzilla-daemon
http://bugzilla.kernel.org/show_bug.cgi?id=15166





--- Comment #13 from Manuel Ullmann ullman.b...@gmx.de  2010-02-05 20:07:19 
---
@Rafał Miłecki:
Your bug should indeed not be related to this one, because, as you wrote in
your report, you switched to init 3 and disabled radeon (and kms, in
consequence) in your kernel configuration for testing purposes.

@Alex Deucher:
And you are using kms? Cause of course brightness-changing works fine, if
appending radeon.modeset=0 to kernel command line. If you are using kms, the
reasons for this bug are shrinking. The question is now: What has this notebook
series, what others don´t have? The first thing, that comes into my mind, is
UEFI with its BIOS. It changes the brightness, when the power cable is
unplugged (but actually there are other BIOSes like that and I´m wondering, why
this bug doesn´t occur without kms or with my old framebuffer driver uvesafb).

What you all could test, is the second way - I mentioned above - to reproduce a
system freeze. Actually this should be another bug, but I didn´t realize that
while writing the bug report.

Close the LID for ca. 5 minutes. Radeon should try to switch off the video
signal then and freeze the system. Switching on and off the monitor is no
problem.

-- 
Configure bugmail: http://bugzilla.kernel.org/userprefs.cgi?tab=email
--- You are receiving this mail because: ---
You are watching the assignee of the bug.
--
The Planet: dedicated and managed hosting, cloud storage, colocation
Stay online with enterprise data centers and the best network in the business
Choose flexible plans and management services without long-term contracts
Personal 24x7 support from experience hosting pros just a phone call away.
http://p.sf.net/sfu/theplanet-com
--
___
Dri-devel mailing list
Dri-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/dri-devel


[PATCH] vmwgfx: Update the user-space interface.

2010-02-05 Thread Thomas Hellstrom
When time-based throttling is implemented, we need to bump minor.
When the old way of detecting scanout is removed, we need to bump major.
In the meantime, this change should not break existing user-space.

Signed-off-by: Thomas Hellstrom thellst...@vmware.com
---
 drivers/gpu/drm/vmwgfx/vmwgfx_drv.h  |6 +++---
 drivers/gpu/drm/vmwgfx/vmwgfx_ioctl.c|6 ++
 drivers/gpu/drm/vmwgfx/vmwgfx_resource.c |5 +++--
 include/drm/vmwgfx_drm.h |   12 +---
 4 files changed, 21 insertions(+), 8 deletions(-)

diff --git a/drivers/gpu/drm/vmwgfx/vmwgfx_drv.h 
b/drivers/gpu/drm/vmwgfx/vmwgfx_drv.h
index 135be96..0eaf682 100644
--- a/drivers/gpu/drm/vmwgfx/vmwgfx_drv.h
+++ b/drivers/gpu/drm/vmwgfx/vmwgfx_drv.h
@@ -39,10 +39,10 @@
 #include ttm/ttm_execbuf_util.h
 #include ttm/ttm_module.h
 
-#define VMWGFX_DRIVER_DATE 20090724
+#define VMWGFX_DRIVER_DATE 20100118
 #define VMWGFX_DRIVER_MAJOR 0
-#define VMWGFX_DRIVER_MINOR 1
-#define VMWGFX_DRIVER_PATCHLEVEL 2
+#define VMWGFX_DRIVER_MINOR 9
+#define VMWGFX_DRIVER_PATCHLEVEL 0
 #define VMWGFX_FILE_PAGE_OFFSET 0x0010
 #define VMWGFX_FIFO_STATIC_SIZE (1024*1024)
 #define VMWGFX_MAX_RELOCATIONS 2048
diff --git a/drivers/gpu/drm/vmwgfx/vmwgfx_ioctl.c 
b/drivers/gpu/drm/vmwgfx/vmwgfx_ioctl.c
index 778851f..1c7a316 100644
--- a/drivers/gpu/drm/vmwgfx/vmwgfx_ioctl.c
+++ b/drivers/gpu/drm/vmwgfx/vmwgfx_ioctl.c
@@ -48,6 +48,12 @@ int vmw_getparam_ioctl(struct drm_device *dev, void *data,
case DRM_VMW_PARAM_FIFO_OFFSET:
param-value = dev_priv-mmio_start;
break;
+   case DRM_VMW_PARAM_HW_CAPS:
+   param-value = dev_priv-capabilities;
+   break;
+   case DRM_VMW_PARAM_FIFO_CAPS:
+   param-value = dev_priv-fifo.capabilities;
+   break;
default:
DRM_ERROR(Illegal vmwgfx get param request: %d\n,
  param-param);
diff --git a/drivers/gpu/drm/vmwgfx/vmwgfx_resource.c 
b/drivers/gpu/drm/vmwgfx/vmwgfx_resource.c
index c7efbd4..933e90d 100644
--- a/drivers/gpu/drm/vmwgfx/vmwgfx_resource.c
+++ b/drivers/gpu/drm/vmwgfx/vmwgfx_resource.c
@@ -610,9 +610,10 @@ int vmw_surface_define_ioctl(struct drm_device *dev, void 
*data,
 */
srf-flags = ~SVGA3D_SURFACE_HINT_SCANOUT;
srf-scanout = true;
-   } else {
+   } else if (req-scanout)
+   srf-scanout = true;
+   else
srf-scanout = false;
-   }
 
if (srf-scanout 
srf-num_sizes == 1 
diff --git a/include/drm/vmwgfx_drm.h b/include/drm/vmwgfx_drm.h
index 2be7e12..dfaf3c2 100644
--- a/include/drm/vmwgfx_drm.h
+++ b/include/drm/vmwgfx_drm.h
@@ -68,7 +68,8 @@
 #define DRM_VMW_PARAM_NUM_FREE_STREAMS 1
 #define DRM_VMW_PARAM_3D   2
 #define DRM_VMW_PARAM_FIFO_OFFSET  3
-
+#define DRM_VMW_PARAM_HW_CAPS  4
+#define DRM_VMW_PARAM_FIFO_CAPS5
 
 /**
  * struct drm_vmw_getparam_arg
@@ -181,6 +182,8 @@ struct drm_vmw_context_arg {
  * The size of the array should equal the total number of mipmap levels.
  * @shareable: Boolean whether other clients (as identified by file 
descriptors)
  * may reference this surface.
+ * @scanout: Boolean whether the surface is intended to be used as a
+ * scanout.
  *
  * Input data to the DRM_VMW_CREATE_SURFACE Ioctl.
  * Output data from the DRM_VMW_REF_SURFACE Ioctl.
@@ -192,7 +195,7 @@ struct drm_vmw_surface_create_req {
uint32_t mip_levels[DRM_VMW_MAX_SURFACE_FACES];
uint64_t size_addr;
int32_t shareable;
-   uint32_t pad64;
+   int32_t scanout;
 };
 
 /**
@@ -295,6 +298,9 @@ union drm_vmw_surface_reference_arg {
  *
  * @commands: User-space address of a command buffer cast to an uint64_t.
  * @command-size: Size in bytes of the command buffer.
+ * @throttle-us: Sleep until software is less than @throttle_us
+ * microseconds ahead of hardware. The driver may round this value
+ * to the nearest kernel tick.
  * @fence_rep: User-space address of a struct drm_vmw_fence_rep cast to an
  * uint64_t.
  *
@@ -304,7 +310,7 @@ union drm_vmw_surface_reference_arg {
 struct drm_vmw_execbuf_arg {
uint64_t commands;
uint32_t command_size;
-   uint32_t pad64;
+   uint32_t throttle_us;
uint64_t fence_rep;
 };
 
-- 
1.6.2.5


--
The Planet: dedicated and managed hosting, cloud storage, colocation
Stay online with enterprise data centers and the best network in the business
Choose flexible plans and management services without long-term contracts
Personal 24x7 support from experience hosting pros just a phone call away.
http://p.sf.net/sfu/theplanet-com
--
___
Dri-devel mailing list
Dri-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/dri-devel


[Bug 15166] Changing brightness of backlight freezes kernel with radeon kms enabled.

2010-02-05 Thread bugzilla-daemon
http://bugzilla.kernel.org/show_bug.cgi?id=15166





--- Comment #15 from Manuel Ullmann ullman.b...@gmx.de  2010-02-05 21:58:45 
---
I guess you took in account, that waiting the 5 minutes is important. Cause I
wrote in Comment #1 already, that LID closing and opening within this time
amount is not the problem (radeon disables and enables the monitor fine). But I
guess it is as you said a problem of new hardware.

I just reproduced it and found, that the system freeze differs slightly from
that of the brightness-changing. While the sound-mute-LED changes her color as
usual from yellow to blue and back, if pressed after a system freeze through
brightness-changing, it does not, when the freeze is caused by closing LID (and
waiting 5 min.). All other symptoms are the same (sysrq not working,
USB-devices not powered etc.). Triggering the other LEDs seems to work; they
are dimmed and brightened as usual, when pressed (on both freezes). The
Wireless-LED of course does not work, because the (USB-)wireless-chip has to be
initialized before. 

Ah, and I asserted, that Knoppix 6.1 freezes on boot, when I booted it without
acpi=off. But all other linux distributions didn´t have that problem (including
an installed Gentoo and Ubuntu and Live CDs like grml and dsl) so I guess it is
not relevant. (Knoppix 6.1 had kernel version 2.6.28.4)

-- 
Configure bugmail: http://bugzilla.kernel.org/userprefs.cgi?tab=email
--- You are receiving this mail because: ---
You are watching the assignee of the bug.
--
The Planet: dedicated and managed hosting, cloud storage, colocation
Stay online with enterprise data centers and the best network in the business
Choose flexible plans and management services without long-term contracts
Personal 24x7 support from experience hosting pros just a phone call away.
http://p.sf.net/sfu/theplanet-com
--
___
Dri-devel mailing list
Dri-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/dri-devel


[Bug 15166] Changing brightness of backlight freezes kernel with radeon kms enabled.

2010-02-05 Thread bugzilla-daemon
http://bugzilla.kernel.org/show_bug.cgi?id=15166





--- Comment #16 from Alex Deucher alexdeuc...@gmail.com  2010-02-05 22:03:00 
---
Does messing with the display switch hotkey also cause problems?

-- 
Configure bugmail: http://bugzilla.kernel.org/userprefs.cgi?tab=email
--- You are receiving this mail because: ---
You are watching the assignee of the bug.

--
The Planet: dedicated and managed hosting, cloud storage, colocation
Stay online with enterprise data centers and the best network in the business
Choose flexible plans and management services without long-term contracts
Personal 24x7 support from experience hosting pros just a phone call away.
http://p.sf.net/sfu/theplanet-com
--
___
Dri-devel mailing list
Dri-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/dri-devel


Problem with drm-radeon-testing commit - drm/ttm: Avoid conflicting reserve_memtype during ttm_tt_set_page_caching.

2010-02-05 Thread Andy Furniss
Card is an AGP RV670. libdrm,mesa,ddx and xorg are current gits.

After the recent batch of commits to drm-radeon-testing I have a perf 
problem.

It doesn't show immediately, but after running a timedemo on nexuiz 
followed by openarena, further timedemos on either will have very poor 
performance - 4 fps and gears may be as low as 100fps.

Nothing in dmesg during bisect (though I saw a few errors when on head - 
I think they are a separate issue) and free looks OK.

Once this has happened 2D performance is also reduced a bit - menues on 
seamonkey slower than before and when displaying a page with a second 
counter, sometimes all rendering will glitch briefly every second - can 
be seen just with key repeat in an xterm.

Git bisect came up with -

db78e27de7e29a6db6be7caf607cf803d84094aa is first bad commit
commit db78e27de7e29a6db6be7caf607cf803d84094aa
Author: Francisco Jerez curroje...@riseup.net
Date:   Tue Jan 12 18:49:43 2010 +0100

 drm/ttm: Avoid conflicting reserve_memtype during 
ttm_tt_set_page_caching.

 Fixes errors like:
  reserve_ram_pages_type failed 0x15b7a000-0x15b7b000, track 0x8, 
req 0x10
 when a BO is moved between WC and UC areas.


--
The Planet: dedicated and managed hosting, cloud storage, colocation
Stay online with enterprise data centers and the best network in the business
Choose flexible plans and management services without long-term contracts
Personal 24x7 support from experience hosting pros just a phone call away.
http://p.sf.net/sfu/theplanet-com
--
___
Dri-devel mailing list
Dri-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/dri-devel


[Bug 26380] [2.6.33-rc6 drm-radeon-testing] - glyph corruption and GPU lockups with KMS enabled

2010-02-05 Thread bugzilla-daemon
http://bugs.freedesktop.org/show_bug.cgi?id=26380


Shawn Starr shawn.st...@rogers.com changed:

   What|Removed |Added

   Severity|blocker |major
 OS/Version|All |Linux (All)
   Priority|high|medium
   Platform|Other   |x86-64 (AMD64)
Summary|[2.6.33-rc6-git + all drm-  |[2.6.33-rc6 drm-radeon-
   |radeon/drm-core/next|testing] - glyph corruption
   |branches] - glyph corruption|and GPU lockups with KMS
   |and GPU lockup with KMS |enabled
   |enabled |
Version|XOrg CVS|DRI CVS




--- Comment #3 from Shawn Starr shawn.st...@rogers.com  2010-02-05 23:17:24 
PST ---
We can't close this.. Even after the latest fixes for text glyph corruption I
have encountered more of it

See: http://www.sh0n.net/spstarr/radeon/more-text-corruption.jpg

The corruption is less, but it does happen after a while.


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

--
The Planet: dedicated and managed hosting, cloud storage, colocation
Stay online with enterprise data centers and the best network in the business
Choose flexible plans and management services without long-term contracts
Personal 24x7 support from experience hosting pros just a phone call away.
http://p.sf.net/sfu/theplanet-com
--
___
Dri-devel mailing list
Dri-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/dri-devel