Konrad Rzeszutek Wilk
2011-May-16 17:05 UTC
[Xen-devel] shared rings. rsp_cons, rsp_events, req_prod, req_events docs, charts, timelines?
The current ring implementation uses these values and then macros such as RING_HAS_UNCONSUMED_REQUESTS, FINAL_RING_CHECK, etc to determine whether to continue or how to control the flow. Looking way back in the history at c/s 8153 it used to have a ''server_is_sleeping'' value to determine whether to kick the back (now called ''req_event''), and the ''rsp_event'' (unchanged) to kick the frontend. Anyhow, are there any diagrams or design docs documenting how these simple four shared values help to control the pipeline and interrupt generation? Or how they evolved over time to become what they are right now? _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
Daniel Stodden
2011-May-16 20:03 UTC
[Xen-devel] Re: shared rings. rsp_cons, rsp_events, req_prod, req_events docs, charts, timelines?
On Mon, 2011-05-16 at 13:05 -0400, Konrad Rzeszutek Wilk wrote:> The current ring implementation uses these values and then macros such > as RING_HAS_UNCONSUMED_REQUESTS, FINAL_RING_CHECK, etc to determine whether > to continue or how to control the flow. Looking way back in the history > at c/s 8153 it used to have a ''server_is_sleeping'' value to determine whether > to kick the back (now called ''req_event''), and the ''rsp_event'' (unchanged) > to kick the frontend. > > Anyhow, are there any diagrams or design docs documenting how these simple four > shared values help to control the pipeline and interrupt generation? Or how > they evolved over time to become what they are right now?Iirc, I''ve known these headers since late xen 2.x versions and never saw it done differently (i.e. req/rsp_event, and symmetrically). Never saw dedicated documentation either, but found the header comments and sources sufficient. Do you just want documentation to point at, or is there something not clear about them? Daniel _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
Konrad Rzeszutek Wilk
2011-May-16 21:16 UTC
[Xen-devel] Re: shared rings. rsp_cons, rsp_events, req_prod, req_events docs, charts, timelines?
On Mon, May 16, 2011 at 01:03:07PM -0700, Daniel Stodden wrote:> On Mon, 2011-05-16 at 13:05 -0400, Konrad Rzeszutek Wilk wrote: > > The current ring implementation uses these values and then macros such > > as RING_HAS_UNCONSUMED_REQUESTS, FINAL_RING_CHECK, etc to determine whether > > to continue or how to control the flow. Looking way back in the history > > at c/s 8153 it used to have a ''server_is_sleeping'' value to determine whether > > to kick the back (now called ''req_event''), and the ''rsp_event'' (unchanged) > > to kick the frontend. > > > > Anyhow, are there any diagrams or design docs documenting how these simple four > > shared values help to control the pipeline and interrupt generation? Or how > > they evolved over time to become what they are right now? > > Iirc, I''ve known these headers since late xen 2.x versions and never saw > it done differently (i.e. req/rsp_event, and symmetrically). > > Never saw dedicated documentation either, but found the header comments > and sources sufficient. > > Do you just want documentation to point at, or is there something not > clear about them?I was hoping to be able to double-check what I groked from the code. Figured an example of the flow between frontend and backend over some time with different scenarios would exist somwhere. _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel