XCP-ng
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Groups
    • Register
    • Login

    XCP-ng 8.3 updates announcements and testing

    Scheduled Pinned Locked Moved News
    681 Posts 57 Posters 682.2k Views 76 Watching
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • M
      manilx @gduperrey
      last edited by

      @gduperrey Restarted and the task persisted. Deleted it from the list.

      1 Reply Last reply
      Reply Quote 0
      • acebmxerA
        acebmxer
        last edited by acebmxer

        1 out of 3 pools at work failed rolling pool update.

        When I try to put host 2 into maintence mode to finish updates i get this error...

        Support Ticket - Ticket#7763405

        host.setMaintenanceMode
        {
          "id": "60701efd-089c-4822-97c0-1a1057f3f9aa",
          "maintenance": true
        }
        {
          "code": "VM_REQUIRES_SR",
          "params": [
            "OpaqueRef:841e7606-d545-cb71-f67c-e48b5114a1e8",
            "OpaqueRef:0f356ee4-62f7-9608-8be5-df68d9a5cbb2"
          ],
          "task": {
            "uuid": "a24f5565-b2cb-f392-8095-1beceb7a4a17",
            "name_label": "Async.host.evacuate",
            "name_description": "",
            "allowed_operations": [],
            "current_operations": {},
            "created": "20260828T19:57:29Z",
            "finished": "20260828T19:57:29Z",
            "status": "failure",
            "resident_on": "OpaqueRef:43c121e7-4ba4-193b-1e41-08c0f7e15690",
            "progress": 1,
            "type": "<none/>",
            "result": "",
            "error_info": [
              "VM_REQUIRES_SR",
              "OpaqueRef:841e7606-d545-cb71-f67c-e48b5114a1e8",
              "OpaqueRef:0f356ee4-62f7-9608-8be5-df68d9a5cbb2"
            ],
            "other_config": {},
            "subtask_of": "OpaqueRef:NULL",
            "subtasks": [],
            "backtrace": "(((process xapi)(filename ocaml/xapi/xapi_host.ml)(line 629))((process xapi)(filename hashtbl.ml)(line 159))((process xapi)(filename hashtbl.ml)(line 165))((process xapi)(filename hashtbl.ml)(line 170))((process xapi)(filename ocaml/xapi/xapi_host.ml)(line 625))((process xapi)(filename ocaml/libs/xapi-stdext/lib/xapi-stdext-pervasives/pervasiveext.ml)(line 24))((process xapi)(filename ocaml/libs/xapi-stdext/lib/xapi-stdext-pervasives/pervasiveext.ml)(line 39))((process xapi)(filename ocaml/xapi/rbac.ml)(line 228))((process xapi)(filename ocaml/xapi/rbac.ml)(line 238))((process xapi)(filename ocaml/xapi/server_helpers.ml)(line 78)))"
          },
          "message": "VM_REQUIRES_SR(OpaqueRef:841e7606-d545-cb71-f67c-e48b5114a1e8, OpaqueRef:0f356ee4-62f7-9608-8be5-df68d9a5cbb2)",
          "name": "XapiError",
          "stack": "XapiError: VM_REQUIRES_SR(OpaqueRef:841e7606-d545-cb71-f67c-e48b5114a1e8, OpaqueRef:0f356ee4-62f7-9608-8be5-df68d9a5cbb2)
            at Function.wrap (file:///usr/local/lib/node_modules/xo-server/node_modules/xen-api/_XapiError.mjs:16:12)
            at default (file:///usr/local/lib/node_modules/xo-server/node_modules/xen-api/_getTaskResult.mjs:13:29)
            at Xapi._addRecordToCache (file:///usr/local/lib/node_modules/xo-server/node_modules/xen-api/index.mjs:1229:24)
            at file:///usr/local/lib/node_modules/xo-server/node_modules/xen-api/index.mjs:1263:14
            at Array.forEach (<anonymous>)
            at Xapi._processEvents (file:///usr/local/lib/node_modules/xo-server/node_modules/xen-api/index.mjs:1253:12)
            at Xapi._watchEvents (file:///usr/local/lib/node_modules/xo-server/node_modules/xen-api/index.mjs:1460:14)"
        }
        

        SR are not connected to master host after reboot from updates. When try to connect them i get error...

        Screenshot 2026-08-28 160401.png

        pbd.connect
        {
          "id": "e96ec5d8-c70f-c877-4263-f2cf763e7048"
        }
        {
          "code": "SR_BACKEND_FAILURE_108",
          "params": [
            "",
            "Unable to detect an NFS service on this target.",
            ""
          ],
          "task": {
            "uuid": "5574bfe5-1874-35f8-f53b-c9fc1abaebb5",
            "name_label": "Async.PBD.plug",
            "name_description": "",
            "allowed_operations": [],
            "current_operations": {},
            "created": "20260828T20:03:19Z",
            "finished": "20260828T20:03:22Z",
            "status": "failure",
            "resident_on": "OpaqueRef:43c121e7-4ba4-193b-1e41-08c0f7e15690",
            "progress": 1,
            "type": "<none/>",
            "result": "",
            "error_info": [
              "SR_BACKEND_FAILURE_108",
              "",
              "Unable to detect an NFS service on this target.",
              ""
            ],
            "other_config": {},
            "subtask_of": "OpaqueRef:NULL",
            "subtasks": [],
            "backtrace": "(((process xapi)(filename ocaml/xapi-idl/storage/storage_interface.ml)(line 455))((process xapi)(filename src/lib/idl.ml)(line 558))((process xapi)(filename ocaml/xapi/storage_utils.ml)(line 148))((process xapi)(filename lib/backtrace.ml)(line 251))((process xapi)(filename ocaml/xapi/xapi_pbd.ml)(line 196))((process xapi)(filename ocaml/xapi/message_forwarding.ml)(line 141))((process xapi)(filename ocaml/libs/xapi-stdext/lib/xapi-stdext-pervasives/pervasiveext.ml)(line 24))((process xapi)(filename ocaml/libs/xapi-stdext/lib/xapi-stdext-pervasives/pervasiveext.ml)(line 39))((process xapi)(filename ocaml/xapi/message_forwarding.ml)(line 6061))((process xapi)(filename ocaml/xapi/rbac.ml)(line 228))((process xapi)(filename ocaml/xapi/rbac.ml)(line 238))((process xapi)(filename ocaml/xapi/server_helpers.ml)(line 78)))"
          },
          "message": "SR_BACKEND_FAILURE_108(, Unable to detect an NFS service on this target., )",
          "name": "XapiError",
          "stack": "XapiError: SR_BACKEND_FAILURE_108(, Unable to detect an NFS service on this target., )
            at Function.wrap (file:///usr/local/lib/node_modules/xo-server/node_modules/xen-api/_XapiError.mjs:16:12)
            at default (file:///usr/local/lib/node_modules/xo-server/node_modules/xen-api/_getTaskResult.mjs:13:29)
            at Xapi._addRecordToCache (file:///usr/local/lib/node_modules/xo-server/node_modules/xen-api/index.mjs:1229:24)
            at file:///usr/local/lib/node_modules/xo-server/node_modules/xen-api/index.mjs:1263:14
            at Array.forEach (<anonymous>)
            at Xapi._processEvents (file:///usr/local/lib/node_modules/xo-server/node_modules/xen-api/index.mjs:1253:12)
            at Xapi._watchEvents (file:///usr/local/lib/node_modules/xo-server/node_modules/xen-api/index.mjs:1460:14)"
        }
        

        Update - bad port on switch.......

        Update 2 - After updating synology to latest version i am no longer able to mount nfs 4.1 shares. I can not create one using 4.1. I will let me create with 4.0 not 4.1 How to remount NFS that were mounted as 4.1 now as 4.0?

        ALl VMS down at this location currently.

        Update 3 - Resolved... Synology update broke NFS 4.1. I had to ssh into synology and edit /etc/nfs/syno_nfs_conf and add nfs_minor_ver_enable=1 Now SR's mounted.

        Update 4 - Found Patch notes about NFS version change. -
        Version: 7.0.1-42218
        NFSv4.1 and related advanced functions (multipathing) are no longer supported on Synology NAS models with the following package architectures: Alpine, Alpine4k, armada38x, Avoton, Braswell, Bromolow, Cedarview, Grantley, Monaco. If you had previously enabled NFSv4 and NFSv4.1, the maximum NFS protocol is set to NFSv4 by default after the update. For more information about the package architecture of your model, please refer to this article.

        Our unit - RS1219+ Intel Atom C2538 Avoton

        gduperreyG 1 Reply Last reply
        Reply Quote 0
        • X
          XCP-ng-JustGreat
          last edited by

          I deferred applying the preview patches this time in order to try my luck again with RPU. Unfortunately, it did not work for me again as it has not in the past. My results are similar to others here: primary host patch application went fine including the reboot. However, once it began doing a secondary host, it started throwing errors e.g. CANNOT_EVACUATE_HOST and VM_REQUIRES_SR etc. However, manually putting the host in maintenance mode from the GUI evacuated each host just fine and I was able to apply the patches and reboot each subsequent host from the XO GUI. Also, as with others here, the RPU task hung in the task list and even a reboot of the XO VM would not clear it forcing me to delete the task using xo-cli e.g. xo-cli rest del tasks.
          ENVIRONMENT: Home lab consisting of 4 x Dell OptiPlex 7040 i7-6700 SFF hosts, 48GB RAM each, 10 Gbps storage connections to a TrueNAS home-built NAS via NFS and XO from source (XOS) using @ronivay build script on AlmaLinux 10.2 minimal install VM with XO commit 6a441 compiled on 2026-08-28 from master branch. FWIW, RPU functionality remains unavailable to me, though obviously, this is not a showstopper for a 4 x host home lab pool. If there is anything I can do to help resolve this, please let me know as I remain an enthusiastic proponent of the Vates virtualization stack.

          gduperreyG 1 Reply Last reply
          Reply Quote 0
          • gduperreyG
            gduperrey Vates πŸͺ XCP-ng Team @acebmxer
            last edited by

            Hello @acebmxer,

            I can see from the support ticket and the summary that the issue appears to be resolved and was linked to the NFS update on the Synology. It’s great that you were able to find the solution.

            1 Reply Last reply
            Reply Quote 0
            • gduperreyG
              gduperrey Vates πŸͺ XCP-ng Team @XCP-ng-JustGreat
              last edited by

              Hello @XCP-ng-JustGreat,

              I cannot comment on RPU issues via XO. I would recommend creating a new topic to report the problem directly to the XO team so they can analyze it.

              As you can see, we recommend validating updates via the command line directly on XCP-ng before releasing them. That is a different scenario.

              However, if several of you are experiencing RPU issues with XO, a dedicated topic will allow that team to investigate the situation and consult other teams if necessary. This would ensure the issue is better addressed and analyzed πŸ™‚

              M 1 Reply Last reply
              Reply Quote 0
              • M
                manilx @gduperrey
                last edited by

                @gduperrey https://xcp-ng.org/forum/topic/12439/rpu-issue

                1 Reply Last reply
                Reply Quote 1
                • stormiS
                  stormi Vates πŸͺ XCP-ng Team @mthird
                  last edited by

                  @mthird said:

                  Spoke to soon. While the updates succeeded, one of the nodes is rebooting every few minutes due to an HA self-fence.

                  Could you open a dedicated thread and ping me there?

                  1 Reply Last reply
                  Reply Quote 0
                  • gduperreyG
                    gduperrey Vates πŸͺ XCP-ng Team
                    last edited by

                    We have just released security updates for xen and blktap. Full details are available on the blog: https://xcp-ng.org/blog/2026/09/08/september-2026-security-updates-1-for-xcp-ng-8-3-lts/

                    B 1 Reply Last reply
                    Reply Quote 2
                    • B
                      bufanda @gduperrey
                      last edited by

                      @gduperrey Installed on all pools. No issues so far.

                      1 Reply Last reply
                      Reply Quote 1
                      • leroyjL
                        leroyj @TeddyAstie
                        last edited by

                        Hi @TeddyAstie,
                        I use a Ryzen 7 5875u CPU (Zen3) shipped in 2022.
                        The sensor/K10temp approach doesn't work (nothing detected).
                        AFAIK Zen3 temp support was introduced around the. kernel 5.14 late 2021.
                        If it's not supported yet, I guess that it won't, right?
                        Is there another solution to monitor temp except to wait for a future xcp-ng v9 version?

                        I was wondering if the amd cpu temp be probed the way you did for the intel cpu.
                        (Disclamer the following patch is a first draft AI generated because I don't have the skills. I share it because even I can spot it's not perfect as is, it doesn't look bloated)

                        diff --git a/xen/arch/x86/include/asm/msr-index.h b/xen/arch/x86/include/asm/msr-index.h
                        index df52587c85..9d8f7bd4d1 100644
                        --- a/xen/arch/x86/include/asm/msr-index.h
                        +++ b/xen/arch/x86/include/asm/msr-index.h
                        @@ -115,6 +115,9 @@
                         #define MCU_OPT_CTRL_GDS_MIT_DIS       (_AC(1, ULL) << 4)
                         #define MCU_OPT_CTRL_GDS_MIT_LOCK      (_AC(1, ULL) << 5)
                         
                        +/* AMD Hardware Thermal Control */
                        +#define MSR_AMD_HARDWARE_THERMAL_CONTROL 0xc0010292
                        +
                         #define MSR_FRED_RSP_SL0               0x000001cc
                         #define MSR_FRED_RSP_SL1               0x000001cd
                         #define MSR_FRED_RSP_SL2               0x000001ce
                        diff --git a/xen/arch/x86/platform_hypercall.c b/xen/arch/x86/platform_hypercall.c
                        index 79bb99e0b6..e84a2ddd3e 100644
                        --- a/xen/arch/x86/platform_hypercall.c
                        +++ b/xen/arch/x86/platform_hypercall.c
                        @@ -86,6 +86,13 @@ static bool msr_read_allowed(unsigned int msr)
                         
                             case MSR_MCU_OPT_CTRL:
                                 return cpu_has_srbds_ctrl;
                        +
                        +    /* Intel MSRs (From Vates Patch) */
                        +    case MSR_IA32_THERM_STATUS:
                        +    case MSR_IA32_TEMPERATURE_TARGET:
                        +        return boot_cpu_data.x86_vendor == X86_VENDOR_INTEL;
                        +        
                        +    /* AMD MSR */
                        +    case MSR_AMD_HARDWARE_THERMAL_CONTROL:
                        +        return boot_cpu_data.x86_vendor == X86_VENDOR_AMD;
                             }
                         
                             if ( ppin_msr && msr == ppin_msr )
                        diff --git a/tools/misc/xenpm.c b/tools/misc/xenpm.c
                        index 3a228c2..f9b8c71 100644
                        --- a/tools/misc/xenpm.c
                        +++ b/tools/misc/xenpm.c
                        @@ -1553,6 +1554,81 @@ void get_core_temp(int argc, char *argv[])
                         {
                             xc_physinfo_t physinfo = { 0 };
                             int i, max_cpu_nr;
                        +    bool is_amd = false;
                        +    bool is_intel = false;
                             
                             if ( argc > 0 )
                             {
                        -        fprintf(stderr, "Usage: xenpm get-core-temp\n");
                        +        fprintf(stderr, "Usage: xenpm get-core-temp\n"
                        +                        "       (Supports Intel via TjMax and AMD via HTC)\n");
                                 exit(EINVAL);
                             }
                         
                             if ( xc_physinfo(xc_handle, &physinfo) )
                             {
                                 fprintf(stderr, "Failed to get xc_physinfo. Err: %s\n", strerror(errno));
                                 exit(EINVAL);
                             }
                             max_cpu_nr = physinfo.max_cpu_id + 1;
                         
                        +    /* Probe CPU 0 to determine vendor based on allowed MSRs */
                        +    xc_resource_op_t probe_intel = {
                        +        .cpu = 0,
                        +        .cmd = XEN_RESOURCE_OP_read_msr,
                        +        .u.msr = { .msr = 0x19c } /* MSR_IA32_THERM_STATUS */
                        +    };
                        +    xc_resource_op_t probe_amd = {
                        +        .cpu = 0,
                        +        .cmd = XEN_RESOURCE_OP_read_msr,
                        +        .u.msr = { .msr = 0xc0010292 } /* MSR_AMD_HARDWARE_THERMAL_CONTROL */
                        +    };
                        +
                        +    if ( xc_resource_op(xc_handle, 1, &probe_intel) == 0 )
                        +        is_intel = true;
                        +    else if ( xc_resource_op(xc_handle, 1, &probe_amd) == 0 )
                        +        is_amd = true;
                        +    else
                        +    {
                        +        fprintf(stderr, "Error: Current CPU architecture is not supported for temperature reading.\n");
                        +        exit(ENOTSUP);
                        +    }
                        +
                             printf("CPU\tCurrent Temperature\n");
                             for ( i = 0; i < max_cpu_nr; i++ )
                             {
                        -        /* 
                        -         * ... Existing Vates Intel logic ... 
                        -         * (Reading MSR_IA32_TEMPERATURE_TARGET and MSR_IA32_THERM_STATUS)
                        -         */
                        +        if ( is_intel )
                        +        {
                        +            /* --- INTEL LOGIC (Vates implementation) --- */
                        +            xc_resource_op_t op_tjmax = { .cpu = i, .cmd = XEN_RESOURCE_OP_read_msr, .u.msr = { .msr = 0x1a2 } };
                        +            xc_resource_op_t op_therm = { .cpu = i, .cmd = XEN_RESOURCE_OP_read_msr, .u.msr = { .msr = 0x19c } };
                        +            
                        +            if ( xc_resource_op(xc_handle, 1, &op_tjmax) || xc_resource_op(xc_handle, 1, &op_therm) )
                        +                continue;
                        +                
                        +            uint32_t tjmax = (op_tjmax.u.msr.value >> 16) & 0xFF;
                        +            uint32_t readout = (op_therm.u.msr.value >> 16) & 0x7F;
                        +            
                        +            printf("%d\t%d C\n", i, tjmax - readout);
                        +        }
                        +        else if ( is_amd )
                        +        {
                        +            /* --- AMD LOGIC --- */
                        +            xc_resource_op_t op_amd = {
                        +                .cpu = i,
                        +                .cmd = XEN_RESOURCE_OP_read_msr,
                        +                .u.msr = { .msr = 0xc0010292 }
                        +            };
                        +
                        +            if ( xc_resource_op(xc_handle, 1, &op_amd) )
                        +                continue; /* Skip offline/unavailable CPUs */
                        +
                        +            uint64_t msr_val = op_amd.u.msr.value;
                        +            
                        +            /* Extract CurTmp (bits [31:21]) and multiply by 0.125Β°C */
                        +            uint32_t cur_tmp_raw = (msr_val >> 21) & 0x7FF;
                        +            float temp_c = cur_tmp_raw * 0.125;
                        +
                        +            printf("%d\t%.2f C\n", i, temp_c);
                        +        }
                             }
                         }
                        
                        1 Reply Last reply
                        Reply Quote 0

                        Hello! It looks like you're interested in this conversation, but you don't have an account yet.

                        Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.

                        With your input, this post could be even better πŸ’—

                        Register Login
                        • First post
                          Last post