WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-devel

Re: [Xen-devel] [Patch 2 of 2]: PV-domain SMP performance Linux-part

To: Jan Beulich <jbeulich@xxxxxxxxxx>
Subject: Re: [Xen-devel] [Patch 2 of 2]: PV-domain SMP performance Linux-part
From: Juergen Gross <juergen.gross@xxxxxxxxxxxxxxxxxxx>
Date: Thu, 18 Dec 2008 08:18:40 +0100
Cc: "xen-devel@xxxxxxxxxxxxxxxxxxx" <xen-devel@xxxxxxxxxxxxxxxxxxx>
Delivery-date: Wed, 17 Dec 2008 23:19:18 -0800
Domainkey-signature: s=s768; d=fujitsu-siemens.com; c=nofws; q=dns; h=X-SBRSScore:X-IronPort-AV:Received:X-IronPort-AV: Received:Received:Message-ID:Date:From:Organization: User-Agent:MIME-Version:To:CC:Subject:References: In-Reply-To:X-Enigmail-Version:Content-Type: Content-Transfer-Encoding; b=x6LLlzc48xTHhz0KBXdNFpWWjy6xcAmMofswG1Kv/F9UwOYV4tn1/Lo3 CEdY/z47yVidTZ7raR01BLG01QV5xQ3KPijmNtMlb6Upz8lE+lDH43lDH TMkCxJW2tXRaMdQ;
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
In-reply-to: <49492387.76E4.0078.0@xxxxxxxxxx>
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
Organization: Fujitsu Siemens Computers
References: <4948EF0B.6090404@xxxxxxxxxxxxxxxxxxx> <49492387.76E4.0078.0@xxxxxxxxxx>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
User-agent: Mozilla-Thunderbird 2.0.0.17 (X11/20081018)
Jan Beulich wrote:
>> --- a/include/asm-x86_64/mach-xen/asm/irqflags.h     Sat Dec 13 16:00:43 
>> 2008 +0000
>> +++ b/include/asm-x86_64/mach-xen/asm/irqflags.h     Wed Dec 17 13:12:53 
>> 2008 +0100
>> @@ -33,8 +33,12 @@ do {                                                      
>>                 \
>>      vcpu_info_t *_vcpu;                                             \
>>      barrier();                                                      \
>>      _vcpu = current_vcpu_info();            \
>> -    if ((_vcpu->evtchn_upcall_mask = (x)) == 0) {                   \
>> +    if ( !(x) ) {                                                   \
> 
> This isn't correct, as it breaks 0->1 transitions (there are a few instances 
> of
> this in the kernel).

Thanks!
I will correct it.

> 
>> +            _vcpu->no_desched = 0;                                  \
>> +            _vcpu->evtchn_upcall_mask = 0;                          \
>>              barrier(); /* unmask then check (avoid races) */        \
>> +            if ( unlikely(_vcpu->desched_delay) )                   \
>> +                    (void)((HYPERVISOR_sched_op(SCHEDOP_yield, _vcpu))?:0); 
>> \
> 
> Why not just cast the function result to void? Likewise further below...

I took that from include/xen/hypercall.h, which mentioned problems with just
casting the function result.


Juergen

-- 
Juergen Gross                             Principal Developer
IP SW OS6                      Telephone: +49 (0) 89 636 47950
Fujitsu Siemens Computers         e-mail: juergen.gross@xxxxxxxxxxxxxxxxxxx
Otto-Hahn-Ring 6                Internet: www.fujitsu-siemens.com
D-81739 Muenchen         Company details: www.fujitsu-siemens.com/imprint.html

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel