bin/69875: `mlxcontrol status <drivename>' hangs with Mylex DAC1100 RAID controller

Sandy Rutherford sandy at krvarr.bc.ca
Thu Aug 19 19:45:57 PDT 2004


Here is a patch for this problem report.

The bug is in the subr's `mlxd_foreach_ctrlr' and
`mlxd_find_ctrlr_search', both in interface.c.   Both of these
subroutines use `ioctl(fd, MLX_NEXT_CHILD, &i)' to iterate over the
configured mlxd(4) devices.  However, in FreeBSD 4.10-RELEASE, this
simply sets i to 0.

I have replaced this code with a simple-minded loop from i=0 to 63,
which is a large enough loop to find any devices on the RAID
controllers supported by mlxd(4).  It is likely that there is a more
clever fix, but this does the job for me.  If anybody has a better
fix, I would be happy to test it.

Attached is a patch file for /usr/src/usr.sbin/mlxcontrol/interface.c
in FreeBSD 4.10-RELEASE.

...Sandy

 
-------------- next part --------------
A non-text attachment was scrubbed...
Name: interface.c.diff
Type: application/octet-stream
Size: 2100 bytes
Desc: Context diff for /usr/src/usr/sbin/mlxcontrol/interface.c
Url : http://lists.freebsd.org/pipermail/freebsd-bugs/attachments/20040819/69fe8946/interface.c.obj


More information about the freebsd-bugs mailing list