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
| ||
|
Message-Id: <1264432935-10453-1-git-send-email-tj@kernel.org> Date: Tue, 26 Jan 2010 00:22:07 +0900 From: Tejun Heo <tj@...nel.org> To: linux-kernel@...r.kernel.org, axboe@...nel.dk, rusty@...tcorp.com.au, akpm@...ux-foundation.org, ebiederm@...ssion.com, tytso@....edu, Trond.Myklebust@...app.com, aelder@....com, hch@...radead.org, viro@...iv.linux.org.uk, davem@...emloft.net, netdev@...r.kernel.org, x86@...nel.org, mingo@...hat.com, fweisbec@...il.com, dan.j.williams@...el.com, borislav.petkov@....com, ying.huang@...el.com, lenb@...nel.org, neilb@...e.de, cl@...ux-foundation.org Subject: [PATCHSET] percpu: add __percpu sparse annotations This patchset adds __percpu sparse annotations to all percpu users covered by x86_64 allmodconfig. __percpu annotation teaches sparse that percpu variables live in a separate address space and can't be accessed directly without going through percpu accessors. This allows detection of most percpu access mistakes involving both static and dyanmic percpu variables. This patchset contains the following eight patches. 0001-percpu-add-__percpu-sparse-annotations-to-core-kerne.patch 0002-percpu-add-__percpu-sparse-annotations-to-fs.patch 0003-percpu-add-__percpu-sparse-annotations-to-net.patch 0004-percpu-add-__percpu-sparse-annotations-to-net-driver.patch 0005-percpu-add-__percpu-sparse-annotations-to-x86.patch 0006-percpu-add-__percpu-sparse-annotations-to-trace.patch 0007-percpu-add-__percpu-sparse-annotations-to-hw_breakpo.patch 0008-percpu-add-__percpu-sparse-annotations-to-what-s-lef.patch As these annotations are for sparse, none of the above patches affects normal kernel build and most of the conversions are straight-forward and trivial. There are a few places where the conversion isn't completely straight-forward (but still fairly trivial). Those are mentioned in each patch description. I can route the patch through percpu and conflict resolution, if necessary, wouldn't be difficult at all for these changes. If anyone wants to route one of these patches through a different tree, please let me know. All that's necessary would be adding dummy __percpu definition to the patch. If nobody objects, I'll push these into percpu tree in three or four days. Thanks. arch/x86/include/asm/msr.h | 12 ++++--- arch/x86/kernel/acpi/cstate.c | 2 - arch/x86/kernel/cpu/common.c | 2 - arch/x86/kernel/cpu/cpufreq/acpi-cpufreq.c | 2 - arch/x86/lib/msr-smp.c | 8 +++-- arch/x86/lib/msr.c | 6 +-- crypto/cryptd.c | 2 - drivers/acpi/processor_perflib.c | 2 - drivers/dma/dmaengine.c | 2 - drivers/edac/amd64_edac.c | 2 - drivers/md/raid5.c | 2 - drivers/md/raid5.h | 2 - drivers/net/chelsio/sge.c | 2 - drivers/net/loopback.c | 16 +++++----- drivers/net/macvlan.c | 2 - drivers/net/veth.c | 4 +- fs/ext4/ext4.h | 2 - fs/nfs/iostat.h | 4 +- fs/xfs/xfs_mount.h | 2 - include/acpi/processor.h | 2 - include/linux/blktrace_api.h | 4 +- include/linux/dmaengine.h | 2 - include/linux/ftrace_event.h | 4 +- include/linux/genhd.h | 2 - include/linux/hw_breakpoint.h | 8 ++--- include/linux/kexec.h | 2 - include/linux/mmzone.h | 2 - include/linux/module.h | 2 - include/linux/mount.h | 2 - include/linux/nfs_fs_sb.h | 2 - include/linux/percpu_counter.h | 2 - include/linux/srcu.h | 2 - include/net/ip.h | 6 +-- include/net/ipcomp.h | 2 - include/net/neighbour.h | 2 - include/net/netns/conntrack.h | 2 - include/net/netns/core.h | 2 - include/net/route.h | 2 - include/net/snmp.h | 12 +++++-- include/net/tcp.h | 2 - include/trace/ftrace.h | 4 +- kernel/hw_breakpoint.c | 14 ++++---- kernel/kexec.c | 2 - kernel/sched.c | 4 +- kernel/stop_machine.c | 2 - kernel/trace/trace_event_profile.c | 16 +++++----- kernel/trace/trace_functions_graph.c | 2 - kernel/trace/trace_kprobe.c | 4 +- kernel/trace/trace_ksym.c | 10 +++--- kernel/trace/trace_syscalls.c | 4 +- mm/percpu.c | 18 ++++++----- net/8021q/vlan.h | 2 - net/dccp/proto.c | 5 +-- net/ipv4/af_inet.c | 46 ++++++++++++++--------------- net/ipv4/proc.c | 28 ++++++++--------- net/ipv4/route.c | 2 - net/ipv4/tcp.c | 21 +++++++------ net/ipv6/addrconf.c | 24 +++++++-------- net/ipv6/af_inet6.c | 28 ++++++++--------- net/ipv6/proc.c | 24 ++++++++------- net/sctp/proc.c | 2 - net/sctp/protocol.c | 5 +-- net/xfrm/xfrm_ipcomp.c | 16 +++++----- net/xfrm/xfrm_policy.c | 6 +-- net/xfrm/xfrm_proc.c | 3 + samples/hw_breakpoint/data_breakpoint.c | 6 +-- 66 files changed, 231 insertions(+), 209 deletions(-) -- tejun -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majordomo@...r.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists