On 03/19/10 12:51, Justin P. Mattock wrote:After doing some things on a small issue,
I noticed through web surfing, that there were patches
submitted pertaining that __initcall is deprecated,
and device_initcall should be used.
Where was this discussion? Do you have any pointers to it?
I don't see any mention of __initcall being deprecated in
Linus' mainline git tree, or in linux-next, or in mmotm.
Where are those patches?
So as a change of subject(since what I was looking at
was frustrating me),I decided to grep the whole tree
and make the change(partially).
Currently I'm running this patch on my system, kernel compiles
without any errors or warnings.(thought there would be a speed increase
but didn't see much(if any)).
No, __initcall(x) is just a shorthand version of typing
device_initcall(x). They do the same thing.
Biggest problem I have though is testing this on other hardware types
(I only have a macbook,and an iMac).
So please if you have the access to other arch/hardware types please
test.
Now what I mean by partially is the __initcall function is still
there, so(if any) userspace apps/libs depend on this it's there
so they dont break and/or any other subsystem, that needs time
to make the changes.
The only thing that might be affected is building out-of-tree drivers,
but those are easy to fix.
Note:
the remaining files that still have __initcall in them are:
(according to grep)
arch/um/include/shared/init.h
include/linux/init.h
scripts/checkpatch.pl
either I or somebody else, can change this(although a bit
concerned about breaking things).
Signed-off-by: Justin P. Mattock<justinmattock@xxxxxxxxx>
---
Documentation/DocBook/kernel-hacking.tmpl | 4 ++--
Documentation/cpu-freq/cpu-drivers.txt | 2 +-
Documentation/kbuild/makefiles.txt | 2 +-
arch/arm/mach-at91/leds.c | 2 +-
arch/arm/mach-clps711x/p720t.c | 2 +-
arch/arm/mach-ebsa110/leds.c | 2 +-
arch/arm/mach-footbridge/cats-hw.c | 2 +-
arch/arm/mach-footbridge/ebsa285-leds.c | 2 +-
arch/arm/mach-footbridge/netwinder-hw.c | 2 +-
arch/arm/mach-footbridge/netwinder-leds.c | 2 +-
arch/arm/mach-ks8695/leds.c | 2 +-
arch/arm/mach-omap1/leds.c | 2 +-
arch/arm/mach-omap1/pm.c | 2 +-
arch/arm/mach-orion5x/db88f5281-setup.c | 2 +-
arch/arm/mach-orion5x/rd88f5182-setup.c | 2 +-
arch/arm/mach-pxa/generic.c | 2 +-
arch/arm/mach-pxa/pxa25x.c | 2 +-
arch/arm/mach-shark/leds.c | 2 +-
arch/blackfin/kernel/bfin_gpio.c | 2 +-
arch/blackfin/mach-common/pm.c | 2 +-
arch/cris/arch-v10/kernel/debugport.c | 2 +-
arch/cris/arch-v10/kernel/fasttimer.c | 2 +-
arch/cris/arch-v10/mm/init.c | 2 +-
arch/cris/arch-v32/kernel/fasttimer.c | 2 +-
arch/cris/arch-v32/kernel/pinmux.c | 2 +-
arch/cris/arch-v32/kernel/signal.c | 2 +-
arch/cris/arch-v32/mach-a3/io.c | 2 +-
arch/cris/arch-v32/mach-a3/pinmux.c | 2 +-
arch/cris/arch-v32/mach-fs/io.c | 2 +-
arch/cris/arch-v32/mach-fs/pinmux.c | 2 +-
arch/cris/kernel/profile.c | 2 +-
arch/cris/kernel/time.c | 2 +-
arch/cris/kernel/traps.c | 2 +-
arch/frv/kernel/gdb-stub.c | 2 +-
arch/frv/kernel/pm-mb93093.c | 2 +-
arch/frv/kernel/pm.c | 2 +-
arch/frv/kernel/sysctl.c | 2 +-
arch/h8300/kernel/gpio.c | 2 +-
arch/ia64/hp/sim/simeth.c | 2 +-
arch/ia64/hp/sim/simserial.c | 2 +-
arch/ia64/kernel/audit.c | 2 +-
arch/ia64/kernel/crash.c | 2 +-
arch/ia64/kernel/cyclone.c | 2 +-
arch/ia64/kernel/perfmon.c | 2 +-
arch/ia64/kernel/setup.c | 2 +-
arch/ia64/kernel/uncached.c | 2 +-
arch/ia64/kernel/unwind.c | 2 +-
arch/ia64/mm/init.c | 2 +-
arch/mips/Makefile | 2 +-
arch/mips/kernel/unaligned.c | 2 +-
arch/mips/lasat/sysctl.c | 2 +-
arch/mips/math-emu/cp1emu.c | 2 +-
arch/mips/nxp/pnx8550/common/proc.c | 2 +-
arch/mips/sibyte/sb1250/bus_watcher.c | 2 +-
arch/mn10300/kernel/gdb-stub.c | 2 +-
arch/mn10300/kernel/mn10300-serial.c | 2 +-
arch/mn10300/kernel/profile.c | 2 +-
arch/parisc/kernel/pci-dma.c | 2 +-
arch/parisc/kernel/pdc_chassis.c | 2 +-
arch/powerpc/kernel/audit.c | 2 +-
arch/powerpc/kernel/idle.c | 2 +-
arch/powerpc/kernel/irq.c | 2 +-
arch/powerpc/kernel/proc_powerpc.c | 2 +-
arch/powerpc/kernel/prom.c | 4 ++--
arch/powerpc/kernel/rtas-proc.c | 2 +-
arch/powerpc/kernel/rtasd.c | 2 +-
arch/powerpc/kernel/sysfs.c | 2 +-
arch/powerpc/kernel/tau_6xx.c | 2 +-
arch/powerpc/kernel/vio.c | 2 +-
arch/powerpc/platforms/iseries/lpevents.c | 2 +-
arch/powerpc/platforms/iseries/mf.c | 2 +-
arch/powerpc/platforms/iseries/proc.c | 2 +-
arch/powerpc/platforms/iseries/viopath.c | 2 +-
arch/powerpc/platforms/pseries/eeh.c | 2 +-
arch/powerpc/platforms/pseries/hvCall_inst.c | 2 +-
arch/powerpc/platforms/pseries/power.c | 2 +-
arch/powerpc/platforms/pseries/ras.c | 2 +-
arch/powerpc/platforms/pseries/reconfig.c | 2 +-
arch/powerpc/xmon/xmon.c | 2 +-
arch/s390/appldata/appldata_base.c | 2 +-
arch/s390/kernel/audit.c | 2 +-
arch/s390/kernel/compat_exec_domain.c | 2 +-
arch/s390/kernel/ipl.c | 2 +-
arch/s390/kernel/topology.c | 2 +-
arch/sh/boards/board-edosk7760.c | 2 +-
arch/sh/boards/board-sh7785lcr.c | 2 +-
arch/sh/boards/mach-cayman/setup.c | 2 +-
arch/sh/boards/mach-landisk/setup.c | 2 +-
arch/sh/boards/mach-r2d/setup.c | 2 +-
arch/sh/boards/mach-sdk7786/setup.c | 2 +-
arch/sh/boards/mach-se/7206/setup.c | 2 +-
arch/sh/boards/mach-se/7751/setup.c | 2 +-
arch/sh/boards/mach-sh03/setup.c | 2 +-
arch/sh/kernel/traps_64.c | 2 +-
arch/sparc/kernel/apc.c | 2 +-
arch/sparc/kernel/audit.c | 2 +-
arch/sparc/kernel/mdesc.c | 2 +-
arch/sparc/kernel/pmc.c | 2 +-
arch/um/drivers/mconsole_kern.c | 8 ++++----
arch/um/drivers/net_kern.c | 2 +-
arch/um/drivers/stderr_console.c | 2 +-
arch/um/drivers/ubd_kern.c | 4 ++--
arch/um/kernel/exitcode.c | 2 +-
arch/um/kernel/physmem.c | 2 +-
arch/um/os-Linux/aio.c | 4 ++--
arch/um/os-Linux/skas/mem.c | 2 +-
arch/um/os-Linux/skas/process.c | 2 +-
arch/um/os-Linux/umid.c | 2 +-
arch/um/sys-i386/tls.c | 2 +-
arch/x86/kernel/audit_64.c | 2 +-
arch/x86/kernel/tlb_uv.c | 4 ++--
arch/x86/kernel/vsyscall_64.c | 4 ++--
arch/x86/mm/dump_pagetables.c | 2 +-
arch/x86/vdso/vdso32-setup.c | 4 ++--
arch/x86/vdso/vma.c | 2 +-
arch/xtensa/platforms/iss/console.c | 2 +-
drivers/net/arm/am79c961a.c | 2 +-
drivers/net/hamradio/baycom_epp.c | 1 +
drivers/net/hamradio/baycom_par.c | 1 +
drivers/net/hamradio/baycom_ser_fdx.c | 1 +
drivers/net/hamradio/baycom_ser_hdx.c | 1 +
drivers/s390/char/sclp_cmd.c | 2 +-
drivers/s390/char/sclp_config.c | 2 +-
drivers/s390/char/sclp_cpi_sys.c | 2 +-
drivers/s390/char/sclp_vt220.c | 2 +-
drivers/s390/cio/blacklist.c | 2 +-
drivers/staging/rtl8192u/ieee80211/api.c | 2 +-
fs/aio.c | 2 +-
fs/compat_ioctl.c | 2 +-
ipc/ipc_sysctl.c | 2 +-
ipc/mqueue.c | 2 +-
ipc/util.c | 2 +-
kernel/audit.c | 2 +-
kernel/audit_tree.c | 2 +-
kernel/dma.c | 2 +-
kernel/futex.c | 2 +-
kernel/lockdep_proc.c | 2 +-
kernel/pid_namespace.c | 2 +-
kernel/posix-cpu-timers.c | 2 +-
kernel/posix-timers.c | 2 +-
kernel/resource.c | 2 +-
kernel/sched_debug.c | 2 +-
kernel/time/timer_list.c | 2 +-
kernel/time/timer_stats.c | 2 +-
kernel/tracepoint.c | 2 +-
kernel/utsname_sysctl.c | 2 +-
lib/audit.c | 2 +-
lib/debugobjects.c | 2 +-
mm/bounce.c | 2 +-
mm/memory.c | 2 +-
mm/mm_init.c | 2 +-
mm/slab.c | 2 +-
mm/slub.c | 2 +-
mm/swapfile.c | 2 +-
net/ipv4/syncookies.c | 2 +-
net/ipv4/sysctl_net_ipv4.c | 2 +-
security/keys/proc.c | 2 +-
security/selinux/hooks.c | 2 +-
security/selinux/netif.c | 2 +-
security/selinux/netlink.c | 2 +-
security/selinux/netnode.c | 2 +-
security/selinux/netport.c | 2 +-
security/selinux/selinuxfs.c | 2 +-
security/selinux/ss/services.c | 2 +-
security/smack/smackfs.c | 2 +-
sound/last.c | 2 +-
166 files changed, 176 insertions(+), 172 deletions(-)