From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <ferruh.yigit@intel.com>
Received: from mga01.intel.com (mga01.intel.com [192.55.52.88])
 by dpdk.org (Postfix) with ESMTP id A27DEE5D
 for <dev@dpdk.org>; Fri,  8 Dec 2017 22:06:16 +0100 (CET)
X-Amp-Result: SKIPPED(no attachment in message)
X-Amp-File-Uploaded: False
Received: from fmsmga004.fm.intel.com ([10.253.24.48])
 by fmsmga101.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384;
 08 Dec 2017 13:06:15 -0800
X-ExtLoop1: 1
X-IronPort-AV: E=Sophos;i="5.45,379,1508828400"; d="scan'208";a="10914538"
Received: from fyigit-mobl1.ger.corp.intel.com (HELO [10.241.225.68])
 ([10.241.225.68])
 by fmsmga004.fm.intel.com with ESMTP; 08 Dec 2017 13:06:15 -0800
To: Ravi Kumar <Ravi1.kumar@amd.com>, dev@dpdk.org
References: <1512047472-118050-1-git-send-email-Ravi1.kumar@amd.com>
 <1512047472-118050-7-git-send-email-Ravi1.kumar@amd.com>
From: Ferruh Yigit <ferruh.yigit@intel.com>
Message-ID: <22ae1f40-1498-f87e-0371-f35b048e59af@intel.com>
Date: Fri, 8 Dec 2017 13:06:15 -0800
User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:52.0) Gecko/20100101
 Thunderbird/52.5.0
MIME-Version: 1.0
In-Reply-To: <1512047472-118050-7-git-send-email-Ravi1.kumar@amd.com>
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: 8bit
Subject: Re: [dpdk-dev] [PATCH 07/16] net/axgbe: add interrupt handler for
 autonegotiation
X-BeenThere: dev@dpdk.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: DPDK patches and discussions <dev.dpdk.org>
List-Unsubscribe: <http://dpdk.org/ml/options/dev>,
 <mailto:dev-request@dpdk.org?subject=unsubscribe>
List-Archive: <http://dpdk.org/ml/archives/dev/>
List-Post: <mailto:dev@dpdk.org>
List-Help: <mailto:dev-request@dpdk.org?subject=help>
List-Subscribe: <http://dpdk.org/ml/listinfo/dev>,
 <mailto:dev-request@dpdk.org?subject=subscribe>
X-List-Received-Date: Fri, 08 Dec 2017 21:06:17 -0000

On 11/30/2017 5:11 AM, Ravi Kumar wrote:
> Signed-off-by: Ravi Kumar <Ravi1.kumar@amd.com>

<...>

> +static void
> +axgbe_dev_interrupt_handler(void *param)
> +{
> +	struct rte_eth_dev *dev = (struct rte_eth_dev *)param;
> +	struct axgbe_port *pdata = dev->data->dev_private;
> +
> +	pdata->phy_if.an_isr(pdata);
> +
> +	rte_intr_enable(&pdata->pci_dev->intr_handle);

This is already inside the interrupt handler, shouldn't interrupts needs to be
enabled somewhere else to reach this point at first place.

And I have seen a few drivers does the same but do we need to call
rte_intr_enable() in interrupt handler? Will interrupts disabled after each fire?

<...>