mirror of
https://github.com/edk2-porting/linux-next.git
synced 2024-12-14 16:23:51 +08:00
cpumask: Omit terminating null byte in cpumap_print_{list,bitmask}_to_buf
The changes in the patch series [1] introduced a terminating null byte
when reading from cpulist or cpumap sysfs files, for example:
$ xxd /sys/devices/system/node/node0/cpulist
00000000: 302d 310a 00 0-1..
Before this change, the output looked as follows:
$ xxd /sys/devices/system/node/node0/cpulist
00000000: 302d 310a 0-1.
Fix this regression by excluding the terminating null byte from the
returned length in cpumap_print_list_to_buf and
cpumap_print_bitmask_to_buf.
[1] https://lore.kernel.org/all/20210806110251.560-1-song.bao.hua@hisilicon.com/
Fixes: 1fae562983
("cpumask: introduce cpumap_print_list/bitmask_to_buf to support large bitmask and list")
Acked-by: Barry Song <song.bao.hua@hisilicon.com>
Acked-by: Yury Norov <yury.norov@gmail.com>
Signed-off-by: Tobias Klauser <tklauser@distanz.ch>
Link: https://lore.kernel.org/r/20210916222705.13554-1-tklauser@distanz.ch
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
af505cad95
commit
c86a2d9058
@ -996,14 +996,15 @@ cpumap_print_to_pagebuf(bool list, char *buf, const struct cpumask *mask)
|
||||
* cpumask; Typically used by bin_attribute to export cpumask bitmask
|
||||
* ABI.
|
||||
*
|
||||
* Returns the length of how many bytes have been copied.
|
||||
* Returns the length of how many bytes have been copied, excluding
|
||||
* terminating '\0'.
|
||||
*/
|
||||
static inline ssize_t
|
||||
cpumap_print_bitmask_to_buf(char *buf, const struct cpumask *mask,
|
||||
loff_t off, size_t count)
|
||||
{
|
||||
return bitmap_print_bitmask_to_buf(buf, cpumask_bits(mask),
|
||||
nr_cpu_ids, off, count);
|
||||
nr_cpu_ids, off, count) - 1;
|
||||
}
|
||||
|
||||
/**
|
||||
@ -1018,7 +1019,7 @@ cpumap_print_list_to_buf(char *buf, const struct cpumask *mask,
|
||||
loff_t off, size_t count)
|
||||
{
|
||||
return bitmap_print_list_to_buf(buf, cpumask_bits(mask),
|
||||
nr_cpu_ids, off, count);
|
||||
nr_cpu_ids, off, count) - 1;
|
||||
}
|
||||
|
||||
#if NR_CPUS <= BITS_PER_LONG
|
||||
|
Loading…
Reference in New Issue
Block a user