yahoo-eng-team team mailing list archive
-
yahoo-eng-team team
-
Mailing list archive
-
Message #73064
[Bug 1773941] Re: Not able to attach more than 25 volumes using virtio-scsi
This isn't really a bug, and there is a blueprint for this with some
discussion:
https://blueprints.launchpad.net/nova/+spec/nova-improvement-of-maximum-
attach-volumes-more-than-26-vols
** Changed in: nova
Status: New => Incomplete
** Changed in: nova
Status: Incomplete => Opinion
** Changed in: nova
Importance: Undecided => Wishlist
--
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to OpenStack Compute (nova).
https://bugs.launchpad.net/bugs/1773941
Title:
Not able to attach more than 25 volumes using virtio-scsi
Status in OpenStack Compute (nova):
Opinion
Bug description:
Not able to attach more than 25 volumes using virtio-scsi
In nova/virt/libvirt/blockinfo.py,
def get_dev_count_for_disk_bus(disk_bus):
"""Determine the number disks supported.
Determine how many disks can be supported in
a single VM for a particular disk bus.
Returns the number of disks supported.
"""
if disk_bus == "ide":
return 4
else:
return 26 <=== we're just responding with 26 devices that we can use.
and
def find_disk_dev_for_disk_bus(mapping, bus,
last_device=False,
assigned_devices=None):
"""Identify a free disk dev name for a bus.
Determines the possible disk dev names for
the bus, and then checks them in order until
it identifies one that is not yet used in the
disk mapping. If 'last_device' is set, it will
only consider the last available disk dev name.
Returns the chosen disk_dev name, or raises an
exception if none is available.
"""
dev_prefix = get_dev_prefix_for_disk_bus(bus)
if dev_prefix is None:
return None
if assigned_devices is None:
assigned_devices = []
max_dev = get_dev_count_for_disk_bus(bus)
if last_device:
devs = [max_dev - 1]
else:
devs = range(max_dev)
for idx in devs:
disk_dev = dev_prefix + chr(ord('a') + idx) <====== need to correct naming of devices
if not has_disk_dev(mapping, disk_dev):
if disk_dev not in assigned_devices:
return disk_dev
raise exception.NovaException(
_("No free disk device names for prefix '%s'") %
dev_prefix)
To manage notifications about this bug go to:
https://bugs.launchpad.net/nova/+bug/1773941/+subscriptions
References