mirror of https://github.com/ipxe/ipxe.git
[block] Ignore redundant xfer_window_changed() messages
For some block device protocols, the active path may continue to receive xfer_window_changed() notifications during normal use. These currently result in the active path being erroneously closed. Fix by ignoring any xfer_window_changed() messages if this path is already the active path. Signed-off-by: Michael Brown <mcb30@ipxe.org>pull/8/merge
parent
fa879f9f52
commit
414b4fc9c5
|
@ -282,6 +282,10 @@ static size_t sanpath_block_window ( struct san_path *sanpath __unused ) {
|
|||
static void sanpath_step ( struct san_path *sanpath ) {
|
||||
struct san_device *sandev = sanpath->sandev;
|
||||
|
||||
/* Ignore if we are already the active device */
|
||||
if ( sanpath == sandev->active )
|
||||
return;
|
||||
|
||||
/* Wait until path has become available */
|
||||
if ( ! xfer_window ( &sanpath->block ) )
|
||||
return;
|
||||
|
|
Loading…
Reference in New Issue