From mboxrd@z Thu Jan 1 00:00:00 1970 From: Keir Fraser Subject: Re: Re: [PATCH] [RFC] Fix a small window on CPU online/offline Date: Fri, 02 Apr 2010 08:27:57 +0100 Message-ID: References: Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="B_3353041682_29933951" Return-path: In-Reply-To: List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xensource.com Errors-To: xen-devel-bounces@lists.xensource.com To: "Jiang, Yunhong" Cc: "Tian, Kevin" , "xen-devel@lists.xensource.com" , Jan Beulich List-Id: xen-devel@lists.xenproject.org > This message is in MIME format. Since your mail reader does not understand this format, some or all of this message may not be legible. --B_3353041682_29933951 Content-type: text/plain; charset="US-ASCII" Content-transfer-encoding: 7bit On 02/04/2010 08:14, "Keir Fraser" wrote: > Hm, actually maybe that could work. You might not even need a flag in case > current is non-idle in cpu_disable_scheduler(). It might suffice to force > context_switch() to do full context switch synchronously when the CPU is > going offline (see appended patch). I was thinking there was a race as soon > as the cpu is cleared from cpu_online_map, but actually the problem occurs > only once the vcpu is descheduled, so if we can synchronously sync its state > before calling context_saved(), perhaps we are fine. > > This could be a very small patch after all! :-) Perhaps even as small as the attached patch? It's simple enough we could almost consider it for 4.0.0. -- Keir --B_3353041682_29933951 Content-type: application/octet-stream; name="00-offline" Content-disposition: attachment; filename="00-offline" Content-transfer-encoding: base64 ZGlmZiAtciA1Mzc0NTE0Nzc0NjkgeGVuL2FyY2gveDg2L2RvbWFpbi5jCi0tLSBhL3hlbi9h cmNoL3g4Ni9kb21haW4uYwlUaHUgQXByIDAxIDA5OjU1OjI3IDIwMTAgKzAxMDAKKysrIGIv eGVuL2FyY2gveDg2L2RvbWFpbi5jCUZyaSBBcHIgMDIgMDg6MjU6MzAgMjAxMCArMDEwMApA QCAtMTQ0Miw3ICsxNDQyLDggQEAKIAogICAgIHNldF9jdXJyZW50KG5leHQpOwogCi0gICAg aWYgKCAocGVyX2NwdShjdXJyX3ZjcHUsIGNwdSkgPT0gbmV4dCkgfHwgaXNfaWRsZV92Y3B1 KG5leHQpICkKKyAgICBpZiAoIChwZXJfY3B1KGN1cnJfdmNwdSwgY3B1KSA9PSBuZXh0KSB8 fAorICAgICAgICAgKGlzX2lkbGVfdmNwdShuZXh0KSAmJiBjcHVfb25saW5lKGNwdSkpICkK ICAgICB7CiAgICAgICAgIGxvY2FsX2lycV9lbmFibGUoKTsKICAgICB9CmRpZmYgLXIgNTM3 NDUxNDc3NDY5IHhlbi9hcmNoL3g4Ni9zbXBib290LmMKLS0tIGEveGVuL2FyY2gveDg2L3Nt cGJvb3QuYwlUaHUgQXByIDAxIDA5OjU1OjI3IDIwMTAgKzAxMDAKKysrIGIveGVuL2FyY2gv eDg2L3NtcGJvb3QuYwlGcmkgQXByIDAyIDA4OjI1OjMwIDIwMTAgKzAxMDAKQEAgLTEzMDIs NiArMTMwMiwxMyBAQAogCiAJcmVtb3ZlX3NpYmxpbmdpbmZvKGNwdSk7CiAKKwkvKgorCSAq IElmIHdlIGFyZSBydW5uaW5nIHRoZSBpZGxlIHZjcHUsIHN5bmMgbGFzdCBub24taWRsZSB2 Y3B1J3Mgc3RhdGUKKwkgKiBiZWZvcmUgY2hhbmdpbmcgY3B1X29ubGluZV9tYXAuIElmIHdl IGFyZSBydW5uaW5nIG5vbi1pZGxlIHZjcHUsCisgICAgICAgICAqIHdlIHdpbGwgc3luY2hy b25vdXNseSBzeW5jIHRoZSBzdGF0ZSBpbiBjb250ZXh0X3N3aXRjaCgpIGxhdGVyLgorCSAq LworCV9fc3luY19sYXp5X2V4ZWNzdGF0ZSgpOworCiAJLyogSXQncyBub3cgc2FmZSB0byBy ZW1vdmUgdGhpcyBwcm9jZXNzb3IgZnJvbSB0aGUgb25saW5lIG1hcCAqLwogCWNwdV9jbGVh cihjcHUsIGNwdV9vbmxpbmVfbWFwKTsKIAlmaXh1cF9pcnFzKCk7Cg== --B_3353041682_29933951 Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel --B_3353041682_29933951--