lists.openwall.net | lists / announce owl-users owl-dev john-users john-dev passwdqc-users yescrypt popa3d-users / oss-security kernel-hardening musl sabotage tlsify passwords / crypt-dev xvendor / Bugtraq Full-Disclosure linux-kernel linux-netdev linux-ext4 linux-hardening linux-cve-announce PHC | |
Open Source and information security mailing list archives
| ||
|
Date: Mon, 20 Apr 2015 21:11:00 -0700 From: Guenter Roeck <linux@...ck-us.net> To: Aaro Koskinen <aaro.koskinen@....fi> CC: linux-kernel@...r.kernel.org, Rusty Russell <rusty@...tcorp.com.au>, Ralf Baechle <ralf@...ux-mips.org>, Florian Fainelli <f.fainelli@...il.com>, linux-mips@...ux-mips.org Subject: Re: mips build failures due to commit 8dd928915a73 (mips: fix up obsolete cpu function usage) On 04/20/2015 02:09 PM, Aaro Koskinen wrote: > Hi, > > On Mon, Apr 20, 2015 at 12:40:28PM -0700, Guenter Roeck wrote: >> the upstream kernel fails to build mips:nlm_xlp_defconfig, >> mips:nlm_xlp_defconfig, mips:cavium_octeon_defconfig, and possibly >> other targets, with errors such as >> >> arch/mips/kernel/smp.c:211:2: error: >> passing argument 2 of 'cpumask_set_cpu' discards 'volatile' qualifier >> from pointer target type >> arch/mips/kernel/process.c:52:2: error: >> passing argument 2 of 'cpumask_test_cpu' discards 'volatile' qualifier >> from pointer target type >> arch/mips/cavium-octeon/smp.c:242:2: error: >> passing argument 2 of 'cpumask_clear_cpu' discards 'volatile' qualifier >> from pointer target type >> >> The problem was introduced with commit 8dd928915a73 (" mips: fix up >> obsolete cpu function usage"). I would send a patch to fix it, but I >> am not sure if removing 'volatile' from the variable declaration(s) >> would be a good idea. > > I think removing volatile from cpu_callin_map declaration should be OK, > since test_cpu (only reader) uses test_bit which takes care of it: > > static inline int test_bit(int nr, const volatile unsigned long *addr) > I ran two tests with nlm_xlp_defconfig: - add volatile to the second argument of cpumask_set_cpu() and cpumask_test_cpu(): vmlinux image size 194664946 - remove volatile from cpu_callin_map: vmlinux image size 194664066 Given that, I am not sure I understand the impact of removing volatile from cpu_callin_map. Maybe it is just better optimization without volatile. Maybe there is no impact. Maybe the use of volatile is wrong to start with ('Volatile Considered Harmful' comes into mind). Maybe the use of volatile for cpu_callin_map is wrong for other architectures as well (powerpc, ia64). Either case, I don't know to code well enough to make this call. Guenter -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@...r.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists