summaryrefslogtreecommitdiffstats
path: root/sys/cam/ata/ata_xpt.c
diff options
context:
space:
mode:
authorRenato Botelho <renato@netgate.com>2017-07-12 13:40:57 -0300
committerRenato Botelho <renato@netgate.com>2017-07-12 13:40:57 -0300
commita9101a80183bbf3e77d7fed2b9767f7eae54f1e9 (patch)
tree5313afc4a2c47fb9fc6f73107669f760aad717b1 /sys/cam/ata/ata_xpt.c
parent4b68fbd1711d1d4d2c7e77e04ffc47257366ac90 (diff)
parentdc92a5e2298774036551d0b9cdfb9a8814a6414b (diff)
downloadFreeBSD-src-a9101a80183bbf3e77d7fed2b9767f7eae54f1e9.zip
FreeBSD-src-a9101a80183bbf3e77d7fed2b9767f7eae54f1e9.tar.gz
Merge remote-tracking branch 'origin/releng/10.3' into RELENG_2_3
Diffstat (limited to 'sys/cam/ata/ata_xpt.c')
-rw-r--r--sys/cam/ata/ata_xpt.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/sys/cam/ata/ata_xpt.c b/sys/cam/ata/ata_xpt.c
index 3429bb29a6..5b892ff 100644
--- a/sys/cam/ata/ata_xpt.c
+++ b/sys/cam/ata/ata_xpt.c
@@ -40,6 +40,7 @@ __FBSDID("$FreeBSD$");
#include <sys/interrupt.h>
#include <sys/sbuf.h>
+#include <sys/eventhandler.h>
#include <sys/lock.h>
#include <sys/mutex.h>
#include <sys/sysctl.h>
@@ -827,12 +828,18 @@ noerror:
{
struct ccb_pathinq cpi;
int16_t *ptr;
+ int veto = 0;
ident_buf = &softc->ident_data;
for (ptr = (int16_t *)ident_buf;
ptr < (int16_t *)ident_buf + sizeof(struct ata_params)/2; ptr++) {
*ptr = le16toh(*ptr);
}
+ EVENTHANDLER_INVOKE(ada_probe_veto, path, ident_buf, &veto);
+ if (veto) {
+ goto device_fail;
+ }
+
if (strncmp(ident_buf->model, "FX", 2) &&
strncmp(ident_buf->model, "NEC", 3) &&
strncmp(ident_buf->model, "Pioneer", 7) &&
OpenPOWER on IntegriCloud