[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] [PATCH 00/25 v7] SBSA UART emulation support in Xen



On Thu, Aug 10, 2017 at 01:40:07PM +0100, Julien Grall wrote:
> Hi Wei,
> 
> On 10/08/17 12:40, Wei Liu wrote:
> > On Thu, Aug 10, 2017 at 01:29:04PM +0530, Bhupinder Thakur wrote:
> > > Hi Wei,
> > > 
> > > On 9 August 2017 at 16:33, Wei Liu <wei.liu2@xxxxxxxxxx> wrote:
> > > > On Wed, Aug 09, 2017 at 04:28:14PM +0530, Bhupinder Thakur wrote:
> > > > > Hi Julien,
> > > > > 
> > > > > Thanks for the testing.
> > > > > 
> > > > > On 8 August 2017 at 21:29, Julien Grall <julien.grall@xxxxxxx> wrote:
> > > > > > Hi Bhupinder,
> > > > > > 
> > > > > > I gave another and I have a couple of comments.
> > > > > > 
> > > > > > Booting Linux with earlycon enabled take quite a while. I can see 
> > > > > > the
> > > > > > characters coming slower than on the minitel. It seems to be a bit 
> > > > > > better
> > > > > > after switching off the bootconsole. Overall Linux is taking ~20 
> > > > > > times to
> > > > > > boot with pl011 vs HVC console.
> > > > > > 
> > > > > > I do agree that pl011 is emulated and therefore you have to trap 
> > > > > > after each
> > > > > > character. But 20 times sounds far too much.
> > > > > > 
> > > > > I think this slowness could be due to ratelimiting of the pl011 events
> > > > > in xenconosle. Currently, the rate limit is
> > > > > set to 30 events per 200 msecs (see 
> > > > > RATE_LIMIT_ALLOWANCE/RATE_LIMIT_PERIOD).
> > > > > 
> > > > > I increased the rate limit to 600 events (30 * 20) per 200 msecs. With
> > > > > this change,
> > > > > I see that the the find command is running faster and smoother.
> > > > > Earlier the find output would be jerky.
> > > > 
> > > > Please consider batching the events instead of bumping the limit.
> > > 
> > > If I try to batch the events then it may delay per character
> > > processing (if no further characters are coming) since we will wait
> > > for more events to come to batch them together. By keeping the rate
> > > limit high, it is ensured that it can handle large burst of events. If
> > > there is sporadic data then the rate limit is not hit.
> > 
> > But do you really need to send an event for every character (that's my
> > reading of your patch, please correct me if I'm wrong)? Suppose you have
> > a buffer you can send one event when the buffer is processed.
> 
> I am not sure what you mean by buffer here. The interface with the guest is
> a single data register. So characters are written one by one.

Yes, that's what the guest sees, but that is not necessarily what
xenconsoled sees.

> 
> > 
> > > 
> > > I am thinking of making the rate limit configuration per console.
> > > 
> > 
> > There is the question why vuart is special with regard to other types of
> > console.
> > 
> > If something is mandated by the spec it should be specifically called
> > out to justify the decision to bump the rate limit.
> 
> I might have other ideas how to improve the speed. I will answer on
> Bhupinder's e-mail.
> 

Sure.

> Cheers,
> 
> -- 
> Julien Grall

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
https://lists.xen.org/xen-devel

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.