partx goes into infinite loop deleting partitions when you do not specify a range

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



I noticed that running partx -d /dev/sda hangs so I looked into it and
it seems that it keeps trying to delete partitions forever.  Looking at
the source the loop condition is:

while (upper == 0 || lower <= upper)

And since I did not specify a range, upper is 0 so the loop continues
forever.  Well, at least until lower wraps back around to 0 which will
be quite a while since it is an int.

How should this be fixed?  It seems that removing the first condition
and defaulting upper to some sane value, like say 256 should do it, but
it seems there should be a better way.  For that matter, it seems that
the kernel should start returning an error other than EBUSY or ENXIO
once you start asking it to delete partition numbers higher than the
maximum allowed, which would end the loop, but this doesn't seem to happen.
--
To unsubscribe from this list: send the line "unsubscribe util-linux-ng" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Netdev]     [Ethernet Bridging]     [Linux Wireless]     [Kernel Newbies]     [Security]     [Linux for Hams]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux Admin]     [Samba]

  Powered by Linux