From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <dev-bounces@dpdk.org>
Received: from dpdk.org (dpdk.org [92.243.14.124])
	by inbox.dpdk.org (Postfix) with ESMTP id BB45DA0569;
	Thu, 12 Mar 2020 04:26:14 +0100 (CET)
Received: from [92.243.14.124] (localhost [127.0.0.1])
	by dpdk.org (Postfix) with ESMTP id 249142BE6;
	Thu, 12 Mar 2020 04:26:14 +0100 (CET)
Received: from mail-il1-f194.google.com (mail-il1-f194.google.com
 [209.85.166.194]) by dpdk.org (Postfix) with ESMTP id 2051D2BAA
 for <dev@dpdk.org>; Thu, 12 Mar 2020 04:26:12 +0100 (CET)
Received: by mail-il1-f194.google.com with SMTP id j69so4116649ila.11
 for <dev@dpdk.org>; Wed, 11 Mar 2020 20:26:12 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=broadcom.com; s=google;
 h=mime-version:references:in-reply-to:from:date:message-id:subject:to
 :cc; bh=oF0o3oScUT4jLyKN6t9xhSkVu9FDwFvmKvjUnSoya6o=;
 b=Ri3HYOSIdcog7jur0sdNzpKEWcJp7IPC/59LODYhwEgOXOca9uwpX/WLs6RCeupglI
 6jd7x1IUaLPxULVh93zo3k+JSFebSfasdl8ldi9s2ni9YMZVUwXovZfjZ1hVg331vbDH
 BzP4gRMc9Gr/0lH10CisnWU2moT8NxOSCc+yk=
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20161025;
 h=x-gm-message-state:mime-version:references:in-reply-to:from:date
 :message-id:subject:to:cc;
 bh=oF0o3oScUT4jLyKN6t9xhSkVu9FDwFvmKvjUnSoya6o=;
 b=fMNB5Kvli66la4qccNk5dq0c5rmAOLcdf42fejSUKKJJ3Ig2cdO+gVykkNiESftGZA
 PrNCHzGo/usSM1vkMtqjRN54yUofQDXbyKN2hsbSrSEkDJxkcaFQ4DCsn40Q9APP6dVV
 AejHom0fSuzzr0n2gLVLEIswcw9ScK/tZiwZlXIaW10xePmW4/wfQyj9J2FmrRbFmPbg
 EqNcdVutUurfCjcu1I1z/xEN1o8clnzcnt10eCnlhfmrFkkjBHrzPasUBSAIQHHeE/7E
 Ah8zqbYvmItgk4FS7HI5QADdPeuqpaT+xfRC2ulADP0Pjq/wMDh/oHRHpFbNRIX30Fo2
 mTxA==
X-Gm-Message-State: ANhLgQ0XkdQXCQX/oCmyhg1kq1SFMSr1JtaeW9g/iYALC59fNolkr9Tz
 XhmuyezbLbDwjz74k2ruasSdvm0gar5XQ0uUlcjGZA==
X-Google-Smtp-Source: ADFU+vsyskzP+dbakRAtVKOf4KbXZ4n+UgICT0dNXQOJsAyClymhX/E9od7/7UEY1GEMrxfjaM3xM+Wxi1hcAj3qrEo=
X-Received: by 2002:a92:244f:: with SMTP id k76mr6299163ilk.290.1583983571205; 
 Wed, 11 Mar 2020 20:26:11 -0700 (PDT)
MIME-Version: 1.0
References: <20200122101654.20824-1-kalesh-anakkur.purayil@broadcom.com>
 <1946963.KlZ2vcFHjT@xps>
In-Reply-To: <1946963.KlZ2vcFHjT@xps>
From: Kalesh Anakkur Purayil <kalesh-anakkur.purayil@broadcom.com>
Date: Thu, 12 Mar 2020 08:55:59 +0530
Message-ID: <CAH-L+nP5zwUJkufDb1cQ3wzF6Hk+jTk7dKFeCz8aBEjGURuKnQ@mail.gmail.com>
To: Thomas Monjalon <thomas@monjalon.net>
Cc: dev@dpdk.org, ferruh.yigit@intel.com, declan.doherty@intel.com, 
 arybchenko@solarflare.com
Content-Type: text/plain; charset="UTF-8"
X-Content-Filtered-By: Mailman/MimeDel 2.1.15
Subject: Re: [dpdk-dev] [RFC PATCH 0/3] librte_ethdev: error recovery support
X-BeenThere: dev@dpdk.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: DPDK patches and discussions <dev.dpdk.org>
List-Unsubscribe: <https://mails.dpdk.org/options/dev>,
 <mailto:dev-request@dpdk.org?subject=unsubscribe>
List-Archive: <http://mails.dpdk.org/archives/dev/>
List-Post: <mailto:dev@dpdk.org>
List-Help: <mailto:dev-request@dpdk.org?subject=help>
List-Subscribe: <https://mails.dpdk.org/listinfo/dev>,
 <mailto:dev-request@dpdk.org?subject=subscribe>
Errors-To: dev-bounces@dpdk.org
Sender: "dev" <dev-bounces@dpdk.org>

Hi Thomas,

On Wed, Mar 11, 2020 at 6:49 PM Thomas Monjalon <thomas@monjalon.net> wrote:

> 22/01/2020 11:16, Kalesh A P:
> > From: Kalesh AP <kalesh-anakkur.purayil@broadcom.com>
> >
> > This patch adds support for recovery event in rte_eth_event framework.
> > FW error and FW reset conditions would be managed by PMD. Driver uses
>
> "Driver"? THE driver? :)
>
> > RTE_ETH_EVENT_INTR_RESET event to notify the applications about the
> > FW reset or error.
>
> Which drivers doe that?
>
[Kalesh]: Second patch in this series implements this behavior in bnxt PMD.
Error recovery is a new feature added in bnxt PMD in 19.11. This change is
needed to support error recovery functionality.

>
> > In such cases, PMD would need recovery events to
> > notify application about PMD has recovered from FW reset or FW error.
>
> Sorry I don't understand. You said application is notified of any error.
> But the PMD can recover from this error? So what is the error at the end?
> If the error is recovered why notifying the application?
>
[Kalesh] : Let me give you some insight on this.

The error recovery solution is a protocol implemented between firmware and
bnxt PMD to recover from the fatal errors without a system reboot. There is
an alarm thread which constantly monitors the health of the firmware and
initiates a recovery when needed.

There are two scenarios here:

1. Hardware or firmware encountered an error which firmware detected.
Firmware is in operational status here. In this case, firmware can reset
the chip and notify the driver about the reset.
2. Hardware or firmware encountered an error but firmware is dead/hung.
Firmware is not in operational status. In this case, the only possible way
to recover the adapter is through host driver(bnxt PMD).

In both cases, bnxt PMD reinitializes with the FW again after the reset.
During that recovery process, data path will be halted and any control path
operation would fail. So, bnxt PMD has to notify the application about this
reset/error event to prevent any activities from application during this
time.

-- 
Regards,
Kalesh A P