[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [RFC PATCH 2/3] Xen: rework NR_EVENT_CHANNELS related stuffs.
On 31/12/12 18:38, Wei Liu wrote: > Again, the changeset description is too brief. > Signed-off-by: Wei Liu <wei.liu2@xxxxxxxxxx> > --- > drivers/xen/events.c | 44 > +++++++++++++++++++++++++++++-------------- > drivers/xen/evtchn.c | 16 +++++++++------- > include/xen/events.h | 3 +++ > include/xen/interface/xen.h | 17 ++++++++++++++++- > 4 files changed, 58 insertions(+), 22 deletions(-) > > diff --git a/drivers/xen/events.c b/drivers/xen/events.c > index 835101f..f60ba76 100644 > --- a/drivers/xen/events.c > +++ b/drivers/xen/events.c > @@ -52,7 +52,8 @@ > #include <xen/interface/hvm/params.h> > > /* N-level event channel, starting from 2 */ > -static unsigned int evtchn_level = 2; > +unsigned int evtchn_level = 2; > +EXPORT_SYMBOL_GPL(evtchn_level); I presume this is exported so the NR_EVENT_CHANNELS() macro works. I think it would be better to provide and export an evtchn_nr_channels() function instead. Perhaps make it part of the event channel ops structure? > --- a/include/xen/interface/xen.h > +++ b/include/xen/interface/xen.h > @@ -283,9 +283,24 @@ DEFINE_GUEST_HANDLE_STRUCT(multicall_entry); > > /* > * Event channel endpoints per domain: > + * 2-level: > * 1024 if a long is 32 bits; 4096 if a long is 64 bits. > + * 3-level: > + * 32k if a long is 32 bits; 256k if a long is 64 bits. > */ > -#define NR_EVENT_CHANNELS (sizeof(unsigned long) * sizeof(unsigned long) * > 64) > +#define NR_EVENT_CHANNELS_L2 (sizeof(unsigned long) * sizeof(unsigned long) > * 64) > +#define NR_EVENT_CHANNELS_L3 (NR_EVENT_CHANNELS_L2 * sizeof(unsigned long)) > +#define NR_EVENT_CHANNELS(x) ({ unsigned int __v = 0; \ > + switch (x) { \ > + case 2: \ > + __v = NR_EVENT_CHANNELS_L2; break; \ > + case 3: \ > + __v = NR_EVENT_CHANNELS_L3; break; \ > + default: \ > + BUG(); \ > + } \ > + __v; }) > + > > struct vcpu_time_info { > /* This should be split into a separate patch that resync's the Linux copy of the header with the Xen one. David _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |