- June 2010
- May 2010
- April 2010
- March 2010
- February 2010
- January 2010
- December 2009
- November 2009
- October 2009
- September 2009
- August 2009
- July 2009
- June 2009
- May 2009
- April 2009
- March 2009
- February 2009
- January 2009
- December 2008
- November 2008
- October 2008
- September 2008
- August 2008
- July 2008
- June 2008
- May 2008
- April 2008
- March 2008
- February 2008
- January 2008
- December 2007
- November 2007
- Radeon Wiki
- xf86-video-ati
- ATI Mailing List
- Radeon @ Phoronix
- RadeonHD Wiki
- xf86-video-radeonhd
- RadeonHD Mailing List
- RadeonHD @ Phoronix
Radeon IRC Logs For 2008-10-22
spstarr: to kms……
spstarr: new updates
spstarr_desk: no, not yet π
spstarr_desk: just preparing
spstarr: ok let’s try to lock this thing
spstarr_desk: 1we have locked
spstarr_desk: echo ‘t’ > /sysrq-trigger…
spstarr_desk: done
spstarr_desk: airlied: what else?
airlied: spstarr_desk: look at dmesg find Xorg.
spstarr_desk: http://www.sh0n.net/spstarr/r300-kms.dump looking..
spstarr_desk: ‘X’
spstarr_desk: oh radeon things..
spstarr_desk: [ 1159.324383] [
spstarr_desk: [ 1159.324383] [
spstarr_desk: you’re right π
spstarr_desk: its in a wait
spstarr_desk: interesting, even if X is stuck there’s no stuck processes in top
spstarr_desk: no cpu , no gpu wedge
airlied: yup X is stuck in a non-busy wait.. I need to debug that one at some point.
spstarr_desk: its not wedged, but extremely slow waiting i justed move the mouse on laptop and it responsed slowly
spstarr_desk: ya
spstarr_desk: Xorg looks ok
spstarr_desk: log
roh: hm.. deadlocks?
roh: i have some too π .. on my t60p.. mostly when using xv, but sometimes even when only moving the mouse
spstarr_desk: non-deadlocks
spstarr_desk: they are busywaits
roh: well.. i haven’t actually checked, but it seems to freeze hard, since audio is looking the last dmabuffer
roh: will try pinging/logging in next time
spstarr_desk: i can even vt switch but i powered it off now
spstarr_desk: airlied: will check channel for any new updates, sleep time
spstarr_desk: 2am
spstarr_desk: tries desktop effects on his 7500.
spstarr_desk: success
spstarr_desk: tries with tv tuner
spstarr_desk: the r100/r200 acceleration is so fast
spstarr_desk: i hope we can get the r3xx+ as accelerated π
spstarr_desk: X is using < 13% cpu with accel
roh: hm.. no switching anything in that case here.. searching bugzilla
roh: but yes, i have dri, mesa also from git and enabled and use exa
spstarr_desk: TV works
spstarr_desk: but DRI2 will solve GL/overlay rendering onto textures
airlied: spstarr_desk: it won’t solve the overlay.
spstarr_desk: we can’t grab that buffer somehow?
airlied: an overlay is an overlay.. the hint is in the name
airlied: thats why we use textured viudeo
spstarr_desk: i wonder if AVview supports textured video
airlied: the problem with tv capture is it can drop the stuff direct into the overlay.
spstarr_desk: hm if i try texture video it crashes
spstarr_desk: Error of failed request: BadMatch (invalid parameter attributes)
spstarr_desk: Major opcode of failed request: 140 (XVideo)
spstarr_desk: maybe how its being called
spstarr_desk: Adaptor 1: Radeon Textured Video
spstarr_desk: type input image
spstarr_desk: ports 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73
roh: #13998 and #15096 feel a bit like it (even when i tried sysrq.. but well.. this is a notebook kb)
spstarr_desk: might need to debug the app to see if its not sending right info to X
airlied: spstarr_desk: the tv capture stuff is designed to drop stuff into the overlay directly usually.
airlied: won’t really work with textured video as well
spstarr_desk: so then until we have a capture driver we can only dump to overlay
spstarr_desk: i wont worry about it
spstarr_desk: airlied: but the r100/r200 accel is quite fast, i look at the r3xx and i wonder whats still missing?
spstarr_desk: its very very smooth on this 7500
airlied: spstarr_desk: using EXA?
roh: would adding Option “AGPMode” “4” or so make any sense in my case?
spstarr_desk: heh
spstarr_desk: just dont VT switch
spstarr_desk: π
spstarr_desk: oh KMS couldn’t come soon enough
spstarr_desk: airlied: if you do have kms for r1xx i can test it too
spstarr_desk: if you decide to allow it to be enabled on grub
airlied: spstarr_desk: you can force it with radeon.modeset=1 I think on r100
spstarr_desk: sure! lemme give it a try
airlied: you just won’t get any 3D driver to work.
spstarr_desk: thats fine
airlied: roh: AGP card?
roh: nope.. x1600ish in a t60p
airlied: ah a t60p shouldn’t have that.
roh: pci-e
airlied: hmm my t60p is mostly stable but I probably don’t use it enough to notiuce
spstarr_desk: ok let’s give it a go!
roh: it seems only when its doing ‘heavy stuff’ like xvideo via texturing or so…
roh: also it still has some blitting bugs and flickering mousecursor
airlied: roh: you got dynamic clocks on?
roh: between the spontaneous lockups its really solid now (and also some bugs only are there when i have 2 screen on)
roh: airlied not explicitely
roh: how can i check all ‘Options’ a driver knows about and valid values?
hifi: man driver
hifi: in most cases
roh: hifi that one doesnt come from the git radeon driver i use i guess
spstarr_desk: airlied: it sorta works im in kms right now
hifi: roh: you can use man with explicit path
hifi: if the man files are in the git sources
spstarr_desk: airlied: it chose the wrong resolution though (640×480 instead of something higher) and VT switching from CRT causes the monitor to not return to text mode.. but im here
spstarr_desk: tries 3D let’s go for broke.. for fun
roh: airlied http://yamato.hyte.de/tmp/xorg.conf
airlied: roh: should be fine.
roh: any suggestion how i could get any debug output?
airlied: if its dying hard not really..
roh: audio in the background loops the last dma buffer when that happens till i press power _long_
airlied: most of these things turning on debugging just makes it not die π
spstarr_desk: airlied: neat otherwise π
airlied: roh: glisse has worked on it before..
airlied: orders rs480 motherboard from ebay… the pain…
spstarr_desk: airlied: its interesting composite on r100/200/300 all lock on VT switching w/o kms
roh: any idea about the display-corruption with the cursors when using xrandr and multihead?
spstarr_desk: its also good because there’s a coming together of code paths
spstarr_desk: ok r200 i dont know but if its based on the r1xx then i’d assume yes
airlied: roh: thats sound more familiar I’ve heard on r600s..
airlied: roh: it mainly sounds like bandwidth calcs going wrong so cursor doesn’t always get rendered.
roh: airlied i have a quite ‘big’ global viewport i think
spstarr_desk: airlied: on the HD 3650 if you VT switch in with no 3D and switch back, i get a negative palette desktop
roh: Virtual 3296 2272
airlied: spstarr_desk: nice..
airlied: roh: ah that could be part of it
spstarr_desk: airlied: the desktop still works though
spstarr_desk: just negative colours π
roh: airlied the thing is, the internal panel is 1680×1050 and the external one 1600×1024
spstarr_desk: ok sleep will keep an eye on channel from here/work
roh: is dynamicclocks ‘stable’ on my kind of hw?
roh: or even more precise: if it is, could enabling it make the box less warm or is the effect not worth the trouble?
yangman: roh: hard to say. doesn’t seem to actually affect thinkpads with X1xxx GPUs
airlied: roh: it should in theory make things better but the BIOS mightalready have turned it on
yangman: roh: I’ve implemented it in radeonhd and ran some experiments. basically no effect
roh: well.. then i’ll enable it and see what happens…
yangman: hm.. actually, explicitly disabling it is something I haven’t tried yet…
roh: in the best case the deadlock goes away for a revision or so
yangman: I’ll have to keep a mental note of that
roh: .oO(how much i like things like races)
roh: airlied to be fair, i do not trust _any_ bios or things alike anymore… too many bugs people want to put below a carpet instead of fixing them
glisse: airlied: for size checking i think kernel should report somethings like locked buffer ie buffer which can’t be evicted by anyone like ring, scanoutbuffers, …
glisse: so userspace can know what kind of memory it does have
glisse: then we can set the limit to a % of that to be conservative
glisse: airlied_: for size checking i think kernel should report somethings like locked buffer ie buffer which can’t be evicted by anyone like ring, scanoutbuffers, …
glisse: so userspace can know what kind of memory it does have
glisse: then we can set the limit to a % of that to be conservative
airlied_: glisse: yup I was just talking to anholt about it in intel-gfx
airlied_: I think the kernel should export a limit per memory space that gets updated after every batch submission
glisse: also i think we can still fail for mesa
glisse: and fallback
airlied_: sw fallback for the loss..
airlied_: but yes if we screw up badly we can do that..
airlied_: peterz: I tried my rv635 today and it worked fine with 2×21″ monitors.
glisse: got to go bb
airlied_: so that wasn’t very insightful π
airlied_: glisse: I gotta fix r300_mem.c to do sizing now.
airlied_: I’m neraly 80% done.
airlied_: peterz: 24″ monitors have been a bane of our existance for a long tim e π
airlied_: damn modes close to TMDS limits.
peterz: airlied_: right,..
airlied_: peterz: btw when you were testing were you starting gdm or X?
peterz: airlied_: kdm actually
peterz: what I do is: ./autogen.sh –prefix=/usr; make -j6; make install; kill `pidof X`
peterz: from the laptop
peterz: and then see whatever, if anything, comes up on the desktop
airlied_: peterz: cool.. rules out one worry.
peterz: airlied_: 30″ screens are easier again, due to being dual-channel?
airlied_: peterz: yup 30″ make things break, and I have one π
airlied_: I don’t own any 24s.
peterz: aww
peterz: I love my dual-head 24″ setup, and envy those with dual 30″ π
airlied_: dual 30″ takes a lot of head twisting, one is quite enough for me π
peterz: hehe
airlied_: can you try changing line 1161 of radeon_output.c to data = 1
airlied_: wonders does coherent mode help more with certain modes.
peterz: sure, hold on
peterz: airlied_: on the slightly working code base, or in master?
airlied_: peterz: master
peterz: has two powered on, but blank screens
airlied_: damn…
peterz: sorry π
MrCooper: have you tried lower modes?
peterz: nope
airlied: MrCooper: good point might be worth trying 1280×1024..
peterz: adjusts xorg.conf and cycles X
peterz: same two blank screens
peterz: puts in 1680×1050
peterz: same results…
airlied: peterz: can you try a hack for me, in atombios_output.c:atombios_output_digital_setup, hardcode major and minor to 1 before the switch(major)
peterz: does
MostAwesomeDude: agd5f: Should I add gamma, contrast, brightness, etc. to textured video?
MostAwesomeDude: Would only be a bit of fragprog magic.
airlied: MostAwesomeDude: sounds like a good plan
peterz: airlied: one powered on, one powered down, both blank
peterz: ooh, second just came on
peterz: took a long while
airlied: anything on either of them?
peterz: still blank
airlied: does kdm draw a background on both?
peterz: it used to I think, something swirly
MostAwesomeDude: airlied: Fog defeated me yet again, so I figure, might as well do something easy for a change. :3
airlied: I’m mainly trying to figure out why you see something with the build a few commits ago.
MrCooper: MostAwesomeDude: my pipe dream would be a single adaptor which switches between overlay and textured on demand, but I’m not 100% sure it’s feasible π
airlied: MostAwesomeDude: just make fog work for the most common cases we get π
MostAwesomeDude: airlied: Already works.
MostAwesomeDude: The problem is, each time I unbreak fog coords, non-coord fog breaks. :c
airlied: MostAwesomeDude: we get that 0x8 can’t handle a lot
airlied: which seems more commo
MostAwesomeDude: Nah, it won’t error out the other way, but you’ll just notice that fog isn’t working.
MrCooper: MostAwesomeDude: fog basically works here with the patch I posted… still complains about some other stuff though
MostAwesomeDude: Hm. I can fix the 0x8 symptom, but that doesn’t actually get the fog coords routed right.
MostAwesomeDude: Which games show it always? What are guaranteed test cases?
MrCooper: isn’t the FOGC bit simply set when the fog coordinates aren’t really used?
MrCooper: MostAwesomeDude: teapot e.g.
MostAwesomeDude: Oh? Okay.
MostAwesomeDude: FRAG_ATTRIB_FOGC means that the fragprog wants fogc.
MostAwesomeDude: 0x8 means that fragprog doesn’t know how to process fogc.
MostAwesomeDude: Hmm, lemme try something
airlied: peterz: line 2198 of radeno_output.c change TRUE to FALSE
peterz: keep the other changes?
Kano: hi, why is gitweb.freedesktop.org down?
Kano: hmm at least it is _very_ slow
airlied: peterz: just on top of master.
peterz: airlied: ack, will do, let me finish my email before I cycle it π
airlied: hmm maybe coherent won’t do anything…
airlied: actually it should.
agd5f: peterz: atombios_crtc.c::atombios_crtc_set_pll(), remove the current pll_flags stuff and try pll_flags = RADEON_PLL_PREFER_HIGH_REF_DIV or pll_flags = RADEON_PLL_PREFER_HIGH_FB_DIV
airlied: agd5f: the old log seems to light up one head with the same pll.
airlied: agd5f: on 18129.. the only diffs are really the encoders..
peterz: agd5f: now, cycling with airlied’s change, does your go on top, or separate?
agd5f: peterz: separate
peterz: airlied: same as ever, two powered on blank screens
peterz: agd5f: ok, on it
agd5f: peterz: you might try this patch as well: http://www.botchco.com/alex/xorg/bug17094-2.diff
peterz: agd5f: so I nop that branch, or do I always make it do the else case?
airlied: agd5f: its isn’t DCE3 I realised π
airlied: its RV630…
agd5f: ah
agd5f: peterz: ignore that last patch then
peterz: ok, should I still do that pll_flags mod?
agd5f: peterz: yeah
agd5f: jou can just remove the whole pll_flags if/else block
peterz: ok
peterz: funny, I only see 1 monitor go down and get back up when I cycle X using this patch
peterz: still two blank screens though
agd5f: peterz: can you try a custom modeline?
agd5f: Modeline “1920x1200_55.00_rb” 140.75 1920 1968 2000 2080 1200 1203 1209 1232 +HSync -Vsync
peterz: modeline in both Monitor sections and the screen section selecting that Mode, right?
peterz: still nothing, this is the driver with the pll_flags block taken out
agd5f: peterz: take out the pll_flags and replace them with pll_flags = RADEON_PLL_PREFER_HIGH_REF_DIV or pll_flags = RADEON_PLL_PREFER_HIGH_FB_DIV
peterz: so, where that |= if/else block was, I do the straight assignment to either of those
peterz: and try both
peterz: ?
agd5f: yes
peterz: keep the modeline?
agd5f: the modeline is a separate test
peterz: ok, let me take that out
peterz: neither direct assignment did anything
agd5f: ok
agd5f: revert that change and try the modeline
agd5f: peterz: does it work ok with one monitor?
peterz: so straight master and the modeline, comingup
peterz: agd5f: like disconnect one screen, or just power one down?
agd5f: yeah disconnect one screen
peterz: does it matter which one?
agd5f: shouldn’t
peterz: ok, straight master, one screen
peterz: shows up some dumb-ass ubuntu error about a type1 module not existing for some reason
peterz: no kdm
peterz: but I get graphics
agd5f: so X is up?
agd5f: now connect the second screen and see if xrandr will light it up
peterz: it dumped me to console
peterz: when I do startx as root
peterz: I get a sigsegv
peterz: agd5f: got to run – ok if we continue this in a few hours (or later, not sure about your timezone)
peterz: ?
agd5f: no problem
peterz: thanks!
airlied: agd5f: think its randr?
agd5f: don’t know
agd5f: so weird
agd5f: I blame the dell monitor
airlied: its wierd one turns on at all
airlied: unless programming the second one screws the first one
agd5f: i’d suggest peterz try and get one working and then we can work from there
airlied: he has one working with the older commit π
airlied: 23c17c0 works on one screen.
agd5f: well I mean one connected
airlied: that waasn’t that log ago..
airlied: tries a bridgman summoning π
MostAwesomeDude: airlied: It’s something like 4AM there. He’s probably sleepin’.
MostAwesomeDude: Hm, I should be sleepin’, too.
airlied: nha: hey.. I’ve started hacking on aperture sizing for bufmgr
nha: sounds good
airlied: nha: http://people.freedesktop.org/~airlied/r300-bufmgr-aperture.patch
airlied: contains my hacks + lots of debug so far.
nha: so what is the state of bufmgr with KMS+GEM?
airlied: I’m still using the emulation of the old mm.
nha: note I’m in the middle of moving, so don’t expect much from me for another week or two
airlied: I started moving the command submission for bufmgr towards using inline relocs like glisses ideas.
airlied: but I’ve gotten sidetracked into fixing the aperture space so compiz work.
nha: just from a quick glance at the patch: I got sidetracked from working on that, but the way aperture size accounting works must be able to live with the fact that bufmgr needs to be per-screen instead of per-GL-context
airlied: nha: good point..
airlied: I get lost on the context vs screen thing, Intel changed its mind a couple of times π
nha: afaics the way DRI works forces us to have bufmgr per-screen
nha: well, not just DRI, but think of shared textures between contexts as well
airlied: can we share textures between direct/indirect contexts?
airlied: I suppose with two contexts in one bufmgr instance.
airlied: its an issue if they are per-context.
airlied: so I have to be able to deal with two people building cmdbufs with the same textures.
nha: unfortunately, yes
nha: I don’t think sharing between direct and indirect is possible, but don’t take my word for it
airlied: hmm that’ll make it nastier, but Ithink I see what Intel driver was up to.
airlied: I’ll get it working like this now for compiz, and look at the proper answer then.
airlied: I’ve gone from 4 xterms to 15 today.
airlied: unsummons bridgman and goes to zzz.
spstarr_work: agd5f: if you work on the DDX wrt the r6xxx code, if I VT switch a HD 3650 i get a negative pallete when i switch back, but you can still use X.
cxo: negatives
spstarr_work: cxo: well its a nifty effect
spstarr_work: but maybe for composite mode only π
bridgman: responds to airlied’s summons and subsequent unsummons; sorry, off sick and keeping normal hours, won’t happen again
bridgman: MostAwesomeDude should either be sleeping or in class or both, outa here
bridgman: or sleeping *in* class, of course π
spstarr_work: poor bridgeman
dmb: http://www.woot.com/ is that a good deal for the x1950?
rx__: ooo perty
dmb: its going to end soon
rx__: has no pcie system
rx__: this was on woot before
dmb: oh
bobbens: i got an x550 silent edition for 30 euros like 8 months ago
bobbens: so it doesn’t look “cheap”
dmb: :/
dmb: i don’t know anything about prices
dmb: i don’t have a computer to use it in yet either
rx__: there’s a new midrange card for $50ish
rx__: forget the model number
rx__: something in r7xx
dmb: i wonder how hard it is to build your own video card from ati parts
bobbens: r7xx means no 3d though
bobbens: for now
bobbens: i’m quite happy with r3xx, but sometime i’ll jump to r5xx
dmb: i’m kind of confused, it says visiontech, but isn’t it ati that put the card together?
bobbens: ati gives the chipset, other makers usually put it together
rx__: visiontek is an AIB
rx__: much like nvidia has PNY,XFX,EVGA
dmb: bobbens, is it possible for an individual to put it together?
dmb: and buy it from ati?
bobbens: doubtful
bobbens: ati would probably sell like minimum 50k units
yangman: these boards aren’t exactly hobby electronics kits π
bobbens: if you want a DIY graphic card, there was some open source board that was basically an fpga
bobbens: it had 3d accel i believe
rx__: … open source ~$200
dmb: lots of $$
rx__: you could get more with an ati card
rx__: http://www.traversaltech.com/store.phtml
rx__: ok i lied
rx__: a little more than $200
yangman: just a little π
bobbens: dunno, i’d still like an fpga board someday π
adamk: lol
airlied: bridgman: maybe if you are on normal hours you’ll get home when I’m the office π
spstarr_work: -ENOUSER π
spstarr_work: morning airlied π
spstarr_work: wait
spstarr_work: you’re not in .au anymore…
spstarr_work: or are you
spstarr_work: you’d have to be in .au since you’re starting the day now and im ending it soon
airlied: spstarr_work: he’s never here.. I just leave messages for him to read n the logs π
spstarr_work: heh
airlied: its like the bat signal.
spstarr_work: seems to work
bryce: hey does anyone know if there’s an easy way to get a text version of a patch from cgit.freedesktop.org? I always end up having to pull down a git tree to get them, but it’d be handy to get them straight from the web interface.
chithead: bryce: you may be able to get it from gitweb more easily, but it seems to be not so well maintained
cxo: cant you just click on the commit tag
cxo: it seems odd to me that you can use the patch without the tree
bryce: cxo, basically what I want is a link I can wget
cxo: oh, that might not be so obvious, and less so in general as we go into web2.0
chithead: cxo: http://gitweb.freedesktop.org/?p=xorg/driver/xf86-video-ati.git;a=commitdiff_plain;h=[commit-id]
cxo: 403
cxo: and shouldnt whatever that is, be for bryce ?
cxo: of i need to sub [commit-id]?
bryce: yeah I know gitweb has the feature to get the text version of the bug, was hoping cgit had similar
chithead: cxo: yes, it stopped working a few minutes ago
chithead: cxo: just the commit id without the brackets
cxo: k i didnt do that
bryce: when people request I add patches to ubuntu, they typically pass them in the form of a cgit URL, so having to shift to git or gitweb to get the actual patch to include is extra steps. But okay, at least i know it’s not possible
MostAwesomeDude: :3
MostAwesomeDude: I has to go to class, so I’ll log out. But, before I go…
MostAwesomeDude: http://people.freedesktop.org/~csimpson/fog-coord/
MostAwesomeDude: Please apply both, and then try “R300
MostAwesomeDude: Ack.
MostAwesomeDude: “R300_NO_TCL=1 /path/to/prog/with/fog/coords”
MostAwesomeDude: It’ll be a bit slow, but it *should* work. (It’ll warn once in the RS setup unit, but that’s expected and completely safe.
MostAwesomeDude: Off to class! Whoooosh!
spstarr_work: you’ve conquered the fog?
spstarr_work: π
zhasha: it would appear so. does anyone have a simple gl fog program?
UnNamed: hi, i am trying to get tv out to work on a laptop, and tried what seems to be common (add 800×600 mode, set tv mode to match local, and enable it, even tried forcing the crtc) but no go… any suggestion? driver is 6.9.0
airlied: UnNamed: what chipset?
UnNamed: r280 or r250
UnNamed: laptop maker sold it as mobility 9200 but iirc logs change now and then and say 9000 or 9200 (pci db updates, i guess)
kdekorte: zhasha, I believe the tunnel or tunnel2 programs in mesa-demos use fog
UnNamed: checked, r250 mobility firegl 9000
spstarr_work: MostAwesomeDude: class must have been boring π
UnNamed: airlied: “it should work”?
airlied: UnNamed: ah they should work alright..
MostAwesomeDude: spstarr_desk: Class just started. I was looking over why the 0x8 error happens, and I just realized that the posted patches should be sufficient for SW TCL.
UnNamed: airlied: the hz for the mode are a bit rare (60, pal is 50), so is the resolution (all tv modes i know are smaller than 800)
airlied: UnNamed: the 800×600 is just a mode for thr scaler, on the backend it uses a tv mode.
zhasha: Do anyone know whether the catalyst driver will render fog coords correctly?
MostAwesomeDude: …and also, apparently, fog coords appear to just kinda work on HW TCL too?
MostAwesomeDude: zhasha: Yeah, it does.
MostAwesomeDude: And I think I just got it to work for Mesa, too.
zhasha: MostAwesomeDude, I’m gonna try your patches on my M54
MostAwesomeDude: zhasha: Go for it.
MostAwesomeDude: …I think I need to route fog coords for the VPS, but right now, it seems to work.
zhasha: If I can get through to freedesktop.org
UnNamed: airlied: anything i could look for? or just “it does not work in this laptop”
airlied: UnNamed: try enabling detection. its an xranddr property.
zhasha: okay the tunnel demos do use fog
cxo: Radeon, Rave on!
zhasha: but I still have a problem MostAwesomeDude. I can’t get to your patches π
MostAwesomeDude: zhasha: http://people.freedesktop.org/~csimpson/fog-coord
MostAwesomeDude: Apply both of those.
zhasha: yeah, I can’t get a response from it :/
MostAwesomeDude: I’ll pastebin.
zhasha: I’ll put them up on my server
MostAwesomeDude: Patch 1: http://pastebin.ca/1234148
MostAwesomeDude: Patch 2: http://pastebin.ca/1234149
zhasha: these are mesa patches though. no patches to xf86-video-radeon?
spstarr_work: MostAwesomeDude: you can’t resist fighting the Fog
MostAwesomeDude: zhasha: No patches needed for DDX, only Mesa.
MostAwesomeDude: spstarr_desk: No, I can’t.
MostAwesomeDude: Actually, I think the recent changes to Mesa that made 0x8 start showing up more often, are the same reason these patches are so light.
zhasha: MostAwesomeDude, will mesa 7.2 do? or do I need a git checkout
MostAwesomeDude: zhasha: They’re git patches, so you’ll need a git tree.
UnNamed: airlied: nothing, also tried the forcetvout option from man page, all i got new is two 800 modes by default
UnNamed: airlied: is this uncompatible with radeonfb module? (random idea)
airlied: most likely..
UnNamed: airlied: ok, next day i will try to boot with plain console
otaylor: airlied: where should I look for:
otaylor: [driAllocateTexture:635] unable to allocate texture
otaylor: Ouch! vram_validate failed
otaylor: metacity: r300_mem.c:828: bufmgr_classic_post_submit: Assertion `!batch_bo->pending_count’ failed.
otaylor: Aborted
airlied: otaylor: I’m fxing that at the moment..
airlied: I have compiz able to open a gnome-terminal + 10 xtersm as opposed to 5 xterms.
otaylor: airlied: ok :-), that’s easy then (for me, anyways)
airlied: otaylor: its just a too many buffers in VRAM.
airlied: btw the corruption hasn’t gone away..
airlied: its just hiding somewhere else since I removed the optimisation.
otaylor: Hmm, this really doesn’t seem to involve many buffers, though then, again, I don’t have much vram
airlied: otaylor: it puts too many references into one command stream.
otaylor: airlied: which optimization did you remove?
airlied: when it tries to fit them all into the available textrure memory it pukes.
airlied: otaylor: the in_vram one you made
airlied: you musta missed my backlog π
otaylor: quite possibly
otaylor: sees it in the saved logs
airlied: http://www.radeonhd.org/?page=archive_display&c=radeon&m=10&y=2008&d=2008-10-21
airlied: so removing the opt made it happen a lot less.
airlied: I thought it fixed it but nor firefox still can do it.
otaylor: well, that optimization was mostly for the temporary glyph buffers that get created, so I guess I can see where it is related… where if it’s a timing problem flushing al the heck over the place could suppress problems
otaylor: But I’d stand by the correctness of the patch, unless proven otherwise π
airlied: yeah I suspect there is someinthg needing a flush…
airlied: well the in_vram it might not have been fully valid.
otaylor: (of course, that’s easier to say now that you stiill see the corruption…)
airlied: if I get time I’ll try and find the corruptoin late.
otaylor: airlied: I actually wasn’t aware that you had ever applied that patch at all.
airlied: have mesa to fix now, and then the drm_boo_wait hang.
zhasha: MostAwesomeDude, is it JUST me or is freedesktop.org really unresponsive right now?
MostAwesomeDude: zhasha: Not just you.
zhasha: I can’t even get a Git checkout…
MostAwesomeDude: airlied: I know you’re having fun bufmgr adventures…might you have a few moments to check my patches?
airlied: MostAwesomeDude: I understand fog less than you, I’ll see later π
spstarr_work: airlied: hmm? 3D + kms for r3xx? π
airlied: spstarr_work: still fixing mesa for r*
spstarr_work: great will test
spstarr_work: airlied: I should note even though i tries composite with the rv250, i still had access to the box
spstarr_work: goes home the sun is directly in my eyes
spstarr_desk: time to overclock the quad box 1 month is now up
EruditeHermit: hey, how do you debug hard locks?
spstarr_desk: 2.4 Ghz -> 3.0Ghz
spstarr_desk: box is happy
mattst88: EruditeHermit, check Xorg.0.log after a restart?
EruditeHermit: mattst88: that doesn’t record reasons for the crash does it? It is mainly useful for debugging X startup problems
mattst88: only if you’re lucky.
mattst88: I certainly haven’t found any good ways to debug hard locks
EruditeHermit: darn
mattst88: give a bit of information and maybe one of the developers will be able to send you in the right way
spstarr_desk: is interested in today’s possible fixes coming for kms + mesa
airlied: spstarr_work: they haven’t anything to do with kms
airlied: bufmgr is broken outside kms just as badly.
spstarr_desk: the drm
spstarr_desk: but this is all due to adding in GEM right?
airlied: well its due to adding a bufmgr to r300 in preparation for GEM
airlied: the r300 mesa driver has no GEM code in it yet
spstarr_desk: ah ok
spstarr_desk: so we relay on userspace for memory management until we have GEM merged
spstarr_desk: rely
airlied: I’m emulating the old interfaces on top of GEM until we have time to write a bufmgr direct to GEM.
spstarr_desk: isn’t that adding more work to the codebase instead of just biting the bullet so to speak?
airlied: spstarr_work: changing everything at once is a guaranteed way to have nothing working for 2 years.
spstarr_desk: fair enough
spstarr_desk: switches to laptop
airlied: woot I can alt-tab with lots of xterms now.
airlied: not to remove the 50 lines of debugging for the 10 lines of fix..
zhasha: What is up with freedesktop.org?
airlied: hmm compiz looks a lot better now.
spstarr: π
airlied: spstarr: new mesa build just entering koji now.
spstarr: will install now
airlied: well let it build first π
spstarr: so 20-30mins then wait
spstarr: not sure how fast your build vms are on koji
airlied: koji watch-task 896797
airlied: π
airlied: now to fix some stupid memory sizing hack in -ati, where I made texture memory a lot smaller than I shuold have π
spstarr: i will get your new DDX after too
spstarr: looks done on i386..
spstarr: gets
spstarr: that should also improve kwin
spstarr: airlied: if i get the DDX to crash but not lock up system would a sysctl +t be useful for you on that too?
spstarr: really hates EXA composite off, its so slow
spstarr: im gonna turn that off and get a stack if it locks up.
spstarr: er the option to turn it off
airlied: if X crashes you need to see the xorg log.
airlied: sysctl+t is no use if the proecssi sn’t running.
spstarr: i can get that sure.
spstarr: but i don’t believe there was anything in the xorg log
spstarr: ok mesa updated…
airlied: spstarr: new DDX built as well
spstarr: might as well get that now..
spstarr: this is with kms on or off?
airlied: whatever you want, it should make compiz work properly.
spstarr: gotten
spstarr: !!!!!!
spstarr: airlied: im in KMS with GNOME and compiz is ON
spstarr: trying VT switch
spstarr: successful switch
spstarr: woot
spstarr: tries kde
spstarr_desk: hmm
spstarr_desk: bad
spstarr_desk: X is pegged
spstarr_desk: [ 191.997401] [drm] LVDS-8: set mode 9
spstarr_desk: [ 191.997407] [drm] bios LVDS_GEN_CNTL: 0x30ff24
spstarr_desk: [ 199.308004] [drm:radeon_mem_init_heap] *ERROR* heap already initialized?
spstarr_desk: [ 199.313057] mtrr: base(0xe2250000) is not aligned on a size(0x5a4000) boundary
spstarr_desk: oh the usual mi Eq loop in xorg log
spstarr_desk: airlied: do you destroy the memory allocated when you log out of GNOME?
spstarr_desk: when compiz is terminated
spstarr_desk: the memory for the textures etc is flushed ?
airlied: spstarr_desk: the kernel cleans up behind..
spstarr_desk: hmm
airlied: it just destroys all the objects.. thats what a memory manager is for.
spstarr_desk: so that error is coming from the memory already being allocated?
airlied: that isn’t a real error
airlied: its just stupid gart heap, need to nuke that.
airlied: where is x pegged? sysrq-t?
spstarr_desk: getting now
airlied: is probably the drm_bo_wait thing
spstarr_desk: a new one π
spstarr_desk: putting up
spstarr_desk: http://www.sh0n.net/spstarr/r300-dump.txt
spstarr_desk: stuck in some copying routine?
airlied: oh its running it must be trashing for some reason.
airlied: sounds like X is stuck moving bufferss around VRAM..
spstarr_desk: ew
spstarr_desk: will take new fixes if you have any gonna eat a snack..
spstarr_desk: yum
spstarr_desk: pasta with some fettuccine alfredo and parmesan cheese
spstarr_desk: restarts laptop
spstarr_desk: airlied: kwin composite works with VT switching and kms on
spstarr_desk: as long as I don’t log out of my X session π
spstarr_desk: we’ll see if i get any wedges…
MostAwesomeDude: Arg.
MostAwesomeDude: Okay, so I’
spstarr: hmm, airlied X is using a lot of cpu
MostAwesomeDude: I’ve pored over the RS setup. There’s exactly zero reason why back-facing colors should be rasterized.
airlied: has little clues about BFC.
spstarr: i have /me enables MigrationHeuristic smart
airlied: spstarr: go much VRAM?
spstarr: 64MB
spstarr: GARTSize is commented out
airlied: it won’t help if kms is enabled.
airlied: you’ve filled up VRAM
airlied: until I can zero-copy TFP going it’ll be easy to do
spstarr: oh so there’s no zero-copy TFP yet with kms on?
spstarr: since you added it when kms is off
airlied: nope.. kinda need DRI2 or a lot of hacks.
spstarr_desk: it locked
spstarr_desk: trying to ssh in
spstarr_desk: i can
spstarr_desk: nothing in log or dmesg.. sysctl t..
spstarr_desk: X is not pegged
spstarr_desk: maybe wait
spstarr_desk: yep
spstarr_desk: drm_bo_wait+0xc1/0x19e
spstarr_desk: π
spstarr_desk: that one will be a nice one to destroy
spstarr_desk: turns off composite for now
MostAwesomeDude: As soon as fglrx supports Xserver 1.5, I’m gonna be revenging this again, but until then, fuck this shit. Not getting anywhere.
rx__: ?
rx__: tried the ubuntu version?
spstarr_desk: airlied: even if was to bump the aperture size from system memory?
spstarr_desk: airlied: wouldn’t that help until we’ve moved to DRI2?
MostAwesomeDude: Don’t have Ubuntu, and my workstation won’t boot anything besides Debian due to a bad Foxconn mobo.
spstarr_desk: MostAwesomeDude: you can fix your bios
spstarr_desk: π
rx__: got gentoo?
airlied: spstarr_desk: you haven’t run out of aperture size
airlied: you’ve run out of VRAM
spstarr_desk: MostAwesomeDude: I thought Foxconn released updated bios
rx__: actually if you’re on debian.. i can’t imagine it would be hard to use the .deb
MostAwesomeDude: spstarr_desk: Unfortunately, no, I can’t. Not that board. Really, the fact that it boots is kinda amazing.
spstarr_desk: airlied: ugh
MostAwesomeDude: rx__: I’ll look into it. In the meantime, there’s gotta be more stuff to do.
MostAwesomeDude: Let’s see. OQ needs GEM and write-back, fog needs moar chicken bones and handwavium…
spstarr_desk: airlied: ok, then I will have to wait til we move to DRI2 but i can still test for you just to make sure we have stability
airlied: MostAwesomeDude: why does OQ need GEM?
MostAwesomeDude: airlied: glisse, marcheu, and I were talking about it. They seemed to indicate that we needed write-back in order to read the ZPASS counter, since it dumps to a memory address.
MostAwesomeDude: I was really out of it at the time, so I just went with it.
airlied: so you need kernel support maybe.. but not GEM
airlied: we have a whole page of writeback already.
MostAwesomeDude: Hm, okay. Maybe I’ll dig in.
airlied: we currently writeback scratch regs and ring ptrs, there is probaby loads of space in that page.
Kres: I have an ATI Radeon 9600 XT running the radeon driver under Ubuntu Hardy. What modifications can I make to my xorg.conf to improve performance? It’s seeming sluggish to me.
spstarr_desk: attaches X to gdb
cxo: ddddd-danger
spstarr_desk: hmm?
cxo: is there an xgdb? that you can connect and leave running while you interact with X?
cxo: like kgdb
spstarr_desk: not sure, but i have 3 PCs in my room π
spstarr_desk: i have all the debugging capabilities other than PCIE / AGP debug cards
cxo: you are nerd!
spstarr_desk: yep
spstarr_desk: only one is on always the other is off, and the laptop
spstarr_desk: once I move next month i’ll have both on
cxo: Why dont you work on something useful? Like a aphrodisiac optimised for nerds?
cxo: AMD will write the driver π
spstarr: heh
airlied: cxo: nerds don’t need aphrodisiac…
spstarr: im a KDE developer part of KDE.org
airlied: cxo: that implies you might have already met a woman.
cxo: is just being cynical, dont mind him
spstarr: br
cxo: airlied, haha
spstarr: mind you, there’s some hot women in my new condo π
cxo: Dont **** were you eat, big trouble
cxo: has had his wisdom removed and thus drained of all intellectual capacity
spstarr: you know, in a few years or less we’ll look back at where we were in graphics, with kms being just added now
spstarr: heh cxo
cxo: like when nintendo released the n64? haha
spstarr: na, i’m talking Colecovision π
cxo: everyone else was barely doing 8bit
cxo: http://www.tomshardware.com/news/RAID-5-Doomed-2009,6525.html
spstarr_desk: crash
spstarr_desk: and gdb isn’t showing it…
spstarr_desk: thus GPU wedge
spstarr_desk: #2 0x0065e6cf in drmIoctl (fd=9, request=3222299749, arg=0xbfc9382c) at xf86drm.c:186
spstarr_desk: #3 0x0065e934 in drmCommandWriteRead (fd=9, drmCommandIndex=37, data=0xbfc9382c,
spstarr_desk: size=
spstarr_desk: #4 0x0070eb52 in RADEONCSFlushIndirect (pScrn=0x9fa9b80, discard=0)
spstarr_desk: at radeon_accel.c:595
cxo: hey spartan! where do you live?
spstarr_desk: who
spstarr_desk: [ 1416.167017] [
cxo: you spartan
spstarr_desk: airlied: so it seems in 2D DDX we get a different wait
spstarr_desk: cxo: Toronto
orkid: his nick is spstarr
cxo: lives North East of the spartan
spstarr_desk: heh
cxo: its colder than a motherfuka here, guess where?
spstarr_desk: hmm, Vermont
cxo: waaaah? that’s weak sauce
cxo: Ottawa baby
spstarr_desk: oh, welcome to Ontario π
cxo: stank you
spstarr_desk: who did you get the job from?
cxo: huh?
spstarr_desk: oh it wasn’t you, someone else in here got a job but didnt say where π
cxo: oh that guy applying to ATi
spstarr_desk: nice
cxo: no WindRiver, cant remember
spstarr_desk: so many code paths
cxo: hey you are only 4hrs away from me
spstarr_desk: yup
cxo: why is the place called Vaughan?
cxo: it doesnt have anything to do with the Sarah Vaughan does it?
spstarr_desk: named after its founder
MostAwesomeDude: airlied: Not sure if you’re busy, but how would I write a bunch of packets, in a specific order, to a handful of regs? Is there a lower-level way to do that then the batchbuffer-ish?
terracon: the city above Toronto
MostAwesomeDude: Also, yeah, there’s a few DRM ranges missing.
spstarr_desk: terracon: airlied made some changes to the DDX and drm, update π
spstarr_desk: terracon: composite will now work, but its still unstable
terracon: spstarr_desk: ok. I guess I’ll head on over to koji
spstarr_desk: terracon: you need a new mesa too
terracon: ahh yes
spstarr_desk: er not drm.. dri
terracon: I think the kernel was building last time I looked
cxo: time { make -j2 ; }
MostAwesomeDude: The idea is: Clear ZPASS count, then let whatever we want be emitted. That can all be batched, and that’s BeginQuery.
spstarr_desk: although the bugs im triggering would be drm related
MostAwesomeDude: Then, for EndQuery, flush all pending commands, then write reg_dest, zpass_addr, for each pipe, then write reg_dest again. Then, use IsQueryAvailable to get the count when it’s ready.
MostAwesomeDude: But I need to be able to write su_reg_dest, zb_zpass_addr, back and forth, in that order. Dunno how to do that.
MostAwesomeDude: I saw the e32() macro, but I’m not sure if that’s right.
cxo: void ptrs and for loop
MostAwesomeDude: cxo: ?
terracon: ugh another 2 hours or so till the kernel is build
terracon: d = t
cxo: for(i=1;i^1;)void_function[i]();
MostAwesomeDude: I’d have to flush after each pair, and since I’m already going to flush, I might as well just do direct register writes.
cxo: woops, thats wrong π
cxo: for(i=1;;i^=1)void_function[i]();
cxo: thats better
cxo: thats the fastest way i can think of rapidly calling two functions interchangeably
MostAwesomeDude: cxo: But it’s not about calling functions fast, it’s about putting stuff to the card without having to buffer up commands.
cxo: if the card can receive commands faster than you can issue them, then you have to buffer
cxo: or use some crazy ring buffer of commands
cxo: so you can just keep filling the buffer with commands, without interrupting the fetch->execute from buffer operation
MostAwesomeDude: cxo: I don’t think you’re getting it.
cxo: you’re probably right
MostAwesomeDude: The buffer is fine for emitting massive amounts of state, and keeping track of what’s dirty.
MostAwesomeDude: But I need to emit to two regs: A register to select which pipe to talk to, and a register to set a per-pipe memory address.
MostAwesomeDude: And so the big buffer’s no good.
MostAwesomeDude: The way that vertices are emitted, that’s good.
cxo: why cant you put that switch operation in your buffer of commands?
MostAwesomeDude: Because the buffer only stores one value per register.
MostAwesomeDude: It’s not a true batchbuffer.
MostAwesomeDude: I think. airlied knows this better than I do, and I have a massive headache to boot.
cxo: get an ice pack, decrease core voltage, and under clock
cxo: and call me in the morning
MostAwesomeDude: airlied: Okay, finished writing r300BeginQuery. Definitely at least two of three registers are rejected by DRM.
MostAwesomeDude: I’ll do more when I get home.
airlied: MostAwesomeDude: hey..
airlied: so you probably just need to submit a batchbuffer with the being query in it
airlied: begin query.
airlied: and also the writebacks at the end, then collect it.
airlied: I’m not 100% sure how to make it work for different applications at once.
soopurman: gitweb.freedesktop.org is down…
All trademarks used are properties of their respective owners. All rights reserved.