Title: Extra lsilogic SCSI controller on aarch64 causes last disk unrecognized · Issue #12090 · apache/cloudstack · GitHub
Open Graph Title: Extra lsilogic SCSI controller on aarch64 causes last disk unrecognized · Issue #12090 · apache/cloudstack
X Title: Extra lsilogic SCSI controller on aarch64 causes last disk unrecognized · Issue #12090 · apache/cloudstack
Description: problem Environment CloudStack Version: 4.20.1.0 CPU Architecture: aarch64 Hypervisor: KVM UEFI Configuration (relevant for aarch64 VM boot, from /etc/cloudstack/agent/uefi.properties): # CloudStack Agent UEFI Configuration for ARM64 # T...
Open Graph Description: problem Environment CloudStack Version: 4.20.1.0 CPU Architecture: aarch64 Hypervisor: KVM UEFI Configuration (relevant for aarch64 VM boot, from /etc/cloudstack/agent/uefi.properties): # CloudStac...
X Description: problem Environment CloudStack Version: 4.20.1.0 CPU Architecture: aarch64 Hypervisor: KVM UEFI Configuration (relevant for aarch64 VM boot, from /etc/cloudstack/agent/uefi.properties): # CloudStac...
Opengraph URL: https://github.com/apache/cloudstack/issues/12090
X: @github
Domain: patch-diff.githubusercontent.com
{"@context":"https://schema.org","@type":"DiscussionForumPosting","headline":"Extra lsilogic SCSI controller on aarch64 causes last disk unrecognized","articleBody":"### problem\n\n### Environment\n- CloudStack Version: 4.20.1.0\n- CPU Architecture: aarch64\n- Hypervisor: KVM\n- UEFI Configuration (relevant for aarch64 VM boot, from `/etc/cloudstack/agent/uefi.properties`):\n```\n# CloudStack Agent UEFI Configuration for ARM64\n# This file configures UEFI boot support for ARM64 virtual machines\n\n# Secure boot mode with Microsoft keys\nguest.nvram.template.secure=/usr/share/AAVMF/AAVMF_VARS.ms.fd\nguest.loader.secure=/usr/share/AAVMF/AAVMF_CODE.ms.fd\n\n# Secure boot mode without Microsoft keys\nguest.nvram.template.secboot=/usr/share/AAVMF/AAVMF_VARS.fd\nguest.loader.secboot=/usr/share/AAVMF/AAVMF_CODE.secboot.fd\n\n# Standard UEFI mode (default)\nguest.nvram.template.legacy=/usr/share/AAVMF/AAVMF_VARS.fd\nguest.loader.legacy=/usr/share/AAVMF/AAVMF_CODE.fd\n\n# No secure boot mode (explicitly disabled)\nguest.nvram.template.nosecboot=/usr/share/AAVMF/AAVMF_VARS.fd\nguest.loader.nosecboot=/usr/share/AAVMF/AAVMF_CODE.no-secboot.fd\n\n# NVRAM storage path\nguest.nvram.path=/var/lib/libvirt/qemu/nvram/\n```\n\n### Problem Description\nWhen attaching multiple disks to an aarch64 VM, CloudStack incorrectly adds an **extra lsilogic SCSI controller** after allocating virtio-scsi controllers for every 7 disks. This causes the **last disk** to be unrecognized after VM reboot.\n\n**Key Evidence:** The second SCSI controller switches from `virtio-scsi` to `lsilogic` after reboot.\n\n### Reproduction Steps\n1. Deploy an aarch64 VM with 5 disks → all recognized correctly under `virtio-scsi` controller\n2. Hot-add a 6th disk while VM running → temporarily works, creates second `virtio-scsi` controller\n3. Shutdown and restart the VM → second controller becomes `lsilogic`, 6th disk disappears\n\n### Expected Behavior\nAll disks assigned to `virtio-scsi` controllers, no `lsilogic` controller added.\n\n### Actual Behavior (with Evidence)\n```xml\nAfter reboot - WRONG\n\u003ccontroller type='scsi' index='1' model='lsilogic'\u003e\nShould be: \u003ccontroller type='scsi' index='1' model='virtio-scsi'\u003e\n```\n\n\n### Related Code\nPR #9823 (bug at the end of implementation)\n\n### Attachments\n```xml\nStep 1: Initial State (5 disks attached)\nroot@NODE159:/var/log/cloudstack/agent# virsh dumpxml i-2-971-VM | grep controller\n \u003caddress type='drive' controller='0' bus='0' target='0' unit='0'/\u003e\n \u003caddress type='drive' controller='0' bus='0' target='0' unit='1'/\u003e\n \u003caddress type='drive' controller='0' bus='0' target='0' unit='2'/\u003e\n \u003caddress type='drive' controller='0' bus='0' target='0' unit='4'/\u003e\n \u003caddress type='drive' controller='0' bus='0' target='0' unit='5'/\u003e\n \u003caddress type='drive' controller='0' bus='0' target='0' unit='6'/\u003e\n \u003ccontroller type='usb' index='0' model='qemu-xhci'\u003e\n \u003c/controller\u003e\n \u003ccontroller type='scsi' index='0' model='virtio-scsi'\u003e\n \u003c/controller\u003e\n \u003ccontroller type='pci' index='0' model='pcie-root'\u003e\n \u003c/controller\u003e\n \u003ccontroller type='virtio-serial' index='0'\u003e\n \u003c/controller\u003e\n \u003ccontroller type='pci' index='1' model='pcie-root-port'\u003e\n \u003c/controller\u003e\n \u003ccontroller type='pci' index='2' model='pcie-root-port'\u003e\n \u003c/controller\u003e\n \u003ccontroller type='pci' index='3' model='pcie-root-port'\u003e\n \u003c/controller\u003e\n \u003ccontroller type='pci' index='4' model='pcie-root-port'\u003e\n \u003c/controller\u003e\n \u003ccontroller type='pci' index='5' model='pcie-root-port'\u003e\n \u003c/controller\u003e\n \u003ccontroller type='pci' index='6' model='pcie-root-port'\u003e\n \u003c/controller\u003e\n \u003ccontroller type='pci' index='7' model='pcie-to-pci-bridge'\u003e\n \u003c/controller\u003e\n \u003ccontroller type='pci' index='8' model='pcie-root-port'\u003e\n \u003c/controller\u003e\n \u003caddress type='virtio-serial' controller='0' bus='0' port='1'/\u003e\n\nStep 2: Hot-add 6th disk while VM running,witch device id is 7\nroot@NODE159:/var/log/cloudstack/agent# virsh dumpxml i-2-971-VM | grep controller\n \u003caddress type='drive' controller='0' bus='0' target='0' unit='0'/\u003e\n \u003caddress type='drive' controller='0' bus='0' target='0' unit='1'/\u003e\n \u003caddress type='drive' controller='0' bus='0' target='0' unit='2'/\u003e\n \u003caddress type='drive' controller='0' bus='0' target='0' unit='4'/\u003e\n \u003caddress type='drive' controller='0' bus='0' target='0' unit='5'/\u003e\n \u003caddress type='drive' controller='0' bus='0' target='0' unit='6'/\u003e\n \u003caddress type='drive' controller='1' bus='0' target='0' unit='0'/\u003e\n \u003ccontroller type='usb' index='0' model='qemu-xhci'\u003e\n \u003c/controller\u003e\n \u003ccontroller type='scsi' index='0' model='virtio-scsi'\u003e\n \u003c/controller\u003e\n \u003ccontroller type='scsi' index='1' model='virtio-scsi'\u003e\n \u003c/controller\u003e\n \u003ccontroller type='pci' index='0' model='pcie-root'\u003e\n \u003c/controller\u003e\n \u003ccontroller type='virtio-serial' index='0'\u003e\n \u003c/controller\u003e\n \u003ccontroller type='pci' index='1' model='pcie-root-port'\u003e\n \u003c/controller\u003e\n \u003ccontroller type='pci' index='2' model='pcie-root-port'\u003e\n \u003c/controller\u003e\n \u003ccontroller type='pci' index='3' model='pcie-root-port'\u003e\n \u003c/controller\u003e\n \u003ccontroller type='pci' index='4' model='pcie-root-port'\u003e\n \u003c/controller\u003e\n \u003ccontroller type='pci' index='5' model='pcie-root-port'\u003e\n \u003c/controller\u003e\n \u003ccontroller type='pci' index='6' model='pcie-root-port'\u003e\n \u003c/controller\u003e\n \u003ccontroller type='pci' index='7' model='pcie-to-pci-bridge'\u003e\n \u003c/controller\u003e\n \u003ccontroller type='pci' index='8' model='pcie-root-port'\u003e\n \u003c/controller\u003e\n \u003caddress type='virtio-serial' controller='0' bus='0' port='1'/\u003e\nStep 3: Reboot VM\nroot@NODE159:/var/log/cloudstack/agent# virsh dumpxml i-2-971-VM | grep controller\n \u003caddress type='drive' controller='0' bus='0' target='0' unit='0'/\u003e\n \u003caddress type='drive' controller='0' bus='0' target='0' unit='1'/\u003e\n \u003caddress type='drive' controller='0' bus='0' target='0' unit='2'/\u003e\n \u003caddress type='drive' controller='0' bus='0' target='0' unit='4'/\u003e\n \u003caddress type='drive' controller='0' bus='0' target='0' unit='5'/\u003e\n \u003caddress type='drive' controller='0' bus='0' target='0' unit='6'/\u003e\n \u003caddress type='drive' controller='1' bus='0' target='0' unit='0'/\u003e\n \u003ccontroller type='usb' index='0' model='qemu-xhci'\u003e\n \u003c/controller\u003e\n \u003ccontroller type='scsi' index='0' model='virtio-scsi'\u003e\n \u003c/controller\u003e\n \u003ccontroller type='pci' index='0' model='pcie-root'\u003e\n \u003c/controller\u003e\n \u003ccontroller type='scsi' index='1' model='lsilogic'\u003e \u003c!-- BUG: Should be virtio-scsi --\u003e\n \u003c/controller\u003e\n \u003ccontroller type='virtio-serial' index='0'\u003e\n \u003c/controller\u003e\n \u003ccontroller type='pci' index='1' model='pcie-root-port'\u003e\n \u003c/controller\u003e\n \u003ccontroller type='pci' index='2' model='pcie-root-port'\u003e\n \u003c/controller\u003e\n \u003ccontroller type='pci' index='3' model='pcie-root-port'\u003e\n \u003c/controller\u003e\n \u003ccontroller type='pci' index='4' model='pcie-root-port'\u003e\n \u003c/controller\u003e\n \u003ccontroller type='pci' index='5' model='pcie-root-port'\u003e\n \u003c/controller\u003e\n \u003ccontroller type='pci' index='6' model='pcie-root-port'\u003e\n \u003c/controller\u003e\n \u003ccontroller type='pci' index='7' model='pcie-to-pci-bridge'\u003e\n \u003c/controller\u003e\n \u003ccontroller type='pci' index='8' model='pcie-root-port'\u003e\n \u003c/controller\u003e\n \u003caddress type='virtio-serial' controller='0' bus='0' port='1'/\u003e\nroot@NODE159:/var/log/cloudstack/agent# \n```\n\n### versions\n\n- CloudStack Version: 4.20.1.0\n- CPU Architecture: aarch64\n- Hypervisor: KVM\n\n### The steps to reproduce the bug\n\n1.Initial State 5 disks attached\n2.Hot-add 6th disk while VM running\n3.reboot VM\n...\n\n\u003cimg width=\"1483\" height=\"459\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/d662cb6b-5c97-4e76-878a-98a1d33c2245\" /\u003e\n\n\n### What to do about it?\n\n_No response_","author":{"url":"https://github.com/gw769","@type":"Person","name":"gw769"},"datePublished":"2025-11-18T09:03:36.000Z","interactionStatistic":{"@type":"InteractionCounter","interactionType":"https://schema.org/CommentAction","userInteractionCount":5},"url":"https://github.com/12090/cloudstack/issues/12090"}
| route-pattern | /_view_fragments/issues/show/:user_id/:repository/:id/issue_layout(.:format) |
| route-controller | voltron_issues_fragments |
| route-action | issue_layout |
| fetch-nonce | v2:3904a280-1d94-68f1-a314-adbb6da59276 |
| current-catalog-service-hash | 81bb79d38c15960b92d99bca9288a9108c7a47b18f2423d0f6438c5b7bcd2114 |
| request-id | 9734:2725AA:1326FC6:1A1861B:696E9CC1 |
| html-safe-nonce | b66f9d28dcbd66ce4d3c0a4f088c0569958d006f4e2652659b83f43c9570a560 |
| visitor-payload | eyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiI5NzM0OjI3MjVBQToxMzI2RkM2OjFBMTg2MUI6Njk2RTlDQzEiLCJ2aXNpdG9yX2lkIjoiODgyMjI4ODc3NjgzOTQ3MDI3MyIsInJlZ2lvbl9lZGdlIjoiaWFkIiwicmVnaW9uX3JlbmRlciI6ImlhZCJ9 |
| visitor-hmac | ee07edabc76ba62a3c13cca0dc781229815fcb1dca4dc00787019d4962928636 |
| hovercard-subject-tag | issue:3636954074 |
| github-keyboard-shortcuts | repository,issues,copilot |
| google-site-verification | Apib7-x98H0j5cPqHWwSMm6dNU4GmODRoqxLiDzdx9I |
| octolytics-url | https://collector.github.com/github/collect |
| analytics-location | / |
| fb:app_id | 1401488693436528 |
| apple-itunes-app | app-id=1477376905, app-argument=https://github.com/_view_fragments/issues/show/apache/cloudstack/12090/issue_layout |
| twitter:image | https://opengraph.githubassets.com/37bcdf75a0a23c27eef16ff5b06d1eb67d7c7238809bf45aa3131f7f26568327/apache/cloudstack/issues/12090 |
| twitter:card | summary_large_image |
| og:image | https://opengraph.githubassets.com/37bcdf75a0a23c27eef16ff5b06d1eb67d7c7238809bf45aa3131f7f26568327/apache/cloudstack/issues/12090 |
| og:image:alt | problem Environment CloudStack Version: 4.20.1.0 CPU Architecture: aarch64 Hypervisor: KVM UEFI Configuration (relevant for aarch64 VM boot, from /etc/cloudstack/agent/uefi.properties): # CloudStac... |
| og:image:width | 1200 |
| og:image:height | 600 |
| og:site_name | GitHub |
| og:type | object |
| og:author:username | gw769 |
| hostname | github.com |
| expected-hostname | github.com |
| None | fdad15fd2ad43212aa8b8be5f2c2725550f8374ceeeb154a999ad9145b43f3f7 |
| turbo-cache-control | no-preview |
| go-import | github.com/apache/cloudstack git https://github.com/apache/cloudstack.git |
| octolytics-dimension-user_id | 47359 |
| octolytics-dimension-user_login | apache |
| octolytics-dimension-repository_id | 9759448 |
| octolytics-dimension-repository_nwo | apache/cloudstack |
| octolytics-dimension-repository_public | true |
| octolytics-dimension-repository_is_fork | false |
| octolytics-dimension-repository_network_root_id | 9759448 |
| octolytics-dimension-repository_network_root_nwo | apache/cloudstack |
| turbo-body-classes | logged-out env-production page-responsive |
| disable-turbo | false |
| browser-stats-url | https://api.github.com/_private/browser/stats |
| browser-errors-url | https://api.github.com/_private/browser/errors |
| release | 27b23bc056eb973d350fc95afc848757edb9e7a9 |
| ui-target | full |
| theme-color | #1e2327 |
| color-scheme | light dark |
Links:
Viewport: width=device-width