lists.openwall.net | lists / announce owl-users owl-dev john-users john-dev passwdqc-users yescrypt popa3d-users / oss-security kernel-hardening musl sabotage tlsify passwords / crypt-dev xvendor / Bugtraq Full-Disclosure linux-kernel linux-netdev linux-ext4 linux-hardening linux-cve-announce PHC | |
Open Source and information security mailing list archives
| ||
|
Date: Mon, 16 Jan 2012 11:09:33 +0000 From: Ian Campbell <Ian.Campbell@...rix.com> To: Paul Durrant <Paul.Durrant@...rix.com> CC: "Wei Liu (Intern)" <wei.liu2@...rix.com>, "netdev@...r.kernel.org" <netdev@...r.kernel.org>, "xen-devel@...ts.xensource.com" <xen-devel@...ts.xensource.com>, David Vrabel <david.vrabel@...rix.com>, "konrad.wilk@...cle.com" <konrad.wilk@...cle.com> Subject: RE: [Xen-devel] [RFC PATCH 3/6] netback: switch to NAPI + kthread model On Mon, 2012-01-16 at 10:56 +0000, Paul Durrant wrote: > > -----Original Message----- > > From: xen-devel-bounces@...ts.xensource.com [mailto:xen-devel- > > bounces@...ts.xensource.com] On Behalf Of Ian Campbell > > Sent: 16 January 2012 10:45 > > To: Wei Liu (Intern) > > Cc: netdev@...r.kernel.org; xen-devel@...ts.xensource.com; David Vrabel; > > konrad.wilk@...cle.com > > Subject: Re: [Xen-devel] [RFC PATCH 3/6] netback: switch to NAPI + kthread > > model > > > > On Mon, 2012-01-16 at 09:33 +0000, Wei Liu (Intern) wrote: > > > On Fri, 2012-01-13 at 18:21 +0000, David Vrabel wrote: > > > > On 13/01/12 16:59, Wei Liu wrote: > > > > > This patch implements 1:1 model netback. We utilizes NAPI and > > > > > kthread to do the weight-lifting job: > > > > > > > > > > - NAPI is used for guest side TX (host side RX) > > > > > - kthread is used for guest side RX (host side TX) > > > > > > > > > > This model provides better scheduling fairness among vifs. It also > > > > > lays the foundation for future work. > > > > > > > > > > The major defect for the current implementation is that in the > > > > > NAPI poll handler we don't actually disable interrupt. Xen stuff > > > > > is different from real hardware, it requires some other tuning of > > > > > ring macros. > > > > > > > > RING_FINAL_CHECK_FOR_REQUESTS() looks it does the correct thing to > > me. > > > > > > > > David > > > > > > I need to stop the other end from generating events, so > > > RING_FINAL_CHECK_FOR_REQUESTS is not the right answer I think. > > > > What you need is a variant which sets req_event some large distance into > > the future instead of to just req_cons + 1. Or possibly it should be set to just > > in the past (e.g. req_cons - 1). Call it something like > > RING_POLL_FOR_REQUESTS(). > > > > Can you just simply avoid calling RING_FINAL_CHECK_FOR_REQUESTS() > unless you actually want to re-enable 'interrupts'? All it does is > manipulate the event pointer and tell you whether there are still > unconsumed requests. Perhaps but I think you'd want to keep moving the event pointer to handle wrap around, i.e. by keeping it always either far enough away or right behind. (I think "req_cons - 1" is probably the correct option BTW). Ian. -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majordomo@...r.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists