[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel][RFC] Dynamic modes support for PV xenfb (included)
Pat Campbell <plc@xxxxxxxxxx> writes: > Markus Armbruster wrote: >> The current PVFB code shares the framebuffer as follows. The >> framebuffer is described by a two level directory. The first level is >> the page directory pd[] in the shared page. pd[] contains the mfns of >> the second level directory pages. Those form an array containing the >> mfns of the framebuffer. >> >> Your patch replaces both levels of the page directory by grants, but >> not the framebuffer itself. What exactly does that buy us? >> > Patch does not replace the pd array. That is still being used to > maintain backwards compatibility. The required framebuffer memory is > allocated in xenfb_probe() and is never reallocated or changed. Only > the mapping to the framebuffer is changed. > > Maybe some pseudo code this will make it clearer. > > Frontend (FE) > Determine framebuffer size > Allocate framebuffer > Fill in array of mfns > Set shared page info to default mem length, width and height > Fill in grant refs using array of mfns > Back end Connected? > Send map extended event (uses grant ref) > Map extended done event? > Free grant refs > > Backend (BE) > Calculate number of mfns based on mem length from shared page > Map in and point at framebuffer > Map extended event? > Map in using grant ref > Change framebuffer pointer to the new location > (still the same FE memory but now we can reach father > into it) > Send Map extended done > > At this point the Backend is still treating the framebuffer as > 800x600x32 but does has access to the extended framebuffer memory but > does not use it. When a resize event occurs the screen geometry changes > but not the framebuffers mappings. Understood. > So to answer what it buys us. It buys us access to a larger framebuffer > for higher resolutions support. I can't see how using grants for the page directory is an improvement over your previous iteration, which used pd[]. Can you explain? _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |