summaryrefslogtreecommitdiff
path: root/sys
diff options
context:
space:
mode:
authorMark Kettenis <kettenis@cvs.openbsd.org>2010-01-02 01:20:39 +0000
committerMark Kettenis <kettenis@cvs.openbsd.org>2010-01-02 01:20:39 +0000
commit232e2e223435861451bea695b19439c2006b14d3 (patch)
tree2bb8fdd28c41270c7a76ef110612f9cf126f78bc /sys
parent9afa72c31174db1964900b22d3d6beadea325831 (diff)
We need an additional level of indirection through 'struct scsibus_attach_args'
to find the 'struct scsi_link' associated with a scsibus(4). Interpreting 'struct scsibus_attach_args' as a 'struct scsi_link' happened to mostly work since it had a zero stored in the right place. However, after dlg@'s changes to 'struct scsi_link' that no longer turned out to be true. Makes my blade1k find its root disk again.
Diffstat (limited to 'sys')
-rw-r--r--sys/arch/sparc64/sparc64/autoconf.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/sys/arch/sparc64/sparc64/autoconf.c b/sys/arch/sparc64/sparc64/autoconf.c
index e21f41a0af2..b3bf765563d 100644
--- a/sys/arch/sparc64/sparc64/autoconf.c
+++ b/sys/arch/sparc64/sparc64/autoconf.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: autoconf.c,v 1.106 2009/05/31 21:23:28 kettenis Exp $ */
+/* $OpenBSD: autoconf.c,v 1.107 2010/01/02 01:20:38 kettenis Exp $ */
/* $NetBSD: autoconf.c,v 1.51 2001/07/24 19:32:11 eeh Exp $ */
/*
@@ -1352,7 +1352,8 @@ device_register(struct device *dev, void *aux)
}
if (strcmp(devname, "scsibus") == 0) {
- struct scsi_link *sl = aux;
+ struct scsibus_attach_args *saa = aux;
+ struct scsi_link *sl = saa->saa_sc_link;
if (strcmp(bp->name, "fp") == 0 &&
bp->val[0] == sl->scsibus) {