I need a code review for 3776.
http://defect.opensolaris.org/bz/show_bug.cgi?id=3776

The problem was very much like 3772 in that when we found that a zone didn't 
have an active zone root dataset we would set the error value returned from 
find_active_zone_root() and if it wasn't 0 we would continue back to the top of 
the for loop. However the error value was never cleared so if this was that 
last 
zone to be processed we would erroneously return the error for the previous 
find_active_zone_root() call. What should have been happening is if there was 
no 
active root dataset for the zone then we skip it and try the next zone without 
setting the error value returned from find_active_zone_root.

To fix this I moved the call to find_active_zone_root into it's own if clause 
and removed the code that set it's return value.

The following webrev includes the fix for this bug as well as the changes made 
to address general code review comments. The actual change to fix 3776 is on 
lines 938 through 944 of be_activate.c.

http://cr.opensolaris.org/~evanl/webrev.3776/

Thanks!
-evan

Reply via email to