From e0a6ec7eb5e1cfe1c2430ed4f3b6cf56a0ac0fdb Mon Sep 17 00:00:00 2001 From: alxndrv <> Date: Wed, 12 Feb 2025 19:40:34 +0200 Subject: [PATCH] `lscpu`: Add support for CPU byte order --- src/uu/lscpu/src/lscpu.rs | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/uu/lscpu/src/lscpu.rs b/src/uu/lscpu/src/lscpu.rs index bdeb776..7b12734 100644 --- a/src/uu/lscpu/src/lscpu.rs +++ b/src/uu/lscpu/src/lscpu.rs @@ -94,6 +94,15 @@ pub fn uumain(args: impl uucore::Args) -> UResult<()> { arch_info.add_child(CpuInfo::new("Address sizes", &addr_sizes, None)) } + if let Ok(byte_order) = fs::read_to_string("/sys/kernel/cpu_byteorder") { + match byte_order.trim() { + "big" => arch_info.add_child(CpuInfo::new("Byte Order", "Big Endian", None)), + "little" => arch_info.add_child(CpuInfo::new("Byte Order", "Little Endian", None)), + _ => eprintln!("Unrecognised Byte Order: {}", byte_order) + + } + } + cpu_infos.push(arch_info); // TODO: This is currently quite verbose and doesn't strictly respect the hierarchy of `/proc/cpuinfo` contents