(switched to email. Please respond via emailed reply-to-all, not via the
bugzilla web interface).
(switching back to email, actually)
On Sun, 13 Jun 2010 13:01:57 GMT
bugzilla-daemon(a)bugzilla.kernel.org wrote:
> https://bugzilla.kernel.org/show_bug.cgi?id=16148
>
>
> Mikko C. <mikko.cal(a)gmail.com> changed:
>
> What |Removed |Added
> ----------------------------------------------------------------------------
> …
[View More] CC| |mikko.cal(a)gmail.com
>
>
>
>
> --- Comment #8 from Mikko C. <mikko.cal(a)gmail.com> 2010-06-13 13:01:53 ---
> I have been getting this with 2.6.35-rc2 and rc3.
> Could it be the same problem?
>
>
> X: page allocation failure. order:0, mode:0x4
> Pid: 1514, comm: X Not tainted 2.6.35-rc3 #1
> Call Trace:
> [<ffffffff8108ce49>] ? __alloc_pages_nodemask+0x629/0x680
> [<ffffffff8108c920>] ? __alloc_pages_nodemask+0x100/0x680
> [<ffffffffa00db8f3>] ? ttm_get_pages+0x2c3/0x448 [ttm]
> [<ffffffffa00d4658>] ? __ttm_tt_get_page+0x98/0xc0 [ttm]
> [<ffffffffa00d4988>] ? ttm_tt_populate+0x48/0x90 [ttm]
> [<ffffffffa00d4a26>] ? ttm_tt_bind+0x56/0xa0 [ttm]
> [<ffffffffa00d5230>] ? ttm_bo_handle_move_mem+0x1d0/0x430 [ttm]
> [<ffffffffa00d76d6>] ? ttm_bo_move_buffer+0x166/0x180 [ttm]
> [<ffffffffa00b9736>] ? drm_mm_kmalloc+0x26/0xc0 [drm]
> [<ffffffff81030ea9>] ? get_parent_ip+0x9/0x20
> [<ffffffffa00d7786>] ? ttm_bo_validate+0x96/0x130 [ttm]
> [<ffffffffa00d7b35>] ? ttm_bo_init+0x315/0x390 [ttm]
> [<ffffffffa0122eb8>] ? radeon_bo_create+0x118/0x210 [radeon]
> [<ffffffffa0122fb0>] ? radeon_ttm_bo_destroy+0x0/0xb0 [radeon]
> [<ffffffffa013704c>] ? radeon_gem_object_create+0x8c/0x110 [radeon]
> [<ffffffffa013711f>] ? radeon_gem_create_ioctl+0x4f/0xe0 [radeon]
> [<ffffffffa00b10e6>] ? drm_ioctl+0x3d6/0x470 [drm]
> [<ffffffffa01370d0>] ? radeon_gem_create_ioctl+0x0/0xe0 [radeon]
> [<ffffffff810b965f>] ? do_sync_read+0xbf/0x100
> [<ffffffff810c8965>] ? vfs_ioctl+0x35/0xd0
> [<ffffffff810c8b28>] ? do_vfs_ioctl+0x88/0x530
> [<ffffffff81031ed7>] ? sub_preempt_count+0x87/0xb0
> [<ffffffff810c9019>] ? sys_ioctl+0x49/0x80
> [<ffffffff810ba4fe>] ? sys_read+0x4e/0x90
> [<ffffffff810024ab>] ? system_call_fastpath+0x16/0x1b
That's different. ttm_get_pages() looks pretty busted to me. It's not
using __GFP_WAIT and it's not using __GFP_FS. It's using a plain
GFP_DMA32 so it's using atomic allocations even though it doesn't need
to. IOW, it's shooting itself in the head.
Given that it will sometimes use GFP_HIGHUSER which includes __GFP_FS
and __GFP_WAIT, I assume it can always include __GFP_FS and __GFP_WAIT.
If so, it should very much do so. If not then the function is
misdesigned and should be altered to take a gfp_t argument so the
caller can tell ttm_get_pages() which is the strongest allocation mode
which it may use.
> [TTM] Unable to allocate page.
> radeon 0000:01:05.0: object_init failed for (7827456, 0x00000002)
> [drm:radeon_gem_object_create] *ERROR* Failed to allocate GEM object (7827456,
> 2, 4096, -12)
This bug actually broke stuff for you.
Something like this:
--- a/drivers/gpu/drm/ttm/ttm_page_alloc.c~a
+++ a/drivers/gpu/drm/ttm/ttm_page_alloc.c
@@ -677,7 +677,7 @@ int ttm_get_pages(struct list_head *page
/* No pool for cached pages */
if (pool == NULL) {
if (flags & TTM_PAGE_FLAG_DMA32)
- gfp_flags |= GFP_DMA32;
+ gfp_flags |= GFP_KERNEL|GFP_DMA32;
else
gfp_flags |= GFP_HIGHUSER;
_
although I wonder whether it should be using pool->gfp_flags.
It's a shame that this code was developed and merged in secret :( Had
we known, we could have looked at enhancing mempools to cover the
requirement, or at implementing this in some generic fashion rather
than hiding it down in drivers/gpu/drm.
[View Less]
https://bugs.freedesktop.org/show_bug.cgi?id=28402
--- Comment #6 from Da Fox <da_fox(a)mad.scientist.com> 2010-06-16 05:12:00 PDT ---
I've recompiled the kernel (this time revision
8e36113082821980c60ce89a6c5d45fc9492fc26) with netconsole enabled, and have
'triggered' the freeze. At this point no errors, warnings or other messages
were being printed to netconsole. Remotely logging-in via ssh was not possible.
The kernel did not respond even to SysRQ-b.
Netconsole output did stop when …
[View More]the system finished booting, but was re-enabled
using the command 'dmesg -n 8', issued as root. Netconsole functionality was
then tested by disabling and then re-enabling swap space. this caused the swap
enabled message to be printed on the netconsole. The kernel was booted with
'debug' specified on the commandline
Is there any way to enable a more verbose output after booting? I've searched
for a kernel config option to enable more verbose logging, but I could not find
anything which seemed relevant.
(In reply to comment #5)
> Also seeing random freezes here on my Thinkpad T60 on 2.6.34 with X1300
> mobility radeon.
Could you please also specify the exact GPU that you have ? (lspci -v), and
your kernel logs? (perhaps there is something being logged in yours?)
--
Configure bugmail: https://bugs.freedesktop.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.
[View Less]
On 06/15/2010 04:40 AM, Jean Delvare wrote:
> Hi David,
>
> On Mon, 14 Jun 2010 14:28:57 -0700, David Daney wrote:
>> On 06/14/2010 01:53 PM, Jean Delvare wrote:
>>> Hi Justin,
>>>
>>> On Mon, 14 Jun 2010 13:26:46 -0700, Justin P. Mattock wrote:
>>>> could be a right solution, could be wrong
>>>> here is the warning:
>>>> CC drivers/i2c/i2c-core.o
>>>> drivers/i2c/i2c-core.c: In function '…
[View More]i2c_register_adapter':
>>>> drivers/i2c/i2c-core.c:757:15: warning: variable 'dummy' set but not used
>>>>
>>>> Signed-off-by: Justin P. Mattock<justinmattock(a)gmail.com>
>>>>
>>>> ---
>>>> drivers/i2c/i2c-core.c | 2 ++
>>>> 1 files changed, 2 insertions(+), 0 deletions(-)
>>>>
>>>> diff --git a/drivers/i2c/i2c-core.c b/drivers/i2c/i2c-core.c
>>>> index 1cca263..79c6c26 100644
>>>> --- a/drivers/i2c/i2c-core.c
>>>> +++ b/drivers/i2c/i2c-core.c
>>>> @@ -794,6 +794,8 @@ static int i2c_register_adapter(struct i2c_adapter *adap)
>>>> mutex_lock(&core_lock);
>>>> dummy = bus_for_each_drv(&i2c_bus_type, NULL, adap,
>>>> __process_new_adapter);
>>>> + if(!dummy)
>>>> + dummy = 0;
>>>
>>> One word: scripts/checkpatch.pl
>>>
>>> In other news, the above is just plain wrong. First we force people to
>>> read the result of bus_for_each_drv() and then when they do and don't
>>> need the value, gcc complains, so we add one more layer of useless
>>> code, which developers and possibly tools will later wonder and
>>> complain about? I can easily imagine that a static code analyzer would
>>> spot the above code as being a potential bug.
>>>
>>> Let's stop this madness now please.
>>>
>>> Either __must_check goes away from bus_for_each_drv() and from every
>>> other function which raises this problem, or we must disable that new
>>> type of warning gcc 4.6.0 generates. Depends which warnings we value
>>> more, as we can't sanely have both.
>>>
>>
>> That is the crux of the whole thing. Putting in crap to get rid of the
>> __must_check warning someone obviously wanted to provoke is just plain
>> wrong.
>
> __process_new_adapter() calls i2c_do_add_adapter() which always returns
> 0. Why should I check the return value of bus_for_each_drv() when I
> know it will always be 0 by construction?
>
> Also note that the same function is also called through
> bus_for_each_dev() somewhere else in i2c-core, and there is no warning
> there because bus_for_each_dev() is not marked __must_check. How
> consistent is this? If bus_for_each_dev() is OK without __must_check,
> then I can't see why bus_for_each_drv() wouldn't be.
>
Well, I would advocate removing the __must_check then.
David Daney
[View Less]
Non pooled page allocation should have GFP_USER set so allocation
can wait and reclaim page from other process (ie non atomic).
Signed-off-by: Jerome Glisse <jglisse(a)redhat.com>
---
drivers/gpu/drm/ttm/ttm_page_alloc.c | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/drivers/gpu/drm/ttm/ttm_page_alloc.c b/drivers/gpu/drm/ttm/ttm_page_alloc.c
index ef91069..2f04757 100644
--- a/drivers/gpu/drm/ttm/ttm_page_alloc.c
+++ b/drivers/gpu/drm/ttm/ttm_page_alloc.c
@@ -…
[View More]667,7 +667,7 @@ int ttm_get_pages(struct list_head *pages, int flags,
{
struct ttm_page_pool *pool = ttm_get_pool(flags, cstate);
struct page *p = NULL;
- int gfp_flags = 0;
+ int gfp_flags = GFP_USER;
int r;
/* set zero flag for page allocation if required */
--
1.7.0.1
[View Less]
https://bugs.freedesktop.org/show_bug.cgi?id=26852
--- Comment #5 from Sérgio M. B. <sergio(a)sergiomb.no-ip.org> 2010-06-15 21:12:52 PDT ---
What I'm try to say is, I think the ./configure of libdrm, should check what
kernel version we have on system and require a version of kernel bigger than a
number which libdrm, we are compiling, works.
Is not logic, build libdrm-2.4.21 with a kernel <= 2.6.26 , I think. So libdrm
should avoid those situations.
--
Configure bugmail: https://…
[View More]bugs.freedesktop.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.
[View Less]
https://bugs.freedesktop.org/show_bug.cgi?id=28443
Summary: [r300g] HoN sometimes crashes when loading
Product: Mesa
Version: git
Platform: Other
OS/Version: All
Status: NEW
Severity: normal
Priority: medium
Component: Drivers/DRI/r300
AssignedTo: dri-devel(a)lists.freedesktop.org
ReportedBy: drakkk(a)centrum.cz
Created an attachment (id=36140)
--> (https://bugs.freedesktop.org/…
[View More]attachment.cgi?id=36140)
dmesg
I've been experiencing this random crash for some time, but this was the first
time I was able to get a backtrace. Sometimes when HoN menu or new map is
loading it crash like this:
Failed to allocate :
size : 8388608 bytes
alignment : 2048 bytes
domains : 2
Program received signal SIGSEGV, Segmentation fault.
get_drm_buffer (_buf=0x0) at radeon_drm_buffer.c:255
255 if (_buf->vtbl == &radeon_drm_buffer_vtbl) {
Missing separate debuginfos, use: debuginfo-install glibc-2.12-2.i686
(gdb) bt
#0 get_drm_buffer (_buf=0x0) at radeon_drm_buffer.c:255
#1 0x02bd7267 in radeon_drm_bufmgr_set_tiling (_buf=0x0,
microtiled=R300_BUFFER_LINEAR, macrotiled=R300_BUFFER_LINEAR, pitch=8192)
at radeon_drm_buffer.c:319
#2 0x02bd6392 in radeon_r300_winsys_buffer_set_tiling (rws=0x887e258, buf=0x0,
pitch=8192, microtiled=R300_BUFFER_LINEAR, macrotiled=R300_BUFFER_LINEAR)
at radeon_r300.c:81
#3 0x02be72fc in r300_texture_create (screen=0x887fa20, base=0xbfffdd18) at
r300_texture.c:982
#4 0x02bf6eeb in r300_resource_create (screen=0x887fa20, templ=0xbfffdd18) at
r300_resource.c:37
#5 0x02be7a4f in r300_texture_get_transfer (ctx=0x8932c58, texture=0xa353778,
sr=..., usage=2, box=0xbfffddb8) at r300_transfer.c:157
#6 0x02db71ee in u_get_transfer_vtbl (context=0x8932c58, resource=0xa353778,
sr=..., usage=PIPE_TRANSFER_WRITE, box=0xbfffddb8) at util/u_resource.c:42
#7 0x02d03586 in pipe_get_transfer (st=0x89b7340, stImage=0xa193ba8,
zoffset=0, usage=PIPE_TRANSFER_WRITE, x=0, y=0, w=2048, h=1024)
at ../../src/gallium/auxiliary/util/u_inlines.h:342
#8 st_texture_image_map (st=0x89b7340, stImage=0xa193ba8, zoffset=0,
usage=PIPE_TRANSFER_WRITE, x=0, y=0, w=2048, h=1024) at
state_tracker/st_texture.c:147
#9 0x02d4226e in st_TexImage (ctx=0x898be10, dims=2, target=3553, level=0,
internalFormat=6408, width=2048, height=1024, depth=1,
border=<value optimized out>, format=6408, type=5121, pixels=0x6548008,
unpack=0x899abe0, texObj=0xa353558, texImage=0xa193ba8, imageSize=0,
compressed_src=0 '\000') at state_tracker/st_cb_texture.c:681
#10 0x02d42c7e in st_TexImage2D (ctx=0x898be10, target=3553, level=0,
internalFormat=6408, width=2048, height=1024, border=0, format=6408, type=5121,
pixels=0x6548008, unpack=0x899abe0, texObj=0xa353558, texImage=0xa193ba8)
at state_tracker/st_cb_texture.c:798
#11 0x02c99b0f in _mesa_TexImage2D (target=3553, level=0, internalFormat=6408,
width=2048, height=1024, border=0, format=6408, type=5121, pixels=0x6548008)
at main/teximage.c:2251
#12 0x07c10307 in glTexImage2D (target=3553, level=0, internalformat=6408,
width=2048, height=1024, border=0, format=6408, type=5121, pixels=0x6548008)
at ../../src/mesa/glapi/glapitemp.h:1002
#13 0x01f37461 in ?? () from /home/Paulie/HoN/vid_gl2-x86.so
Backtrace stopped: previous frame inner to this frame (corrupt stack?)
mesa: a2817f6ae566b672f195cff22e14e2058d3617ea
kernel: 2.6.33.5-112.fc13
GPU: ATI Technologies Inc M56P [Radeon Mobility X1600] (RV530)
--
Configure bugmail: https://bugs.freedesktop.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.
[View Less]
First and foremost, I must
thank anybody taking the time to even
look at these(I know you people have better
things to be doing).
And secondly here is my try at trying
to fix some of the warning messages
spammed by gcc 4.6.0 when building the
kernel. Some of them I removed, and
some of them I just shut off.
Note: Removing the code does seem like a
good approach(if it's actually dead),
but if not then something needs
to be fixed.
As for shutting off the code to shutup gcc
does seem like a …
[View More]temporary fix, but would
rather have a warning message, than see it get
lost in the sands of time.
In any case Thanks for taking the time,
and hopefully we can get fixes for all of
this mess generated by gcc..
Justin P. Mattock
[View Less]
https://bugs.freedesktop.org/show_bug.cgi?id=28538
Summary: Mesa 7.8.1 for the RV250 or Radeon 9000 is broke
Product: Mesa
Version: unspecified
Platform: x86 (IA32)
OS/Version: Linux (All)
Status: NEW
Severity: normal
Priority: medium
Component: Drivers/DRI/r200
AssignedTo: dri-devel(a)lists.freedesktop.org
ReportedBy: brian(a)rapsure.net
I've tested with two different computers in …
[View More]regards to the RV250 Mesa code.
This code has been broke since at least Mesa 7.5. The two computers have
different hardware with the only common piece of hardware being the video card.
So I believe that the other pieces of hardware have very little to do with this
bug. One computer is an Intel Pentium III, and the other is an AMD Athlon (Slot
A version). Both computers are running Gentoo. The Pentium III is running
xorg-server-1.8.1, and the AMD Athlon is running xorg-server-1.7.6. Both
computers exhibit the exact same behavior in regards to the running of OpenGL
programs.
The test:
Run glxgears
The results:
A blank window with no gears.
Expected results:
A window that has spinning gears.
Other programs known to not display correctly too:
googleearth, trigger.
Due to the wide differences in hardware and a similar discrepancy in the
software the recreation of this bug should be quite simple as just upgrading to
Mesa 7.8. I don't experience this behavior on the ATI Radeon 9250 with the
RV280 core.
--
Configure bugmail: https://bugs.freedesktop.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.
[View Less]
On 06/15/2010 04:38 AM, Jean Delvare wrote:
> On Mon, 14 Jun 2010 13:26:47 -0700, Justin P. Mattock wrote:
>> Temporary fix until something is resolved
>
> This is wrong by design, sorry. Warnings aren't blocking, and thus need
> no "temporary fix". Such temporary fixes would be only hiding the
> warning, cancelling the good work of gcc developers. Nack nack nack.
>
o.k.
>> to fix the below warning:
>> CC [M] drivers/ieee1394/sbp2.o
>> drivers/…
[View More]ieee1394/sbp2.c: In function 'sbp2_parse_unit_directory':
>> drivers/ieee1394/sbp2.c:1353:6: warning: variable 'unit_characteristics' set but not used
>> Signed-off-by: Justin P. Mattock<justinmattock(a)gmail.com>
>>
>> ---
>> drivers/ieee1394/sbp2.c | 2 ++
>> 1 files changed, 2 insertions(+), 0 deletions(-)
>>
>> diff --git a/drivers/ieee1394/sbp2.c b/drivers/ieee1394/sbp2.c
>> index 4565cb5..fcf8bd5 100644
>> --- a/drivers/ieee1394/sbp2.c
>> +++ b/drivers/ieee1394/sbp2.c
>> @@ -1356,6 +1356,8 @@ static void sbp2_parse_unit_directory(struct sbp2_lu *lu,
>>
>> management_agent_addr = 0;
>> unit_characteristics = 0;
>> + if (!unit_characteristics)
>> + unit_characteristics = 0;
>> firmware_revision = SBP2_ROM_VALUE_MISSING;
>> model = ud->flags& UNIT_DIRECTORY_MODEL_ID ?
>> ud->model_id : SBP2_ROM_VALUE_MISSING;
>
>
Thanks for the response and info on this.
Justin P. Mattock
[View Less]