svn commit: r352743 - head/sys/cam/scsi
Alexander Motin
mav at FreeBSD.org
Thu Sep 26 14:48:40 UTC 2019
Author: mav
Date: Thu Sep 26 14:48:39 2019
New Revision: 352743
URL: https://svnweb.freebsd.org/changeset/base/352743
Log:
Add kern.cam.da.X.quirks tunable, similar existing for ada.
Submitted by: Michael Lass
MFC after: 2 weeks
Differential Revision: https://reviews.freebsd.org/D20677
Modified:
head/sys/cam/scsi/scsi_da.c
Modified: head/sys/cam/scsi/scsi_da.c
==============================================================================
--- head/sys/cam/scsi/scsi_da.c Thu Sep 26 13:27:25 2019 (r352742)
+++ head/sys/cam/scsi/scsi_da.c Thu Sep 26 14:48:39 2019 (r352743)
@@ -2694,6 +2694,7 @@ daregister(struct cam_periph *periph, void *arg)
struct ccb_getdev *cgd;
char tmpstr[80];
caddr_t match;
+ int quirks;
cgd = (struct ccb_getdev *)arg;
if (cgd == NULL) {
@@ -2749,6 +2750,13 @@ daregister(struct cam_periph *periph, void *arg)
xpt_path_inq(&cpi, periph->path);
if (cpi.ccb_h.status == CAM_REQ_CMP && (cpi.hba_misc & PIM_NO_6_BYTE))
softc->quirks |= DA_Q_NO_6_BYTE;
+
+ /* Override quirks if tunable is set */
+ snprintf(tmpstr, sizeof(tmpstr), "kern.cam.da.%d.quirks",
+ periph->unit_number);
+ quirks = softc->quirks;
+ TUNABLE_INT_FETCH(tmpstr, &quirks);
+ softc->quirks = quirks;
if (SID_TYPE(&cgd->inq_data) == T_ZBC_HM)
softc->zone_mode = DA_ZONE_HOST_MANAGED;
More information about the svn-src-head
mailing list