From: TanZheng Date: Thu, 28 May 2026 06:00:50 +0000 (+0800) Subject: ata: ahci: use hweight_long() to count port_map bits X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=f80cea847028bb9eb1149badebf9f142d96b2e8b;p=thirdparty%2Fkernel%2Fstable.git ata: ahci: use hweight_long() to count port_map bits Replace the open loop used to calculate the number of set bits in the port mapping with the `hweight_long()` function, which simplifies the code without altering its functionality. Signed-off-by: TanZheng Reviewed-by: Damien Le Moal Reviewed-by: Hannes Reinecke Signed-off-by: Niklas Cassel --- diff --git a/drivers/ata/libahci.c b/drivers/ata/libahci.c index 0c5e5b29bce4..e0af4b5716b3 100644 --- a/drivers/ata/libahci.c +++ b/drivers/ata/libahci.c @@ -552,11 +552,7 @@ void ahci_save_initial_config(struct device *dev, struct ahci_host_priv *hpriv) /* cross check port_map and cap.n_ports */ if (port_map) { - int map_ports = 0; - - for (i = 0; i < AHCI_MAX_PORTS; i++) - if (port_map & (1 << i)) - map_ports++; + int map_ports = hweight_long(port_map); /* If PI has more ports than n_ports, whine, clear * port_map and let it be generated from n_ports.