Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 12 Dec 2018 11:44:56 +0000 (UTC)
From:      Hans Petter Selasky <hselasky@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org
Subject:   svn commit: r341906 - stable/12/sys/dev/mlx4/mlx4_core
Message-ID:  <201812121144.wBCBiubQ057671@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: hselasky
Date: Wed Dec 12 11:44:56 2018
New Revision: 341906
URL: https://svnweb.freebsd.org/changeset/base/341906

Log:
  MFC r341546:
  mlx4en: Add driver version to sysctl desc
  
  Sponsored by:   Mellanox Technologies

Modified:
  stable/12/sys/dev/mlx4/mlx4_core/mlx4_main.c
Directory Properties:
  stable/12/   (props changed)

Modified: stable/12/sys/dev/mlx4/mlx4_core/mlx4_main.c
==============================================================================
--- stable/12/sys/dev/mlx4/mlx4_core/mlx4_main.c	Wed Dec 12 11:43:52 2018	(r341905)
+++ stable/12/sys/dev/mlx4/mlx4_core/mlx4_main.c	Wed Dec 12 11:44:56 2018	(r341906)
@@ -121,6 +121,9 @@ MODULE_PARM_DESC(enable_4k_uar,
 
 #define RESET_PERSIST_MASK_FLAGS	(MLX4_FLAG_SRIOV)
 
+static char mlx4_description[] = "Mellanox driver"
+    " (" DRV_VERSION ")";
+
 static char mlx4_version[] =
 	DRV_NAME ": Mellanox ConnectX core driver v"
 	DRV_VERSION " (" DRV_RELDATE ")\n";
@@ -3780,6 +3783,7 @@ static int mlx4_init_one(struct pci_dev *pdev, const s
 		kfree(priv);
 		return ret;
 	} else {
+		device_set_desc(pdev->dev.bsddev, mlx4_description);
 		pci_save_state(pdev->dev.bsddev);
 	}
 
@@ -3907,6 +3911,13 @@ static void mlx4_remove_one(struct pci_dev *pdev)
 	mutex_lock(&persist->interface_state_mutex);
 	persist->interface_state |= MLX4_INTERFACE_STATE_DELETION;
 	mutex_unlock(&persist->interface_state_mutex);
+
+	/*
+	 * Clear the device description to avoid use after free,
+	 * because the bsddev is not destroyed when this module is
+	 * unloaded:
+	 */
+	device_set_desc(pdev->dev.bsddev, NULL);
 
 	/* Disabling SR-IOV is not allowed while there are active vf's */
 	if (mlx4_is_master(dev) && dev->flags & MLX4_FLAG_SRIOV) {



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201812121144.wBCBiubQ057671>