svn commit: r284873 - head/sys/dev/mrsas
Kashyap D Desai
kadesai at FreeBSD.org
Fri Jun 26 12:00:52 UTC 2015
Author: kadesai
Date: Fri Jun 26 12:00:51 2015
New Revision: 284873
URL: https://svnweb.freebsd.org/changeset/base/284873
Log:
Counter part of mfi driver commit in mrsas
Switch from make_dev_alias to make_dev_alias_p since make_dev_alias_p can
gracefully fail if the /dev/megaraid_sas_ioctl_node symlink already exists.
This can happen if mfi(4) and mrsas(4) are both attached to cards and
providing Linux emulation support. Let the first one win. An equivalent
change has been done in mfi(4). Extra credit would be to pass the
Linux emulation call to the other driver when appropriate. This will
probably be a rare case and the user can manually change where the symlink
points to.
MFC after: 3 days
Modified:
head/sys/dev/mrsas/mrsas.c
head/sys/dev/mrsas/mrsas.h
Modified: head/sys/dev/mrsas/mrsas.c
==============================================================================
--- head/sys/dev/mrsas/mrsas.c Fri Jun 26 11:58:42 2015 (r284872)
+++ head/sys/dev/mrsas/mrsas.c Fri Jun 26 12:00:51 2015 (r284873)
@@ -811,6 +811,7 @@ mrsas_attach(device_t dev)
{
struct mrsas_softc *sc = device_get_softc(dev);
uint32_t cmd, bar, error;
+ struct cdev *linux_dev;
/* Look up our softc and initialize its fields. */
sc->mrsas_dev = dev;
@@ -870,7 +871,8 @@ mrsas_attach(device_t dev)
GID_OPERATOR, (S_IRUSR | S_IWUSR | S_IRGRP | S_IWGRP), "mrsas%u",
device_get_unit(dev));
if (device_get_unit(dev) == 0)
- make_dev_alias(sc->mrsas_cdev, "megaraid_sas_ioctl_node");
+ make_dev_alias_p(MAKEDEV_CHECKNAME, &linux_dev, sc->mrsas_cdev,
+ "megaraid_sas_ioctl_node");
if (sc->mrsas_cdev)
sc->mrsas_cdev->si_drv1 = sc;
Modified: head/sys/dev/mrsas/mrsas.h
==============================================================================
--- head/sys/dev/mrsas/mrsas.h Fri Jun 26 11:58:42 2015 (r284872)
+++ head/sys/dev/mrsas/mrsas.h Fri Jun 26 12:00:51 2015 (r284873)
@@ -102,7 +102,7 @@ __FBSDID("$FreeBSD$");
*/
#define BYTE_ALIGNMENT 1
#define MRSAS_MAX_NAME_LENGTH 32
-#define MRSAS_VERSION "06.707.04.03-fbsd"
+#define MRSAS_VERSION "06.707.05.00-fbsd"
#define MRSAS_ULONG_MAX 0xFFFFFFFFFFFFFFFF
#define MRSAS_DEFAULT_TIMEOUT 0x14 /* Temporarily set */
#define DONE 0
More information about the svn-src-head
mailing list