From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S932599AbbBPNJ3 (ORCPT ); Mon, 16 Feb 2015 08:09:29 -0500 Received: from casper.infradead.org ([85.118.1.10]:55410 "EHLO casper.infradead.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S932569AbbBPNJ1 (ORCPT ); Mon, 16 Feb 2015 08:09:27 -0500 Message-Id: <20150216122412.330353604@infradead.org> User-Agent: quilt/0.61-1 Date: Mon, 16 Feb 2015 13:14:41 +0100 From: Peter Zijlstra To: linux-kernel@vger.kernel.org, mingo@kernel.org, rjw@rjwysocki.net Cc: tglx@linutronix.de, peterz@infradead.org Subject: [PATCH 06/35] clockevents: Remove extra local_irq_save in clockevents_exchange_device() References: <20150216121435.203983131@infradead.org> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Disposition: inline; filename=clockevents-remove-extra-irq-disable.patch Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Thomas Gleixner Called with clockevents_lock held and interrupts disabled already. Signed-off-by: Thomas Gleixner --- kernel/time/clockevents.c | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) Index: linux/kernel/time/clockevents.c =================================================================== --- linux.orig/kernel/time/clockevents.c +++ linux/kernel/time/clockevents.c @@ -491,14 +491,12 @@ void clockevents_handle_noop(struct cloc * @old: device to release (can be NULL) * @new: device to request (can be NULL) * - * Called from the notifier chain. clockevents_lock is held already + * Called from various tick functions with clockevents_lock held and + * interrupts disabled. */ void clockevents_exchange_device(struct clock_event_device *old, struct clock_event_device *new) { - unsigned long flags; - - local_irq_save(flags); /* * Caller releases a clock event device. We queue it into the * released list and do a notify add later. @@ -514,7 +512,6 @@ void clockevents_exchange_device(struct BUG_ON(new->mode != CLOCK_EVT_MODE_UNUSED); clockevents_shutdown(new); } - local_irq_restore(flags); } /**