[pve-devel] [PATCH v2 common 01/11] Make get_host_arch return raw uname entry

Stefan Reiter s.reiter at proxmox.com
Tue Oct 29 09:54:13 CET 2019


On 10/29/19 7:27 AM, Thomas Lamprecht wrote:
> On 10/28/19 12:59 PM, Stefan Reiter wrote:
>> The current version had only one user in LXC, so move the LXC-specific
>> code there to reuse this in QemuServer.
>>
>> Also cache, since the host's architecture can't change during runtime.
>>
>> Signed-off-by: Stefan Reiter <s.reiter at proxmox.com>
>> ---
>>   src/PVE/Tools.pm | 17 +++++------------
>>   1 file changed, 5 insertions(+), 12 deletions(-)
>>
>> diff --git a/src/PVE/Tools.pm b/src/PVE/Tools.pm
>> index 550da09..c9d37ec 100644
>> --- a/src/PVE/Tools.pm
>> +++ b/src/PVE/Tools.pm
>> @@ -47,6 +47,7 @@ safe_print
>>   trim
>>   extract_param
>>   file_copy
>> +get_host_arch
>>   O_PATH
>>   O_TMPFILE
>>   );
> 
> Oh, and you also never mention the export anywhere, if it was only
> used like once previously I'd guess that the usage of this does not
> explodes in the near future ^^ I'll let this is, but I'd like to not
> add everthing to the exporter, especially low use methods should be
> only added with good resaons (documented, f.e., in the commit
> message ;) )
> 

Noted. In this case I export it to not have to modify QemuServer more 
than necessary, since the function name was rather unambiguous to me.

>> @@ -1630,18 +1631,10 @@ sub readline_nointr {
>>       return $line;
>>   }
>>   
>> -sub get_host_arch {
>> -
>> -    my @uname = POSIX::uname();
>> -    my $machine = $uname[4];
>> -
>> -    if ($machine eq 'x86_64') {
>> -	return 'amd64';
>> -    } elsif ($machine eq 'aarch64') {
>> -	return 'arm64';
>> -    } else {
>> -	die "unsupported host architecture '$machine'\n";
>> -    }
>> +my $host_arch;
>> +sub get_host_arch() {
>> +    $host_arch = (POSIX::uname())[4] if !$host_arch;
>> +    return $host_arch;
>>   }
>>   
>>   # Devices are: [ (12 bits minor) (12 bits major) (8 bits minor) ]
>>
> 




More information about the pve-devel mailing list