lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date: Wed, 2 Aug 2023 10:56:25 +0000
From: Elad Nachman <enachman@...vell.com>
To: Jonas Gorski <jonas.gorski@...dn.de>,
        Taras Chornyi
	<taras.chornyi@...ision.eu>,
        "David S. Miller" <davem@...emloft.net>,
        Eric
 Dumazet <edumazet@...gle.com>, Jakub Kicinski <kuba@...nel.org>,
        Paolo Abeni
	<pabeni@...hat.com>, Andrew Lunn <andrew@...n.ch>,
        "Vadym Kochan [C]"
	<vkochan@...vell.com>
CC: "netdev@...r.kernel.org" <netdev@...r.kernel.org>,
        "linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>
Subject: RE: [EXT] [PATCH] prestera: fix fallback to previous version on same
 major version



> -----Original Message-----
> From: Jonas Gorski <jonas.gorski@...dn.de>
> Sent: Wednesday, August 2, 2023 12:24 PM
> To: Taras Chornyi <taras.chornyi@...ision.eu>; David S. Miller
> <davem@...emloft.net>; Eric Dumazet <edumazet@...gle.com>; Jakub
> Kicinski <kuba@...nel.org>; Paolo Abeni <pabeni@...hat.com>; Andrew
> Lunn <andrew@...n.ch>; Vadym Kochan [C] <vkochan@...vell.com>
> Cc: netdev@...r.kernel.org; linux-kernel@...r.kernel.org
> Subject: [EXT] [PATCH] prestera: fix fallback to previous version on same
> major version
> 
> External Email
> 
> ----------------------------------------------------------------------
> When both supported and previous version have the same major version,
> and the firmwares are missing, the driver ends in a loop requesting the same
> (previous) version over and over again:
> 
>     [   76.327413] Prestera DX 0000:01:00.0: missing latest
> mrvl/prestera/mvsw_prestera_fw-v4.1.img firmware, fall-back to previous
> 4.0 version
>     [   76.339802] Prestera DX 0000:01:00.0: missing latest
> mrvl/prestera/mvsw_prestera_fw-v4.0.img firmware, fall-back to previous
> 4.0 version
>     [   76.352162] Prestera DX 0000:01:00.0: missing latest
> mrvl/prestera/mvsw_prestera_fw-v4.0.img firmware, fall-back to previous
> 4.0 version
>     [   76.364502] Prestera DX 0000:01:00.0: missing latest
> mrvl/prestera/mvsw_prestera_fw-v4.0.img firmware, fall-back to previous
> 4.0 version
>     [   76.376848] Prestera DX 0000:01:00.0: missing latest
> mrvl/prestera/mvsw_prestera_fw-v4.0.img firmware, fall-back to previous
> 4.0 version
>     [   76.389183] Prestera DX 0000:01:00.0: missing latest
> mrvl/prestera/mvsw_prestera_fw-v4.0.img firmware, fall-back to previous
> 4.0 version
>     [   76.401522] Prestera DX 0000:01:00.0: missing latest
> mrvl/prestera/mvsw_prestera_fw-v4.0.img firmware, fall-back to previous
> 4.0 version
>     [   76.413860] Prestera DX 0000:01:00.0: missing latest
> mrvl/prestera/mvsw_prestera_fw-v4.0.img firmware, fall-back to previous
> 4.0 version
>     [   76.426199] Prestera DX 0000:01:00.0: missing latest
> mrvl/prestera/mvsw_prestera_fw-v4.0.img firmware, fall-back to previous
> 4.0 version
>     ...
> 
> Fix this by inverting the check to that we aren't yet at the previous version,
> and also check the minor version.
> 
> This also catches the case where both versions are the same, as it was after
> commit bb5dbf2cc64d ("net: marvell: prestera: add firmware v4.0 support").
> 
> With this fix applied:
> 
>     [   88.499622] Prestera DX 0000:01:00.0: missing latest
> mrvl/prestera/mvsw_prestera_fw-v4.1.img firmware, fall-back to previous
> 4.0 version
>     [   88.511995] Prestera DX 0000:01:00.0: failed to request previous
> firmware: mrvl/prestera/mvsw_prestera_fw-v4.0.img
>     [   88.522403] Prestera DX: probe of 0000:01:00.0 failed with error -2
> 
> Fixes: 47f26018a414 ("net: marvell: prestera: try to load previous fw
> version")
> Signed-off-by: Jonas Gorski <jonas.gorski@...dn.de>
> ---
>  drivers/net/ethernet/marvell/prestera/prestera_pci.c | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/net/ethernet/marvell/prestera/prestera_pci.c
> b/drivers/net/ethernet/marvell/prestera/prestera_pci.c
> index f328d957b2db..35857dc19542 100644
> --- a/drivers/net/ethernet/marvell/prestera/prestera_pci.c
> +++ b/drivers/net/ethernet/marvell/prestera/prestera_pci.c
> @@ -727,7 +727,8 @@ static int prestera_fw_get(struct prestera_fw *fw)
> 
>  	err = request_firmware_direct(&fw->bin, fw_path, fw->dev.dev);
>  	if (err) {
> -		if (ver_maj == PRESTERA_SUPP_FW_MAJ_VER) {
> +		if (ver_maj != PRESTERA_PREV_FW_MAJ_VER ||
> +		    ver_min != PRESTERA_PREV_FW_MIN_VER) {
>  			ver_maj = PRESTERA_PREV_FW_MAJ_VER;
>  			ver_min = PRESTERA_PREV_FW_MIN_VER;
> 
> --
> 2.41.0
> 
> 
> --
> BISDN GmbH
> Körnerstraße 7-10
> 10785 Berlin
> Germany
> 
> 
> Phone:
> +49-30-6108-1-6100
> 
> 
> Managing Directors:
> Dr.-Ing. Hagen Woesner, Andreas
> Köpsel
> 
> 
> Commercial register:
> Amtsgericht Berlin-Charlottenburg HRB 141569
> B
> VAT ID No: DE283257294
> 

Acked-by: Elad Nachman <enachman@...vell.com>


Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ