{"id":192,"url":"http://patchwork.ozlabs.org/api/1.0/patches/192/?format=json","project":{"id":2,"url":"http://patchwork.ozlabs.org/api/1.0/projects/2/?format=json","name":"Linux PPC development","link_name":"linuxppc-dev","list_id":"linuxppc-dev.lists.ozlabs.org","list_email":"linuxppc-dev@lists.ozlabs.org","web_url":"https://github.com/linuxppc/wiki/wiki","scm_url":"https://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux.git","webscm_url":"https://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux.git/"},"msgid":"<20080906050906.111265558@goodmis.org>","date":"2008-09-06T05:06:04","name":"ftrace: fix unlocking of hash","commit_ref":"644f991d4b920ab1f5043509651479420b293490","pull_url":null,"state":"accepted","archived":true,"hash":"9f26d20406c69bbdb840bca87dd3bef4b3822976","submitter":{"id":112,"url":"http://patchwork.ozlabs.org/api/1.0/people/112/?format=json","name":"Steven Rostedt","email":"rostedt@goodmis.org"},"delegate":null,"mbox":"http://patchwork.ozlabs.org/project/linuxppc-dev/patch/20080906050906.111265558@goodmis.org/mbox/","series":[],"check":"pending","checks":"http://patchwork.ozlabs.org/api/patches/192/checks/","tags":{},"headers":{"Return-Path":"<linuxppc-dev-bounces+patchwork=ozlabs.org@ozlabs.org>","X-Original-To":["patchwork@ozlabs.org","linuxppc-dev@ozlabs.org"],"Delivered-To":["patchwork@ozlabs.org","linuxppc-dev@ozlabs.org"],"Received":["from ozlabs.org (localhost [127.0.0.1])\n\tby ozlabs.org (Postfix) with ESMTP id 2F643DE425\n\tfor <patchwork@ozlabs.org>; Sat,  6 Sep 2008 15:09:56 +1000 (EST)","from hrndva-omtalb.mail.rr.com (hrndva-omtalb.mail.rr.com\n\t[71.74.56.122]) by ozlabs.org (Postfix) with ESMTP id 6E59ADDDE1\n\tfor <linuxppc-dev@ozlabs.org>; Sat,  6 Sep 2008 15:09:08 +1000 (EST)","from gandalf.stny.rr.com ([74.74.65.243])\n\tby hrndva-omta05.mail.rr.com with ESMTP id\n\t<20080906050906.LYYP4606.hrndva-omta05.mail.rr.com@gandalf.stny.rr.com>;\n\tSat, 6 Sep 2008 05:09:06 +0000","from rostedt by gandalf.stny.rr.com with local (Exim 4.69)\n\t(envelope-from <rostedt@goodmis.org>)\n\tid 1Kbq2k-0001iU-7T; Sat, 06 Sep 2008 01:09:06 -0400"],"Message-Id":"<20080906050906.111265558@goodmis.org>","References":"<20080906050602.409299112@goodmis.org>","User-Agent":"quilt/0.46-1","Date":"Sat, 06 Sep 2008 01:06:04 -0400","From":"Steven Rostedt <rostedt@goodmis.org>","To":"linux-kernel@vger.kernel.org","Subject":"[PATCH 2/2] ftrace: fix unlocking of hash","Content-Disposition":"inline; filename=ftrace-ppc-dynamic-fix.patch","Cc":"Andrew Morton <akpm@linux-foundation.org>,\n\tPeter Zijlstra <peterz@infradead.org>,\n\tDavid Miller <davem@davemloft.net>, linuxppc-dev@ozlabs.org,\n\tSteven Rostedt <srostedt@redhat.com>, Ingo Molnar <mingo@elte.hu>,\n\tThomas Gleixner <tglx@linutronix.de>","X-BeenThere":"linuxppc-dev@ozlabs.org","X-Mailman-Version":"2.1.11","Precedence":"list","List-Id":"Linux on PowerPC Developers Mail List <linuxppc-dev.ozlabs.org>","List-Unsubscribe":"<https://ozlabs.org/mailman/options/linuxppc-dev>,\n\t<mailto:linuxppc-dev-request@ozlabs.org?subject=unsubscribe>","List-Archive":"<http://ozlabs.org/pipermail/linuxppc-dev>","List-Post":"<mailto:linuxppc-dev@ozlabs.org>","List-Help":"<mailto:linuxppc-dev-request@ozlabs.org?subject=help>","List-Subscribe":"<https://ozlabs.org/mailman/listinfo/linuxppc-dev>,\n\t<mailto:linuxppc-dev-request@ozlabs.org?subject=subscribe>","MIME-Version":"1.0","Content-Type":"text/plain; charset=\"us-ascii\"","Content-Transfer-Encoding":"7bit","Sender":"linuxppc-dev-bounces+patchwork=ozlabs.org@ozlabs.org","Errors-To":"linuxppc-dev-bounces+patchwork=ozlabs.org@ozlabs.org"},"content":"This must be brown paper bag week for Steven Rostedt!\n\nWhile working on ftrace for PPC, I discovered that the hash locking done\nwhen CONFIG_FTRACE_MCOUNT_RECORD is not set, is totally incorrect.\n\nWith a cut and paste error, I had the hash lock macro to lock for both\nhash_lock _and_ hash_unlock!\n\nThis bug did not affect x86 since this bug was introduced when\nCONFIG_FTRACE_MCOUNT_RECORD was added to x86.\n\nSigned-off-by: Steven Rostedt <srostedt@redhat.com>","diff":"Index: linux-tip.git/kernel/trace/ftrace.c\n===================================================================\n--- linux-tip.git.orig/kernel/trace/ftrace.c\t2008-09-05 21:53:46.000000000 -0700\n+++ linux-tip.git/kernel/trace/ftrace.c\t2008-09-05 21:57:57.000000000 -0700\n@@ -170,7 +170,8 @@ static int __unregister_ftrace_function(\n  */\n static DEFINE_SPINLOCK(ftrace_hash_lock);\n #define ftrace_hash_lock(flags)\t  spin_lock_irqsave(&ftrace_hash_lock, flags)\n-#define ftrace_hash_unlock(flags) spin_lock_irqsave(&ftrace_hash_lock, flags)\n+#define ftrace_hash_unlock(flags) \\\n+\t\t\tspin_unlock_irqrestore(&ftrace_hash_lock, flags)\n #else\n /* This is protected via the ftrace_lock with MCOUNT_RECORD. */\n #define ftrace_hash_lock(flags)   do { (void)(flags); } while (0)\n","prefixes":[]}