From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753450AbcK2Xrw (ORCPT ); Tue, 29 Nov 2016 18:47:52 -0500 Received: from lelnx194.ext.ti.com ([198.47.27.80]:38218 "EHLO lelnx194.ext.ti.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750754AbcK2Xrl (ORCPT ); Tue, 29 Nov 2016 18:47:41 -0500 To: , , From: Grygorii Strashko Subject: question about irq_enter()/irq_exit() calling policy Message-ID: <22d0d991-bbe2-ce10-5202-3cdf97a9ecf2@ti.com> Date: Tue, 29 Nov 2016 17:47:12 -0600 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.4.0 MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 7bit X-Originating-IP: [128.247.83.173] Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi All, Sorry for the may be dumb question, but what is the calling policy for irq_enter()/irq_exit()? 1) Should these function be called each time system enter/exit IRQ context? HW IRQ: switch (IRQ mode) ... irq_enter() handle irq - execute hw_irq_hadler irq_exit() ... switch 2) Should these function be called for each processed irq? HW IRQ: switch (IRQ mode) ... while (irq = get_pending_irq()) { ... irq_enter() handle(irq) - execute hw_irq_hadler irq_exit() } ... switch -- regards, -grygorii