PowerFlex 4.X Firmware Update Fails With Invalid Byte Sequence In US-ASCII

Summary: Firmware Update fails with invalid byte sequence in US-ASCII.

This article applies to This article does not apply to This article is not tied to any specific product. Not all product versions are identified in this article.

Symptoms

Scenario

The cluster was undergoing a Firmware upgrade performed using the Resource Group.

Symptoms

The deployment.log from the Job-ID reports the firmware update failed, and the playbook is running. Note that the command in the playbook is set to run "/usr/sbin/sysctl -p":

ERROR [2024-01-25T20:21:33.358478] 25824: service_deployment.rb:6084:in `process_firmware_update': Encountered an error during firmware update: ArgumentError: invalid byte sequence in US-ASCII
["org/jruby/RubyString.java:4727:in `scan'", "/opt/asm-deployer/lib/asm/provider/elementmanager/scaleio.rb:9762:in `update_sysctl_parameter'", "/opt/asm-deployer/lib/asm/service_deployment.rb:5909:in `block in process_firmware_update'", "org/jruby/RubyArray.java:1865:in `each'", "/opt/asm-deployer/lib/asm/service_deployment.rb:5731:in `process_firmware_update'", "/opt/asm-deployer/lib/asm/service_deployment.rb:504:in `process'", "/opt/asm-deployer/lib/asm.rb:369:in `block in process_deployment'", "org/jruby/RubyArray.java:1907:in `each_slice'", "/opt/asm-deployer/lib/asm.rb:351:in `block in process_deployment'", "/opt/dependencies/dell-asm-util/lib/asm/util.rb:22:in `block in execute_async'"]
...
INFO  [2024-01-25T20:22:45.017056] 25824: service_deployment.rb:1795:in `process_ansible_playbook': Starting processing playbook: [{"hosts"=>"all", "become"=>true, "vars"=>{"overcommit_ratio"=>100, "overcommit_memory"=>2}, "tasks"=>[{"name"=>"Replace unvalid values in sysctl conf", "replace"=>{"path"=>"/etc/sysctl.conf", "regexp"=>"^net.ipv4.conf.(ens192.log_martians.*)$", "replace"=>"#net.ipv4.conf.\\1 # PFXM REMOVED INVALID OPTION"}}, {"name"=>"Replace unvalid values in sysctl conf", "replace"=>{"path"=>"/etc/sysctl.conf", "regexp"=>"^net.ipv4.conf.(ens32.log_martians.*)$", "replace"=>"#net.ipv4.conf.\\1 # PFXM REMOVED INVALID OPTION"}}, {"name"=>"update threshold1", "ansible.posix.sysctl"=>{"name"=>"net.ipv4.neigh.default.gc_thresh1", "value"=>8192}}, {"name"=>"update threshold2", "ansible.posix.sysctl"=>{"name"=>"net.ipv4.neigh.default.gc_thresh2", "value"=>16384}}, {"name"=>"update threshold3", "ansible.posix.sysctl"=>{"name"=>"net.ipv4.neigh.default.gc_thresh3", "value"=>32768}}, {"name"=>"Update overcommit ratio for SDS", "ansible.posix.sysctl"=>{"name"=>"vm.overcommit_ratio", "value"=>"{{ overcommit_ratio }}"}}, {"name"=>"Update overcommit_memory ratio for SDS", "ansible.posix.sysctl"=>{"name"=>"vm.overcommit_memory", "value"=>"{{ overcommit_memory }}"}}, {"name"=>"Apply sysctl changes", "command"=>{"argv"=>["
]}}]}] with inventory:

... When running the command directly on the node, the following error may be seen:

[root@node3 etc]# /usr/sbin/sysctl -p
...
sysctl: /etc/sysctl.conf(91): invalid syntax, continuing...

 

Impact

The Firmware update is not able to proceed on the affected node.

Cause

Root Cause

The issue stems from a non-ASCII or special character in the sysctl.conf file, which is not compatible with the expected US-ASCII character encoding used during the sysctl processing. When the system attempts to read and apply the configurations from sysctl.conf, it encounters this invalid character sequence, leading to an "invalid byte sequence in US-ASCII" error. The specific reason for this character's inclusion remains unclear. 

Resolution

Workaround

1- Back up the original sysctl.conf file on the affected node:

 cp /etc/sysctl.conf /etc/sysctl.conf.backup

2- Copy a sysctl.conf file from a node where it is known to be functioning correctly:

 scp /etc/sysctl.conf root@:/etc/sysctl.conf

3- Apply the new configuration on the affected node:

 /usr/sbin/sysctl -p

4- Ensure that the command completes successfully without any "invalid syntax" errors.

5- Once the above steps are completed and verified, re-initiate the firmware update process using the Resource Group.

 

Impacted Versions 

PFxM 4.5.1.1 and lower

Fixed In Version

PFxM 4.5.2

Affected Products

PowerFlex rack, VxFlex Ready Nodes, PowerFlex custom node, PowerFlex appliance connectivity, PowerFlex appliance R650, PowerFlex appliance R6525, PowerFlex appliance R660, PowerFlex appliance R6625, Powerflex appliance R750, PowerFlex appliance R760 , PowerFlex appliance R7625, PowerFlex appliance R640, PowerFlex appliance R740XD, PowerFlex appliance R7525, PowerFlex appliance R840 ...
Article Properties
Article Number: 000221574
Article Type: Solution
Last Modified: 10 Feb 2025
Version:  2
Find answers to your questions from other Dell users
Support Services
Check if your device is covered by Support Services.