From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753360AbcGSJyT (ORCPT ); Tue, 19 Jul 2016 05:54:19 -0400 Received: from mail-lf0-f68.google.com ([209.85.215.68]:36638 "EHLO mail-lf0-f68.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752780AbcGSJyQ (ORCPT ); Tue, 19 Jul 2016 05:54:16 -0400 From: Alexander Kuleshov To: Thomas Gleixner Cc: linux-kernel@vger.kernel.org, Alexander Kuleshov Subject: [PATCH] genirq: no need to mask non trigger mode flags before __irq_set_trigger() Date: Tue, 19 Jul 2016 15:54:08 +0600 Message-Id: <20160719095408.13778-1-kuleshovmail@gmail.com> X-Mailer: git-send-email 2.8.0.rc3.922.g2bcc146 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Some callers of __irq_set_trigger() masks all flags besides trigger mode flags. Actually it is unnecessary operation now, because the __irq_set_trigger() already does this before usage of flags. Signed-off-by: Alexander Kuleshov --- kernel/irq/chip.c | 1 - kernel/irq/manage.c | 5 ++--- 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/kernel/irq/chip.c b/kernel/irq/chip.c index 2f9f2b0..38f2fa4 100644 --- a/kernel/irq/chip.c +++ b/kernel/irq/chip.c @@ -76,7 +76,6 @@ int irq_set_irq_type(unsigned int irq, unsigned int type) if (!desc) return -EINVAL; - type &= IRQ_TYPE_SENSE_MASK; ret = __irq_set_trigger(desc, type); irq_put_desc_busunlock(desc, flags); return ret; diff --git a/kernel/irq/manage.c b/kernel/irq/manage.c index ef0bc02..f33c719 100644 --- a/kernel/irq/manage.c +++ b/kernel/irq/manage.c @@ -662,7 +662,7 @@ int __irq_set_trigger(struct irq_desc *desc, unsigned long flags) unmask = 1; } - /* caller masked out all except trigger mode flags */ + /* all flags except trigger mode flags are masked */ ret = chip->irq_set_type(&desc->irq_data, flags); switch (ret) { @@ -1730,8 +1730,7 @@ void enable_percpu_irq(unsigned int irq, unsigned int type) if (!desc) return; - type &= IRQ_TYPE_SENSE_MASK; - if (type != IRQ_TYPE_NONE) { + if (type & IRQ_TYPE_SENSE_MASK) { int ret; ret = __irq_set_trigger(desc, type); -- 2.8.0.rc3.922.g2bcc146