Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754136AbbKXOgE (ORCPT ); Tue, 24 Nov 2015 09:36:04 -0500 Received: from mx1.redhat.com ([209.132.183.28]:32980 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752723AbbKXOgB (ORCPT ); Tue, 24 Nov 2015 09:36:01 -0500 Date: Tue, 24 Nov 2015 15:35:58 +0100 From: Radim =?utf-8?Q?Krcm=C3=A1r?= To: "Wu, Feng" Cc: Paolo Bonzini , "kvm@vger.kernel.org" , "linux-kernel@vger.kernel.org" Subject: Re: [PATCH] KVM: x86: Add lowest-priority support for vt-d posted-interrupts Message-ID: <20151124143557.GA24676@potion.brq.redhat.com> References: <1447037208-75615-1-git-send-email-feng.wu@intel.com> <20151116190314.GA12245@potion.brq.redhat.com> <564AF645.5010506@redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1992 Lines: 37 2015-11-24 01:26+0000, Wu, Feng: >> From: Paolo Bonzini [mailto:pbonzini@redhat.com] >> On 16/11/2015 20:03, Radim Krčmář wrote: >> > 2015-11-09 10:46+0800, Feng Wu: >> >> Use vector-hashing to handle lowest-priority interrupts for >> >> posted-interrupts. As an example, modern Intel CPUs use this >> >> method to handle lowest-priority interrupts. >> > >> > (I don't think it's a good idea that the algorithm differs from non-PI >> > lowest priority delivery. I'd make them both vector-hashing, which >> > would be "fun" to explain to people expecting round robin ...) >> >> Yup, I would make it a module option. Thanks very much Radim for >> helping with the review. > > Thanks for your guys' review. Yes, we can introduce a module option > for it. According to Radim's comments above, we need use the > same policy for PI and non-PI lowest-priority interrupts, so here is the > question: for vector hashing, it is easy to apply it for both non-PI and PI > case, however, for Round-Robin, in non-PI case, the round robin counter > is used and updated when the interrupt is injected to guest, but for > PI case, the interrupt is injected to guest totally by hardware, software > cannot control it while interrupt delivery, we can only decide the > destination vCPU for the PI interrupt in the initial configuration > time (guest update vMSI -> QEMU -> KVM). Do you guys have any good > suggestion to do round robin for PI lowest-priority? Seems Round robin > is not a good way for PI lowest-priority interrupts. Any comments > are appreciated! It's meaningless to try dynamic algorithms with PI so if we allow both lowest priority algorithms, I'd let PI handle any lowest priority only with vector hashing. (It's an ugly compromise.) -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/