Activity log for bug #1486204

Date Who What changed Old value New value Message
2015-08-18 19:17:19 Maxim Nestratov bug added bug
2015-08-18 19:17:38 Maxim Nestratov affects cinder nova
2015-08-18 19:42:34 OpenStack Infra nova: status New In Progress
2015-08-18 19:42:34 OpenStack Infra nova: assignee Maxim Nestratov (mnestratov)
2015-08-19 05:12:50 Feodor Tersin nova: status In Progress Incomplete
2015-08-19 08:26:33 Maxim Nestratov summary User specified volume device names are not ignored libvirt: user specified volume device names are not ignored
2015-08-19 08:37:58 Maxim Nestratov description After change I3ce12563846b2c34ac778d44e7582eef930ae4b0 was merged, change I76a7cfd995db6c04f7af48ff8c9acdd55750ed76 ceased to work for root volume device name. Now we have a situation when we try to boot an instance from volume with specified device name e.g. like this: nova boot --block-device device=vdc,source=volume,dest=volume,size=1,bootindex=0,id=433756c2-d4dc-4560-b247-e5cadb79a505 --flavor m1.tiny instance-volume or like this nova boot ct-3 --flavor m1.small --block-device-mapping vda=b2ac7e52-6ad3-4c11-9178-c3bf52fd373f:::0 with libvirt driver , it will try to clear user specified device name and use driver default device name and we will actually see log warning for this: 2015-08-18 15:05:53.892 WARNING nova.virt.libvirt.driver [req-09b86d01-be81-42ac-aabb-71c427e80909 admin demo] [instance: 6943e226-8c23-4137-a897-bdbbcebcd31d] Ignoring supplied device name: /dev/vda. Libvirt can't honour user-supplied dev names but nothing will actually happen. It is so because instance.root_device_name is set based on user specified device name in nova.compute.manager._default_block_device_names before driver's default_device_names_for_instance is called and user input is cleared, while bdm in nova.virt.libvirt.blockinfo.get_disk_mapping are updated taking into account instance.root_device_name. After change I3ce12563846b2c34ac778d44e7582eef930ae4b0 was merged, change I76a7cfd995db6c04f7af48ff8c9acdd55750ed76 ceased to work for root volume device name. Now we have a situation when we try to boot an instance from volume with specified device name e.g. like this: nova boot --block-device device=vdc,source=volume,dest=volume,size=1,bootindex=0,id=433756c2-d4dc-4560-b247-e5cadb79a505 --flavor m1.tiny instance-volume (with any virt_type)   or like this  nova boot ct-3 --flavor m1.small --block-device-mapping vda=b2ac7e52-6ad3-4c11-9178-c3bf52fd373f:::0 (for virt_type=parallels, which doesn't support virtio bus) with libvirt driver , it will try to clear user specified device name and use driver default device name and we will actually see log warning for this: 2015-08-18 15:05:53.892 WARNING nova.virt.libvirt.driver [req-09b86d01-be81-42ac-aabb-71c427e80909 admin demo] [instance: 6943e226-8c23-4137-a897-bdbbcebcd31d] Ignoring supplied device name: /dev/vda. Libvirt can't honour user-supplied dev names but nothing will actually happen. It is so because instance.root_device_name is set based on user specified device name in nova.compute.manager._default_block_device_names before driver's default_device_names_for_instance is called and user input is cleared, while bdm in nova.virt.libvirt.blockinfo.get_disk_mapping are updated taking into account instance.root_device_name.
2015-08-19 10:25:31 Maxim Nestratov description After change I3ce12563846b2c34ac778d44e7582eef930ae4b0 was merged, change I76a7cfd995db6c04f7af48ff8c9acdd55750ed76 ceased to work for root volume device name. Now we have a situation when we try to boot an instance from volume with specified device name e.g. like this: nova boot --block-device device=vdc,source=volume,dest=volume,size=1,bootindex=0,id=433756c2-d4dc-4560-b247-e5cadb79a505 --flavor m1.tiny instance-volume (with any virt_type)   or like this  nova boot ct-3 --flavor m1.small --block-device-mapping vda=b2ac7e52-6ad3-4c11-9178-c3bf52fd373f:::0 (for virt_type=parallels, which doesn't support virtio bus) with libvirt driver , it will try to clear user specified device name and use driver default device name and we will actually see log warning for this: 2015-08-18 15:05:53.892 WARNING nova.virt.libvirt.driver [req-09b86d01-be81-42ac-aabb-71c427e80909 admin demo] [instance: 6943e226-8c23-4137-a897-bdbbcebcd31d] Ignoring supplied device name: /dev/vda. Libvirt can't honour user-supplied dev names but nothing will actually happen. It is so because instance.root_device_name is set based on user specified device name in nova.compute.manager._default_block_device_names before driver's default_device_names_for_instance is called and user input is cleared, while bdm in nova.virt.libvirt.blockinfo.get_disk_mapping are updated taking into account instance.root_device_name. After change I3ce12563846b2c34ac778d44e7582eef930ae4b0 was merged, change I76a7cfd995db6c04f7af48ff8c9acdd55750ed76 ceased to work for root volume device name. Now we have a situation when we try to boot an instance from volume with specified device name e.g. like this: nova boot --block-device device=vdc,source=volume,dest=volume,size=1,bootindex=0,id=433756c2-d4dc-4560-b247-e5cadb79a505 --flavor m1.tiny instance-volume (with any virt_type)   or like this  nova boot ct-3 --flavor m1.small --block-device-mapping vda=b2ac7e52-6ad3-4c11-9178-c3bf52fd373f:::0 (for virt_type=parallels, which doesn't support virtio bus) with libvirt driver , it will try to clear user specified device name and use driver default device name and we will actually see log warning for this: 2015-08-18 15:05:53.892 WARNING nova.virt.libvirt.driver [req-09b86d01-be81-42ac-aabb-71c427e80909 admin demo] [instance: 6943e226-8c23-4137-a897-bdbbcebcd31d] Ignoring supplied device name: /dev/vda. Libvirt can't honour user-supplied dev names but nothing will actually happen. It is so because instance.root_device_name is set based on user specified device name in nova.compute.manager._default_block_device_names before driver's default_device_names_for_instance is called and user input is cleared, while bdm in nova.virt.libvirt.blockinfo.get_disk_mapping are updated taking into account instance.root_device_name. The problem is also that code generating device names for secondary devices is dependent on specified root_device_name that is according to ignoring logic should not be taken into account.
2015-08-19 13:42:21 OpenStack Infra nova: status Incomplete In Progress
2016-02-17 10:12:30 Martins Jakubovics bug added subscriber Martins Jakubovics
2016-02-17 16:22:35 Sean Dague nova: importance Undecided Medium
2016-03-30 08:22:52 OpenStack Infra nova: assignee Maxim Nestratov (mnestratov) Mikhail Feoktistov (mfeoktistov)
2016-08-26 08:54:43 MarkMielke bug added subscriber MarkMielke
2016-10-07 10:12:36 OpenStack Infra nova: assignee Mikhail Feoktistov (mfeoktistov) Maxim Nestratov (mnestratov)
2016-11-05 11:08:41 Dongwon Cho bug added subscriber Dongwon Cho