Change-Id: I91fa3c9c78edc21f5c1a0997d299a787e3a81df1
rereadpt_err = f"Failed to request kernel to re-read partition table on {Device}"
for i in range(2):
try:
- with os.open(Device, os.O_RDWR) as fd:
- fcntl.ioctl(fd, BLKRRPART)
- rereadpt_ok = True
+ fd = os.open(Device, os.O_RDWR)
+ fcntl.ioctl(fd, BLKRRPART)
+ rereadpt_ok = True
except OSError as e:
if e.errno == errno.EBUSY:
logging.error(f"{rereadpt_err}: {e.strerror}. Retrying after {wait_secs}")
else:
logging.error(f"{rereadpt_err}: {e.strerror}")
sys.exit(1)
+ finally:
+ os.close(fd)
if not rereadpt_ok:
logging.error(f"{rereadpt_err}")
sys.exit(1)