[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-changelog] [xen master] evtchn: eliminate 64k ports limitation
commit 8f7f6ab879a9ad9d2bf66b8c6b46a0653086b79f Author: Jan Beulich <jbeulich@xxxxxxxx> AuthorDate: Fri Apr 11 11:25:56 2014 +0200 Commit: Jan Beulich <jbeulich@xxxxxxxx> CommitDate: Fri Apr 11 11:25:56 2014 +0200 evtchn: eliminate 64k ports limitation The introduction of FIFO event channels claimed to support over 100k ports, but failed to widen a number of 16-bit variables/operations. Signed-off-by: Jan Beulich <jbeulich@xxxxxxxx> Reviewed-by: David Vrabel <david.vrabel@xxxxxxxxxx> Acked-by: Keir Fraser <keir@xxxxxxx> --- xen/common/event_channel.c | 4 ++-- xen/include/xen/sched.h | 10 +++++----- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/xen/common/event_channel.c b/xen/common/event_channel.c index cbd495d..6853842 100644 --- a/xen/common/event_channel.c +++ b/xen/common/event_channel.c @@ -275,12 +275,12 @@ static long evtchn_bind_interdomain(evtchn_bind_interdomain_t *bind) goto out; lchn->u.interdomain.remote_dom = rd; - lchn->u.interdomain.remote_port = (u16)rport; + lchn->u.interdomain.remote_port = rport; lchn->state = ECS_INTERDOMAIN; evtchn_port_init(ld, lchn); rchn->u.interdomain.remote_dom = ld; - rchn->u.interdomain.remote_port = (u16)lport; + rchn->u.interdomain.remote_port = lport; rchn->state = ECS_INTERDOMAIN; /* diff --git a/xen/include/xen/sched.h b/xen/include/xen/sched.h index cbbe8a4..b080c9e 100644 --- a/xen/include/xen/sched.h +++ b/xen/include/xen/sched.h @@ -90,13 +90,13 @@ struct evtchn domid_t remote_domid; } unbound; /* state == ECS_UNBOUND */ struct { - u16 remote_port; + evtchn_port_t remote_port; struct domain *remote_dom; } interdomain; /* state == ECS_INTERDOMAIN */ struct { - u16 irq; - u16 next_port; - u16 prev_port; + u32 irq; + evtchn_port_t next_port; + evtchn_port_t prev_port; } pirq; /* state == ECS_PIRQ */ u16 virq; /* state == ECS_VIRQ */ } u; @@ -209,7 +209,7 @@ struct vcpu atomic_t pause_count; /* IRQ-safe virq_lock protects against delivering VIRQ to stale evtchn. */ - u16 virq_to_evtchn[NR_VIRQS]; + evtchn_port_t virq_to_evtchn[NR_VIRQS]; spinlock_t virq_lock; /* Bitmask of CPUs on which this VCPU may run. */ -- generated by git-patchbot for /home/xen/git/xen.git#master _______________________________________________ Xen-changelog mailing list Xen-changelog@xxxxxxxxxxxxx http://lists.xensource.com/xen-changelog
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |