Summary: | [i945 Macbook] crash when running video | ||||||||
---|---|---|---|---|---|---|---|---|---|
Product: | xorg | Reporter: | Cédric Krier <cedk> | ||||||
Component: | Driver/intel | Assignee: | Wang Zhenyu <zhenyu.z.wang> | ||||||
Status: | RESOLVED NOTOURBUG | QA Contact: | Xorg Project Team <xorg-team> | ||||||
Severity: | major | ||||||||
Priority: | medium | CC: | eric, remi | ||||||
Version: | 7.2 (2007.02) | ||||||||
Hardware: | x86 (IA32) | ||||||||
OS: | Linux (All) | ||||||||
Whiteboard: | |||||||||
i915 platform: | i915 features: | ||||||||
Attachments: |
|
Description
Cédric Krier
2008-01-24 15:16:49 UTC
Please attach the full log and xorg.conf. Does this ever work for you on the previous version? Created attachment 13953 [details]
Xorg log
Created attachment 13954 [details]
xorg.conf
(In reply to comment #1) > Please attach the full log and xorg.conf. > > Does this ever work for you on the previous version? > Yes it was working with the version 1.7.4 jbarnes guess one of the fragment shader program is bogus as the bad channel message comes from i915_get_hardware_channel_val from i915_3d.h. Does this happen everytime? Could you get more details on how to reproduce this? (In reply to comment #6) > Does this happen everytime? Could you get more details on how to reproduce > this? > It crashes everytime when I run any video (mplayer, xine, etc...). And it happens with all i810-2* that have tested. it's strange, we always assign channel to fixed value, and driver never trys to abuse channel value. And exa accel works fine, right? How about try to comment following negate value check? diff --git a/src/i915_3d.h b/src/i915_3d.h index 1090218..62a8eac 100644 --- a/src/i915_3d.h +++ b/src/i915_3d.h @@ -177,8 +177,8 @@ i915_fs_operand_one(void) static inline int i915_get_hardware_channel_val(int channel_val) { - if (channel_val < 0) - channel_val = -channel_val; +// if (channel_val < 0) +// channel_val = -channel_val; switch (channel_val) { case X_CHANNEL_VAL: ~ btw, do you have any other patches outside of upstream tree? It doesn't change any thing and I have no patch. But I find a solution. The problem appears when I compile the driver with an hardened gcc. When I compile with i686-pc-linux-gnu-3.4.6-hardenednopiessp, it works well. yeah, compiler issue was also my thought, so thanks for try it. then i'd like to figure out what might go wrong with our shader implement in i915_3d.h, macros...or a gcc issue? Eric, any sharp idea? Zhenyu, those two lines you commented out are for an unused feature of the macros -- you can do i915_fs_operand(FS_R0, X, -Y, -X, W) for example to negate two components. We don't use it today, but I can imagine using it when we do gradients for example. If the issue is caused by special gcc, I'd be inclined to close it unless there's evidence of an actual bug in our code being exposed. right, I don't meant we should delete negate channel, just want to see if it changes anything though... Cédric, I'll close the bug now, as it looks a compiler issue than our driver's bug. |
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.