]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/commit
Refactor hard-reset implementation in mvs(4).
authormav <mav@FreeBSD.org>
Thu, 14 Apr 2011 07:49:45 +0000 (07:49 +0000)
committermav <mav@FreeBSD.org>
Thu, 14 Apr 2011 07:49:45 +0000 (07:49 +0000)
commit98e5071ee7a96d5b5675dbfcc77931c7a5a37ac7
tree98c6d591a1665b55499390708d26bce719c440d1
parente42dc6538940f841504d9fc7336c87873bde9e72
Refactor hard-reset implementation in mvs(4).

Instead of spinning in a tight loop for up to 15 seconds, polling for device
readiness while it spins up, return reset completion just after PHY reports
"connect well" or 100ms connection timeout. If device was found, use callout
for checking device readiness with 100ms period up to full 31 second timeout.

This fixes system freeze for 5-10 seconds on drives hot plug-in.
sys/dev/mvs/mvs.c
sys/dev/mvs/mvs.h