drivers: ethernet: stm32: check tx packet size before locking mutex

The transmit mutex is not needed while checking the packet size,
so we acquire the lock after checking the size and
return early if it is too big.

Signed-off-by: Bjarne von Horn <B.von_horn@wzl.rwth-aachen.de>
diff --git a/drivers/ethernet/eth_stm32_hal.c b/drivers/ethernet/eth_stm32_hal.c
index 3900282..d439e87 100644
--- a/drivers/ethernet/eth_stm32_hal.c
+++ b/drivers/ethernet/eth_stm32_hal.c
@@ -193,15 +193,14 @@
 
 	heth = &dev_data->heth;
 
-	k_mutex_lock(&dev_data->tx_mutex, K_FOREVER);
-
 	total_len = net_pkt_get_len(pkt);
 	if (total_len > ETH_STM32_TX_BUF_SIZE) {
 		LOG_ERR("PKT too big");
-		res = -EIO;
-		goto error;
+		return -EIO;
 	}
 
+	k_mutex_lock(&dev_data->tx_mutex, K_FOREVER);
+
 #if defined(CONFIG_SOC_SERIES_STM32H7X)
 	uint32_t cur_tx_desc_idx;