Pull bitmap updates from Yury Norov: - cpumask_next_wrap() rework (me) - GENMASK() simplification (I Hsin) - rust bindings for cpumasks (Viresh and me) - scattered cleanups (Andy, Tamir, Vincent, Ignacio and Joel) * tag 'bitmap-for-6.15' of https://github.com/norov/linux: (22 commits) cpumask: align text in comment riscv: fix test_and_{set,clear}_bit ordering documentation treewide: fix typo 'unsigned __init128' -> 'unsigned __int128' MAINTAINERS: add rust bindings entry for bitmap API rust: Add cpumask helpers uapi: Revert "bitops: avoid integer overflow in GENMASK(_ULL)" cpumask: drop cpumask_next_wrap_old() PCI: hv: Switch hv_compose_multi_msi_req_get_cpu() to using cpumask_next_wrap() scsi: lpfc: rework lpfc_next_{online,present}_cpu() scsi: lpfc: switch lpfc_irq_rebalance() to using cpumask_next_wrap() s390: switch stop_machine_yield() to using cpumask_next_wrap() padata: switch padata_find_next() to using cpumask_next_wrap() cpumask: use cpumask_next_wrap() where appropriate cpumask: re-introduce cpumask_next{,_and}_wrap() cpumask: deprecate cpumask_next_wrap() powerpc/xmon: simplify xmon_batch_next_cpu() ibmvnic: simplify ibmvnic_set_queue_affinity() virtio_net: simplify virtnet_set_affinity() objpool: rework objpool_pop() cpumask: add for_each_{possible,online}_cpu_wrap ...
Showing the changes to include/uapi/linux (2 of 23 files). Show all
Unified · Split
| @@ -4,13 +4,9 @@ · 3 unmodified lines | |||
| 4 | #ifndef _UAPI_LINUX_BITS_H | 4 | #ifndef _UAPI_LINUX_BITS_H |
| 5 | #define _UAPI_LINUX_BITS_H | 5 | #define _UAPI_LINUX_BITS_H |
| 6 | 6 | ||
| 7 | #define __GENMASK(h, l) \ | 7 | #define __GENMASK(h, l) (((~_UL(0)) << (l)) & (~_UL(0) >> (BITS_PER_LONG - 1 - (h)))) |
| 8 | (((~_UL(0)) - (_UL(1) << (l)) + 1) & \ | ||
| 9 | (~_UL(0) >> (__BITS_PER_LONG - 1 - (h)))) | ||
| 10 | 8 | ||
| 11 | #define __GENMASK_ULL(h, l) \ | 9 | #define __GENMASK_ULL(h, l) (((~_ULL(0)) << (l)) & (~_ULL(0) >> (BITS_PER_LONG_LONG - 1 - (h)))) |
| 12 | (((~_ULL(0)) - (_ULL(1) << (l)) + 1) & \ | ||
| 13 | (~_ULL(0) >> (__BITS_PER_LONG_LONG - 1 - (h)))) | ||
| 14 | 10 | ||
| 15 | #define __GENMASK_U128(h, l) \ | 11 | #define __GENMASK_U128(h, l) \ |
| 16 | ((_BIT128((h)) << 1) - (_BIT128(l))) | 12 | ((_BIT128((h)) << 1) - (_BIT128(l))) |
| @@ -33,7 +33,7 @@ · 32 unmodified lines | |||
| 33 | * Missing asm support | 33 | * Missing asm support |
| 34 | * | 34 | * |
| 35 | * __BIT128() would not work in the asm code, as it shifts an | 35 | * __BIT128() would not work in the asm code, as it shifts an |
| 36 | * 'unsigned __init128' data type as direct representation of | 36 | * 'unsigned __int128' data type as direct representation of |
| 37 | * 128 bit constants is not supported in the gcc compiler, as | 37 | * 128 bit constants is not supported in the gcc compiler, as |
| 38 | * they get silently truncated. | 38 | * they get silently truncated. |
| 39 | * | 39 | * |