[LITMUS^RT] prop/many-cpu-migration
Glenn Elliott
gelliott at cs.unc.edu
Tue May 20 03:27:01 CEST 2014
Hi Everyone,
Björn stumbled upon a bug in the code I added to map between CPUs and clusters/partitions (aka ‘domains’). The problem arrises when the Linux kernel prints cpumasks larger than 32 bits to /proc/litmus/cpus/* and /proc/litmus/domains/*. Namely, the kernel inserts ‘,’ every eight hex characters (32 bits). I have posted a patch to prop/many-cpu-migration to parse these strings correctly. Please review the code. Also, could someone please try it out on a system with more than 32 CPUs (or better, more than 64 CPUs)? Even though I compile with NR_CPUS = 4096, I can’t get cpumask_scnprintf() to print a data for more than 64 bits.
Note #1: libtlitmus code now supports 4096 bits (or CPUs). However, looking at the code in litmus_mapping_proc_show(), I believe the output to proc is 256 bits.
Note #2: This branch also includes a minor open() fix for DFLP. The lock test won’t compile without the fix (GCC 4.8.1 on Ubuntu 13.10).
Thanks,
Glenn
More information about the litmus-dev
mailing list