Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753539AbbKQNc1 (ORCPT ); Tue, 17 Nov 2015 08:32:27 -0500 Received: from smtprelay.synopsys.com ([198.182.60.111]:39006 "EHLO smtprelay.synopsys.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752811AbbKQNcX (ORCPT ); Tue, 17 Nov 2015 08:32:23 -0500 Subject: Re: [PATCH v2 18/19] ARC: [plat-eznps] replace sync with proper cpu barrier To: Peter Zijlstra References: <1446297327-16298-1-git-send-email-noamc@ezchip.com> <1446893557-29748-19-git-send-email-noamc@ezchip.com> <564B0BB1.8080709@synopsys.com> <20151117112343.GW3816@twins.programming.kicks-ass.net> <564B1182.7050107@synopsys.com> <20151117122208.GX3816@twins.programming.kicks-ass.net> <564B1F74.6090709@synopsys.com> <20151117124421.GY17308@twins.programming.kicks-ass.net> CC: , , , , Noam Camus , Newsgroups: gmane.linux.kernel.arc,gmane.linux.kernel From: Vineet Gupta Message-ID: <564B2C50.3080401@synopsys.com> Date: Tue, 17 Nov 2015 19:02:00 +0530 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.3.0 MIME-Version: 1.0 In-Reply-To: <20151117124421.GY17308@twins.programming.kicks-ass.net> Content-Type: text/plain; charset="windows-1252" Content-Transfer-Encoding: 7bit X-Originating-IP: [10.12.197.182] Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1785 Lines: 38 On Tuesday 17 November 2015 06:14 PM, Peter Zijlstra wrote: > On Tue, Nov 17, 2015 at 06:07:08PM +0530, Vineet Gupta wrote: >> On Tuesday 17 November 2015 05:52 PM, Peter Zijlstra wrote: >>>>> BTW since we are on the topic we have this loop in stack unwinder which can >>>>> potentially cause RCU stalls, actual lockups etc. I was planning to add the >>>>> following - does that seem fine to you. >>> Worries me more than anything. How could you get stuck in there? >> >> No we not getting stuck in there - but this has potential to - if say unwind info >> were corrupt (not seen that ever though). > > Better put in a failsafe for that anyway, just out of sheer paranoia :-) Indeed, loop for say 32 times at max or some such. > You should never report more than PERF_MAX_STACK_DEPTH thingies anyway, > so once you've done that many loops, you're good to bail, right? Yeah, although I need to ensure if arch code needs to check that. Plus the unwinder is also used for things like ps wchan, /proc//stack, crash dump etc. >> The old code won't even respond to say a Ctrl+C if it were stuck ! >> Plus the reschedule there will keeps sched happy when say unraveling deep stack >> frames with perf ? > > You're likely to call this code from interrupt/NMI context, there is no > ^C or scheduling going to help you there. For perf case, but there are other uses of unwinder as described above. So in light of above, do u think that the cond_resched() + signal_pending check is not needed and the bail if over N iters will be fine ! -- 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/