Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754088AbbHCOmW (ORCPT ); Mon, 3 Aug 2015 10:42:22 -0400 Received: from casper.infradead.org ([85.118.1.10]:49027 "EHLO casper.infradead.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754071AbbHCOmO (ORCPT ); Mon, 3 Aug 2015 10:42:14 -0400 Date: Mon, 3 Aug 2015 16:42:12 +0200 From: Peter Zijlstra To: Vineet Gupta Cc: lkml , "arc-linux-dev@synopsys.com" Subject: Re: [PATCH 6/6] ARCv2: spinlock/rwlock: Reset retry delay when starting a new spin-wait cycle Message-ID: <20150803144212.GT25159@twins.programming.kicks-ass.net> References: <1438596188-10875-1-git-send-email-vgupta@synopsys.com> <1438596188-10875-7-git-send-email-vgupta@synopsys.com> <20150803114352.GL25159@twins.programming.kicks-ass.net> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.21 (2012-12-30) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1189 Lines: 23 On Mon, Aug 03, 2015 at 02:40:13PM +0000, Vineet Gupta wrote: > On Monday 03 August 2015 05:14 PM, Peter Zijlstra wrote: > > On Mon, Aug 03, 2015 at 03:33:08PM +0530, Vineet Gupta wrote: > >> > A spin lock could be available momentarily, but the SCOND to actually > >> > acquire it might still fail due to concurrent update from other core(s). > >> > To elide hardware lock, the sequence is retried after a "delay" which is > >> > increased expoenntially to get a nice backoff behaviour. > >> > > >> > However, this could cause the delay counter to get to a high value. Thus > >> > when the next spin cycle restarts, reset the counter back to starting > >> > value of 1. > > Cute.. fwiw, did you look at what Sparc64 does? > > > > Can't really comprehend what's special there - are you referring to the special > branching or to the out of line slow path code for 32 bit version. Its the only arch that I can remember seeing decay logic in. -- 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/