You found a bug, it isn't serious because the private part of the sarea
isn't really manipulated in the ddx driver after initialization if I
remember correctly.  The client side driver will make sure there are sane
values in there.
The client side fyi uses the kernel defination (on the I810 anyhow).

Add the fields to the top of the user space declaration and you should still
work correctly.

-Jeff

-----Original Message-----
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of
Jens Owen
Sent: Tuesday, April 02, 2002 11:33 PM
To: dri-devel
Cc: Jeff Hartmann
Subject: i810 sarea private offset question


I have a question regarding the i810 sarea private declarations.

Looking at the i810 driver's sarea, I see something strange.  All the
other drivers have identical definitions for both their user space
declaration (<DRIVER>SAREAPrivRec) and their kernel space declaration
(drm_<DRIVER>_sarea_t).  However, the i810 driver has 4 large fields at
the top of it's kernel declaration that are not present in the
corresponding user space declaration:

        unsigned int ContextState[I810_CTX_SETUP_SIZE];
        unsigned int BufferState[I810_DEST_SETUP_SIZE];
        unsigned int TexState[2][I810_TEX_SETUP_SIZE];
        unsigned int dirty;

I'm guessing there has to be some adjustments made to the SAREA pointers
to make the remaining fields line up, but I haven't found anything in
the code.  Has anyone (Jeff) seen an SAREA pointer adjustment that
accounts for why this works?

--                             /\
         Jens Owen            /  \/\ _
  [EMAIL PROTECTED]  /    \ \ \   Steamboat Springs, Colorado


_______________________________________________
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel

Reply via email to