Commit 4dcf38ae authored by Radu Pirea (NXP OSS)'s avatar Radu Pirea (NXP OSS) Committed by Paolo Abeni
Browse files

octeontx2-pf: mcs: update PN only when update_pn is true



When updating SA, update the PN only when the update_pn flag is true.
Otherwise, the PN will be reset to its previous value using the
following command and this should not happen:
$ ip macsec set macsec0 tx sa 0 on

Fixes: c54ffc73 ("octeontx2-pf: mcs: Introduce MACSEC hardware offloading")
Signed-off-by: default avatarRadu Pirea (NXP OSS) <radu-nicolae.pirea@oss.nxp.com>
Reviewed-by: default avatarSabrina Dubroca <sd@queasysnail.net>
Signed-off-by: default avatarPaolo Abeni <pabeni@redhat.com>
parent 0412cc84
Loading
Loading
Loading
Loading
+9 −4
Original line number Diff line number Diff line
@@ -1357,10 +1357,12 @@ static int cn10k_mdo_upd_txsa(struct macsec_context *ctx)

	if (netif_running(secy->netdev)) {
		/* Keys cannot be changed after creation */
		if (ctx->sa.update_pn) {
			err = cn10k_write_tx_sa_pn(pfvf, txsc, sa_num,
						   sw_tx_sa->next_pn);
			if (err)
				return err;
		}

		err = cn10k_mcs_link_tx_sa2sc(pfvf, secy, txsc,
					      sa_num, sw_tx_sa->active);
@@ -1529,6 +1531,9 @@ static int cn10k_mdo_upd_rxsa(struct macsec_context *ctx)
		if (err)
			return err;

		if (!ctx->sa.update_pn)
			return 0;

		err = cn10k_mcs_write_rx_sa_pn(pfvf, rxsc, sa_num,
					       rx_sa->next_pn);
		if (err)