android_kernel_msm-6.1_noth.../include/linux
Steven Rostedt (Red Hat) 9d3c752c06 tracing: Optimize trace_printk() with one arg to use trace_puts()
Although trace_printk() is extremely fast, especially when it uses
trace_bprintk() (writes args straight to buffer instead of inserting
into string), it still has the overhead of calling one of the printf
sprintf() functions, that need to scan the fmt string to determine
what, if any args it has.

This is a waste of precious CPU cycles if the printk format has no
args but a single constant string. It is better to use trace_puts()
which does not have the overhead of the fmt scanning.

But wouldn't it be nice if the developer didn't have to think about
such things, and the compile would just do it for them?

  trace_printk("this string has no args\n");
  [...]
  trace_printk("this sting does %p %d\n", foo, bar);

As tracing is critical to have the least amount of overhead,
especially when dealing with race conditions, and you want to
eliminate any "Heisenbugs", you want the trace_printk() to use the
fastest possible means of tracing.

Currently the macro magic determines if it will use trace_bprintk()
or if the fmt is a dynamic string (a variable), it will fall
back to the slow trace_printk() method that does a full snprintf()
before copying it into the buffer, where as trace_bprintk() only
copys the pointer to the fmt and the args into the buffer.

Well, now there's a way to spend some more Hogwarts cash and come
up with new fancy macro magic.

  #define trace_printk(fmt, ...)			\
  do {							\
	char _______STR[] = __stringify((__VA_ARGS__));	\
	if (sizeof(_______STR) > 3)			\
		do_trace_printk(fmt, ##__VA_ARGS__);	\
	else						\
		trace_puts(fmt);			\
  } while (0)

The above needs a bit of explaining (both here and in the comments).

By stringifying the __VA_ARGS__, we can, at compile time, determine
the number of args that are being passed to trace_printk(). The extra
parenthesis are required, otherwise the compiler complains about
too many parameters for __stringify if there is more than one arg.

When there are no args, the __stringify((__VA_ARGS__)) converts into
"()\0", a string of 3 characters. Anything else, will be a string
containing more than 3 characters. Now we assign that string to a
dynamic char array, and then take the sizeof() of that array.
If it is greater than 3 characters, we know trace_printk() has args
and we need to do the full "do_trace_printk()" on them, otherwise
it was only passed a single arg and we can optimize to use trace_puts().

Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: Frederic Weisbecker <fweisbec@gmail.com>
Signed-off-by: Steven "The King of Nasty Macros!" Rostedt <rostedt@goodmis.org>
2013-03-15 00:35:56 -04:00
..
amba ARM: 7588/1: amba: create a resource parent registrator 2012-12-03 11:15:35 +00:00
bcma Drivers: bcma: remove __dev* attributes. 2013-01-03 15:57:15 -08:00
byteorder
can
ceph Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/sage/ceph-client 2012-12-20 14:00:13 -08:00
clk ARM: arm-soc: Updates for Marvell mvebu/kirkwood 2012-12-14 14:54:26 -08:00
crush
decompress
dma
extcon
fsl
hsi UAPI: Remove empty Kbuild files 2013-01-02 17:36:10 -08:00
i2c Merge branch 'i2c-embedded/for-next' of git://git.pengutronix.de/git/wsa/linux 2012-12-18 16:51:10 -08:00
iio
input Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input 2012-12-18 12:46:37 -08:00
irqchip ARM: arm-soc: Device-tree updates, take 2 2012-12-14 14:42:53 -08:00
isdn
lockd
mfd mfd: da9052/53 lockup fix 2013-01-27 01:35:32 +01:00
mlx4 mlx4_core: Allow choosing flow steering mode 2012-12-19 11:47:22 -08:00
mmc MMC highlights for 3.8: 2012-12-11 11:19:09 -08:00
mtd mtd: nand: add NAND_BUSWIDTH_AUTO to autodetect bus width 2012-12-03 16:36:52 +02:00
netfilter
netfilter_arp
netfilter_bridge
netfilter_ipv4
netfilter_ipv6 Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/jesse/openvswitch 2012-11-30 12:01:30 -05:00
nfsd
pinctrl
platform_data [media] coda: Fix build due to iram.h rename 2013-01-08 09:44:06 +01:00
power Highlights: 2012-12-13 19:26:04 -08:00
raid UAPI: Remove empty Kbuild files 2013-01-02 17:36:10 -08:00
regulator Merge remote-tracking branch 'regulator/topic/tol' into regulator-next 2012-12-10 12:43:22 +09:00
rtc
sched sched/rt: Move rt specific bits into new header file 2013-02-07 20:51:08 +01:00
spi Linux 3.7-rc8 2012-12-07 17:02:47 +00:00
ssb Merge branch 'upstream' of git://git.linux-mips.org/pub/scm/ralf/upstream-linus 2012-12-14 14:27:45 -08:00
sunrpc Merge branch 'for-3.8' of git://linux-nfs.org/~bfields/linux 2012-12-20 14:04:11 -08:00
tc_act
unaligned
usb Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2013-02-09 07:55:24 +11:00
uwb
wimax
8250_pci.h
a.out.h
acct.h
acpi.h Merge branch 'x86-acpi-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2012-12-14 10:03:23 -08:00
acpi_gpio.h gpio / ACPI: add ACPI support 2012-11-30 12:37:36 +01:00
acpi_io.h
acpi_pmtmr.h
adb.h
adfs_fs.h
aer.h aerdrv: Enhanced AER logging 2013-01-03 14:34:06 -08:00
agp_backend.h
agpgart.h
ahci_platform.h
aio.h
alarmtimer.h
altera_jtaguart.h
altera_uart.h
amd-iommu.h
amifd.h
amifdreg.h
amigaffs.h
anon_inodes.h
apm-emulation.h
apm_bios.h
apple_bl.h
arcdevice.h
asn1.h ASN.1: Define indefinite length marker constant 2012-12-14 13:06:41 +10:30
asn1_ber_bytecode.h
asn1_decoder.h
async.h async: keep pending tasks on async_domain and remove async_pending 2013-01-23 09:32:30 -08:00
async_tx.h
ata.h [libata] replace sata_settings with devslp_timing 2013-01-14 13:29:15 -05:00
ata_platform.h include: remove __dev* attributes. 2013-01-03 15:57:16 -08:00
atalk.h
ath9k_platform.h ath9k: allow to load EEPROM content via firmware API 2012-12-10 15:49:57 -05:00
atm.h
atm_suni.h
atm_tcp.h
atmdev.h atm: add release_cb() callback to vcc 2012-12-02 00:05:12 +00:00
atmel-mci.h
atmel-pwm-bl.h
atmel-ssc.h
atmel_pdc.h
atmel_pwm.h
atmel_serial.h
atmel_tc.h
atomic.h
attribute_container.h
audit.h linux/audit.h: move ptrace.h include to kernel header 2013-01-11 14:54:56 -08:00
auto_dev-ioctl.h
auto_fs.h
auxvec.h
average.h
b1pcmcia.h
backing-dev.h Revert "bdi: add a user-tunable cpu_list for the bdi flusher threads" 2012-12-17 11:29:09 -08:00
backlight.h backlight: add of_find_backlight_by_node() 2012-12-17 17:15:16 -08:00
balloon_compaction.h mm: introduce a common interface for balloon pages mobility 2012-12-11 17:22:26 -08:00
basic_mmio_gpio.h
bcd.h
bch.h
bcm47xx_wdt.h ssb/bcma: add common header for watchdog 2012-12-06 14:58:56 -05:00
bcm2835_timer.h
bfin_mac.h
binfmts.h Merge branch 'akpm' (Andrew's patch-bomb) 2012-12-20 20:00:43 -08:00
bio.h
bit_spinlock.h
bitmap.h
bitops.h
bitrev.h
blk-iopoll.h
blk_types.h
blkdev.h blk: avoid divide-by-zero with zero discard granularity 2012-12-19 07:18:35 -08:00
blktrace_api.h
blockgroup_lock.h
bma150.h
bootmem.h mm/bootmem.c: remove unused wrapper function reserve_bootmem_generic() 2012-12-12 17:38:35 -08:00
bottom_half.h
brcmphy.h
bsearch.h
bsg-lib.h bsg: Remove unused function bsg_goose_queue() 2012-12-06 14:33:02 +01:00
bsg.h
btree-128.h
btree-type.h
btree.h
buffer_head.h
bug.h
c2port.h
cache.h
capability.h
cb710.h
cciss_ioctl.h
cdev.h
cdrom.h
cfag12864b.h
cgroup.h
cgroup_subsys.h
circ_buf.h
cleancache.h
clk-private.h
clk-provider.h The common clock framework changes for 3.8 are comprised of lots of 2012-12-11 11:25:08 -08:00
clk.h
clkdev.h
clksrc-dbx500-prcmu.h
clockchips.h clockevents: Add generic timer broadcast function 2013-01-31 22:15:36 +01:00
clocksource.h
cm4000_cs.h
cn_proc.h
cnt32_to_63.h
coda.h
coda_psdev.h
com20020.h
compaction.h mm: compaction: partially revert capture of suitable high-order page 2013-01-11 14:54:56 -08:00
compat.h Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/signal 2012-12-20 18:05:28 -08:00
compiler-gcc.h
compiler-gcc3.h
compiler-gcc4.h Nothing all that exciting; a new module-from-fd syscall for those who want 2012-12-19 07:55:08 -08:00
compiler-intel.h byteorder: allow arch to opt to use GCC intrinsics for byteswapping 2012-12-06 01:22:31 +00:00
compiler.h Nothing all that exciting; a new module-from-fd syscall for those who want 2012-12-19 07:55:08 -08:00
completion.h
concap.h
configfs.h
connector.h
console.h
console_struct.h
consolemap.h
context_tracking.h context_tracking: Export context state for generic vtime 2013-01-26 17:37:17 +01:00
cordic.h
coredump.h do_coredump(): get rid of pt_regs argument 2012-11-29 00:01:25 -05:00
cper.h
cpu.h
cpu_cooling.h
cpu_pm.h
cpu_rmap.h lib: cpu_rmap: avoid flushing all workqueues 2013-01-11 14:54:54 -08:00
cpufreq.h
cpuidle.h cpuidle: remove the power_specified field in the driver 2013-01-15 14:18:04 +01:00
cpumask.h
cpuset.h cpuset: use N_MEMORY instead N_HIGH_MEMORY 2012-12-12 17:38:32 -08:00
cramfs_fs.h
cramfs_fs_sb.h
crash_dump.h
crc-ccitt.h
crc-itu-t.h
crc-t10dif.h
crc7.h
crc8.h
crc16.h
crc32.h
crc32c.h
cred.h cred: Remove tgcred pointer from struct cred 2013-01-09 08:26:53 -08:00
crypto.h
cryptohash.h
cryptouser.h
cs5535.h
ctype.h
cuda.h
cyclades.h
cyclomx.h
cycx_drv.h
cycx_x25.h
davinci_emac.h
dca.h
dcache.h vfs: remove DCACHE_NEED_LOOKUP 2012-12-20 13:57:36 -05:00
dccp.h
dcookies.h
debug_locks.h
debugfs.h
debugobjects.h
delay.h
delayacct.h
devfreq.h
device-mapper.h dm: remove map_info 2012-12-21 20:23:41 +00:00
device.h Merge branch 'x86-ras-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2012-12-14 09:59:59 -08:00
device_cgroup.h
devpts_fs.h
digsig.h
dio.h
dirent.h
dlm.h
dlm_plock.h
dm-dirty-log.h
dm-io.h
dm-kcopyd.h
dm-region-hash.h
dm9000.h
dma-attrs.h common: DMA-mapping: add DMA_ATTR_FORCE_CONTIGUOUS attribute 2012-11-29 03:30:34 -08:00
dma-buf.h dma-buf: remove fallback for !CONFIG_DMA_SHARED_BUFFER 2012-12-20 12:05:06 +05:30
dma-contiguous.h drivers: cma: represent physical addresses as phys_addr_t 2012-12-11 09:28:09 +01:00
dma-debug.h
dma-direction.h
dma-mapping.h
dma_remapping.h
dmaengine.h
dmapool.h
dmar.h
dmi.h
dnotify.h
dns_resolver.h
dqblk_qtree.h
dqblk_v1.h
dqblk_v2.h
drbd.h
drbd_genl.h
drbd_genl_api.h
drbd_limits.h
ds1286.h
ds2782_battery.h
ds17287rtc.h
dtlk.h
dw_apb_timer.h
dw_dmac.h
dynamic_debug.h
dynamic_queue_limits.h
earlycpio.h
ecryptfs.h
edac.h
edd.h
edma.h
eeprom_93cx6.h
eeprom_93xx46.h
efi-bgrt.h
efi.h efi: Make 'efi_enabled' a function to query EFI facilities 2013-01-30 11:51:59 -08:00
efs_vh.h
eisa.h
elevator.h init, block: try to load default elevator module early during boot 2013-01-18 14:05:56 -08:00
elf-fdpic.h
elf.h
elfcore-compat.h
elfcore.h
elfnote.h
enclosure.h
err.h
errno.h
errqueue.h
etherdevice.h
ethtool.h
eventfd.h
eventpoll.h
evm.h
export.h
exportfs.h Merge branch 'for-3.8' of git://linux-nfs.org/~bfields/linux 2012-12-20 14:04:11 -08:00
ext2_fs.h
extcon.h
f2fs_fs.h f2fs: introduce accessor to retrieve number of dentry slots 2012-12-11 13:43:45 +09:00
f75375s.h
falloc.h
fanotify.h
fault-inject.h
fb.h
fcdevice.h
fcntl.h
fd.h
fddidevice.h
fdtable.h
fec.h
file.h
filter.h
fips.h
firewire.h
firmware-map.h
firmware.h
fixp-arith.h
flat.h
flex_array.h
flex_proportions.h
font.h
freezer.h Merge branch 'for-3.8' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup 2012-12-12 08:18:24 -08:00
frontswap.h
fs.h Merge branch 'fscache' of git://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-fs into for-linus 2012-12-20 18:49:14 -05:00
fs_enet_pd.h
fs_stack.h
fs_struct.h
fs_uart_pd.h
fscache-cache.h FS-Cache: Mark cancellation of in-progress operation 2012-12-20 22:34:00 +00:00
fscache.h FS-Cache: Provide proper invalidation 2012-12-20 22:04:07 +00:00
fsl-diu-fb.h
fsl_devices.h
fsl_hypervisor.h
fsnotify.h
fsnotify_backend.h fsnotify: make fasync generic for both inotify and fanotify 2012-12-11 13:44:36 -05:00
ftrace.h ftrace: Move ARCH_SUPPORTS_FTRACE_SAVE_REGS in Kconfig 2013-01-21 13:22:35 -05:00
ftrace_event.h tracing: Consolidate max_tr into main trace_array structure 2013-03-15 00:35:40 -04:00
ftrace_irq.h
futex.h
gameport.h
gcd.h
genalloc.h
generic_acl.h
genetlink.h
genhd.h
genl_magic_func.h
genl_magic_struct.h
getcpu.h
gfp.h mm: allocate kernel pages to the right memcg 2012-12-18 15:02:12 -08:00
gpio-fan.h
gpio-pxa.h
gpio.h
gpio_keys.h
gpio_mouse.h
gsmmux.h
hardirq.h Merge branch 'sched-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2013-02-19 18:19:48 -08:00
hash.h propagate name change to comments in kernel source 2012-12-06 10:39:54 +01:00
hashtable.h
hdlc.h
hdlcdrv.h
hid-debug.h
hid-roccat.h
hid-sensor-hub.h
hid-sensor-ids.h HID: sensors: autodetect USB HID sensor hubs 2012-12-12 16:49:10 +01:00
hid.h Merge branches 'for-3.7/upstream-fixes', 'for-3.8/hidraw', 'for-3.8/i2c-hid', 'for-3.8/multitouch', 'for-3.8/roccat', 'for-3.8/sensors' and 'for-3.8/upstream' into for-linus 2012-12-12 21:41:55 +01:00
hiddev.h
hidraw.h
highmem.h
highuid.h
hil.h
hil_mlc.h
hippidevice.h
hp_sdc.h
hpet.h
hrtimer.h
htcpld.h
htirq.h
huge_mm.h Automatic NUMA Balancing V11 2012-12-16 15:18:08 -08:00
hugetlb.h Automatic NUMA Balancing V11 2012-12-16 15:18:08 -08:00
hugetlb_cgroup.h mm/hugetlb: create hugetlb cgroup file in hugetlb_init 2012-12-18 15:02:15 -08:00
hugetlb_inline.h
hw_breakpoint.h
hw_random.h
hwmon-sysfs.h
hwmon-vid.h
hwmon.h
hwspinlock.h
hyperv.h
i2c-algo-bit.h
i2c-algo-pca.h
i2c-algo-pcf.h
i2c-dev.h
i2c-gpio.h
i2c-mux-gpio.h
i2c-mux-pinctrl.h
i2c-mux.h
i2c-ocores.h
i2c-omap.h
i2c-pca-platform.h
i2c-pnx.h
i2c-pxa.h
i2c-smbus.h
i2c-tegra.h
i2c-xiic.h
i2c.h
i2o.h
i7300_idle.h
i8042.h
i8253.h
i82593.h
icmp.h
icmpv6.h
ide.h
idr.h
ieee80211.h wireless: fix VHT max AMPDU exponent definition 2012-12-06 14:02:51 +01:00
if_arp.h
if_bridge.h
if_eql.h
if_ether.h
if_fddi.h
if_frad.h
if_link.h
if_ltalk.h
if_macvlan.h
if_phonet.h
if_pppol2tp.h
if_pppox.h
if_team.h
if_tun.h
if_tunnel.h
if_vlan.h
igmp.h
ihex.h
ima.h ima: support new kernel module syscall 2012-12-14 13:05:26 +10:30
in.h
in6.h
inet.h
inet_diag.h
inet_lro.h
inetdevice.h netconf: advertise mc_forwarding status 2012-12-04 13:08:10 -05:00
init.h Merge branch 'master' into for-3.9-async 2013-01-23 09:31:01 -08:00
init_ohci1394_dma.h
init_task.h sched/rt: Add <linux/sched/rt.h> header to <linux/init_task.h> 2013-02-19 08:06:01 +01:00
initrd.h
inotify.h
input-polldev.h
input.h
integrity.h
intel-iommu.h
intel_mid_dma.h
intel_pmic_gpio.h
interrupt.h lib: cpu_rmap: avoid flushing all workqueues 2013-01-11 14:54:54 -08:00
interval_tree.h
interval_tree_generic.h
io-mapping.h
io.h
ioc3.h
ioc4.h
iocontext.h
iommu-helper.h
iommu.h
ioport.h
ioprio.h
iova.h
ip.h net: Add support for hardware-offloaded encapsulation 2012-12-09 00:20:28 -05:00
ipack.h
ipc.h
ipc_namespace.h ipc: add sysctl to specify desired next object id 2013-01-04 16:11:45 -08:00
ipmi.h
ipmi_smi.h
ipv6.h net: Add support for hardware-offloaded encapsulation 2012-12-09 00:20:28 -05:00
ipv6_route.h
irq.h x86, msi: Use IRQ remapping specific setup_msi_irqs routine 2013-01-28 12:17:25 +01:00
irq_cpustat.h
irq_work.h Merge branch 'nohz/printk-v8' into irq/core 2013-02-05 00:48:46 +01:00
irqdesc.h
irqdomain.h
irqflags.h
irqnr.h
irqreturn.h
isa.h
isapnp.h
iscsi_boot_sysfs.h
iscsi_ibft.h
isdn.h
isdn_divertif.h
isdn_ppp.h
isdnif.h
isicom.h
jbd.h
jbd2.h ext4: fix deadlock in journal_unmap_buffer() 2012-12-25 13:29:52 -05:00
jbd_common.h
jhash.h
jiffies.h
journal-head.h
joystick.h
jump_label.h
jz4740-adc.h
kallsyms.h
kbd_diacr.h
kbd_kern.h
kbuild.h
kcmp.h
kconfig.h
kd.h
kdb.h
kdebug.h
kdev_t.h
kern_levels.h
kernel-page-flags.h
kernel.h tracing: Optimize trace_printk() with one arg to use trace_puts() 2013-03-15 00:35:56 -04:00
kernel_stat.h cputime: Generic on-demand virtual cputime accounting 2013-01-27 19:23:27 +01:00
kernelcapi.h
kexec.h
key-type.h
key.h Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/linux-security 2012-12-16 15:40:50 -08:00
keyboard.h
kfifo.h
kgdb.h
khugepaged.h
klist.h
kmalloc_sizes.h
kmemcheck.h
kmemleak.h
kmod.h
kmsg_dump.h
kobj_map.h
kobject.h
kobject_ns.h
kprobes.h kprobes/x86: Move ftrace-based kprobe code into kprobes-ftrace.c 2013-01-21 13:22:36 -05:00
kref.h
ks0108.h
ks8842.h
ks8851_mll.h
ksm.h
kthread.h
ktime.h
kvm_host.h cputime: Safely read cputime of full dynticks CPUs 2013-01-27 20:35:47 +01:00
kvm_para.h
kvm_types.h
l2tp.h
lapb.h
latencytop.h
lcd.h
lcm.h
led-lm3530.h
leds-bd2802.h
leds-lp3944.h
leds-lp5521.h
leds-lp5523.h
leds-pca9532.h
leds-regulator.h
leds-tca6507.h
leds.h
leds_pwm.h
lglock.h
lguest.h
lguest_launcher.h
libata.h [libata] replace sata_settings with devslp_timing 2013-01-14 13:29:15 -05:00
libfdt.h
libfdt_env.h
libps2.h
license.h
linkage.h
linux_logo.h
lis3lv02d.h
list.h
list_bl.h
list_nulls.h
list_sort.h
llc.h
llist.h llist/xen-blkfront: implement safe version of llist_for_each_entry 2012-12-17 21:55:56 -05:00
lockdep.h lockdep, rwsem: provide down_write_nest_lock() 2013-01-11 14:54:55 -08:00
log2.h
loop.h loop: Limit the number of requests in the bio list 2012-11-30 11:48:05 +01:00
lp.h
lru_cache.h Merge branch 'for-3.8/drivers' of git://git.kernel.dk/linux-block 2012-12-17 13:39:11 -08:00
lsm_audit.h
lzo.h
m48t86.h
maple.h
marvell_phy.h
math64.h
max17040_battery.h
mbcache.h
mbus.h
mc6821.h
mc146818rtc.h
mdio-bitbang.h
mdio-gpio.h
mdio-mux.h
mdio.h
memblock.h
memcontrol.h memcg: fix typo in kmemcg cache walk macro 2013-02-05 20:38:48 +11:00
memory.h hotplug: update nodemasks management 2012-12-12 17:38:33 -08:00
memory_hotplug.h mm, memory-hotplug: dynamic configure movable memory and portion memory 2012-12-11 17:22:28 -08:00
mempolicy.h mm: mempolicy: Convert shared_policy mutex to spinlock 2013-01-02 17:32:13 -08:00
mempool.h
memstick.h
mg_disk.h
micrel_phy.h
migrate.h Automatic NUMA Balancing V11 2012-12-16 15:18:08 -08:00
migrate_mode.h
mii.h
miscdevice.h [SCSI] miscdevice: Adding support for MPT3SAS_MINOR(222) 2012-12-01 10:07:54 +00:00
mISDNdsp.h
mISDNhw.h
mISDNif.h
mm.h mm: compaction: partially revert capture of suitable high-order page 2013-01-11 14:54:56 -08:00
mm_inline.h
mm_types.h Merge branch 'slab/for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/penberg/linux 2012-12-18 10:56:07 -08:00
mman.h
mmdebug.h
mmiotrace.h
mmu_context.h
mmu_notifier.h mm: fix wrong comments about anon_vma lock 2013-02-05 20:38:48 +11:00
mmzone.h mm: fix zone_watermark_ok_safe() accounting of isolated pages 2013-01-04 16:11:46 -08:00
mnt_namespace.h
mod_devicetable.h
module.h module: add new state MODULE_STATE_UNFORMED. 2013-01-12 13:27:05 +10:30
moduleloader.h
moduleparam.h moduleparam: use __UNIQUE_ID() 2012-12-14 13:06:40 +10:30
mount.h
mpage.h
mpi.h
mroute.h
mroute6.h
msdos_fs.h
msg.h selftests: IPC message queue copy feature test 2013-01-04 16:11:45 -08:00
msi.h
msm_mdp.h
mutex-debug.h
mutex.h
mv643xx.h
mv643xx_eth.h
mv643xx_i2c.h
mxm-wmi.h
mxsfb.h
n_r3964.h
namei.h namei.h: include errno.h 2012-12-25 18:45:06 -05:00
nbd.h
net.h
netdev_features.h
netdevice.h net, wireless: overwrite default_ethtool_ops 2013-01-11 15:55:48 -08:00
netfilter.h
netfilter_bridge.h
netfilter_ipv4.h
netfilter_ipv6.h
netlink.h
netpoll.h
nfs.h
nfs3.h
nfs4.h
nfs_fs.h
nfs_fs_i.h
nfs_fs_sb.h NFSv4.1: Move slot table and session struct definitions to nfs4session.h 2012-12-06 00:30:46 +01:00
nfs_idmap.h
nfs_iostat.h
nfs_page.h
nfs_xdr.h NFSv4.1: Move the RPC timestamp out of the slot. 2012-12-15 15:21:52 -05:00
nfsacl.h
nilfs2_fs.h
nl802154.h
nls.h
nmi.h
node.h mm: cleanup register_node() 2012-12-11 17:22:27 -08:00
nodemask.h numa: add CONFIG_MOVABLE_NODE for movable-dedicated node 2012-12-12 17:38:34 -08:00
notifier.h
nsc_gpio.h
nsproxy.h
nubus.h
numa.h
nvme.h
nvram.h
nwpserial.h
nx842.h
of.h Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc 2012-12-18 09:58:09 -08:00
of_address.h
of_device.h
of_fdt.h
of_gpio.h
of_i2c.h of/i2c: add dummy inline functions for when CONFIG_OF_I2C(_MODULE) isn't defined 2012-12-11 17:30:16 +00:00
of_iommu.h
of_irq.h
of_mdio.h
of_mtd.h
of_net.h
of_pci.h
of_pdt.h
of_platform.h of: define struct device in of_platform.h if !OF_DEVICE and !OF_ADDRESS 2012-12-19 16:15:17 +00:00
of_serial.h
oid_registry.h
olpc-ec.h
omap-dma.h ARM: OMAP: Move plat-omap/dma-omap.h to include/linux/omap-dma.h 2012-11-30 08:41:50 -08:00
omap-iommu.h
omapfb.h
oom.h mm, oom: fix race when specifying a thread as the oom origin 2012-12-11 17:22:27 -08:00
openvswitch.h
opp.h
oprofile.h
oxu210hp.h
padata.h
page-debug-flags.h
page-flags.h mm: Fix PageHead when !CONFIG_PAGEFLAGS_EXTENDED 2012-12-26 14:57:34 -08:00
page-isolation.h memory-hotplug: skip HWPoisoned page when offlining pages 2012-12-11 17:22:22 -08:00
page_cgroup.h
pageblock-flags.h
pagemap.h mm: introduce a common interface for balloon pages mobility 2012-12-11 17:22:26 -08:00
pagevec.h
parport.h
parport_pc.h
parser.h
pata_arasan_cf_data.h
patchkey.h
path.h
pch_dma.h
pci-acpi.h
pci-aspm.h
pci-ats.h
pci-dma.h
pci.h PCI/MSI: Enable multiple MSIs with pci_enable_msi_block_auto() 2013-01-24 17:25:13 +01:00
pci_hotplug.h
pci_ids.h PCI: Reduce Ricoh 0xe822 SD card reader base clock frequency to 50MHz 2012-12-26 10:43:06 -07:00
pcieport_if.h
pda_power.h
percpu-defs.h
percpu-rwsem.h percpu_rw_semaphore: add lockdep annotations 2012-12-17 17:15:18 -08:00
percpu.h
percpu_counter.h
perf_event.h perf: Introduce hw_perf_event->tp_target and ->tp_list 2013-02-08 18:28:02 +01:00
perf_regs.h
personality.h
pfn.h
phonedev.h
phonet.h
phy.h
phy_fixed.h
pid.h pidns: Stop pid allocation when init dies 2012-12-25 16:10:05 -08:00
pid_namespace.h pidns: Stop pid allocation when init dies 2012-12-25 16:10:05 -08:00
pim.h
pipe_fs_i.h
pktcdvd.h
platform_device.h
plist.h
pm.h
pm_clock.h
pm_domain.h
pm_qos.h
pm_runtime.h
pm_wakeup.h
pmu.h
pnfs_osd_xdr.h
pnp.h
poison.h
poll.h
posix-clock.h
posix-timers.h
posix_acl.h
posix_acl_xattr.h
power_supply.h
ppp-comp.h
ppp_channel.h
ppp_defs.h
pps-gpio.h
pps_kernel.h
preempt.h
prefetch.h
printk.h
prio_heap.h
proc_fs.h Merge branch 'akpm' (Andrew's patch-bomb) 2012-12-17 20:58:12 -08:00
profile.h profiling: Remove unused timer hook 2013-01-24 15:37:26 +01:00
projid.h
proportions.h
pstore.h
pstore_ram.h pstore: remove __dev* attributes. 2013-01-03 15:57:14 -08:00
pti.h
ptp_classify.h
ptp_clock_kernel.h
ptrace.h ia64: kill thread_matches(), unexport ptrace_check_attach() 2013-01-20 12:26:05 -08:00
pvclock_gtod.h
pwm.h
pwm_backlight.h
pxa2xx_ssp.h
pxa168_eth.h
qnx6_fs.h
quicklist.h
quota.h
quotaops.h
radix-tree.h
raid_class.h
ramfs.h
random.h prandom: introduce prandom_bytes() and prandom_bytes_state() 2012-12-17 17:15:26 -08:00
range.h
ratelimit.h
rational.h
rbtree.h
rbtree_augmented.h lib/rbtree.c: avoid the use of non-static __always_inline 2013-01-11 14:54:56 -08:00
rculist.h
rculist_bl.h
rculist_nulls.h
rcupdate.h Merge branches 'doctorture.2013.01.29a', 'fixes.2013.01.26a', 'tagcb.2013.01.24a' and 'tiny.2013.01.29b' into HEAD 2013-01-28 22:25:21 -08:00
rcutiny.h
rcutree.h
reboot.h
reciprocal_div.h
regmap.h Merge remote-tracking branch 'regmap/topic/table' into regmap-next 2012-12-11 12:39:32 +09:00
regset.h
relay.h
remoteproc.h
res_counter.h res_counter: return amount of charges after res_counter_uncharge() 2012-12-18 15:02:12 -08:00
resource.h
resume-trace.h
rfkill-gpio.h
rfkill-regulator.h
rfkill.h
ring_buffer.h tracing/ring-buffer: Move poll wake ups into ring buffer code 2013-03-15 00:34:50 -04:00
rio.h
rio_drv.h
rio_ids.h
rio_regs.h
rmap.h mm/rmap, migration: Make rmap_walk_anon() and try_to_unmap_anon() more scalable 2012-12-11 14:43:00 +00:00
rndis.h
root_dev.h
rotary_encoder.h
rpmsg.h
rslib.h
rtc-ds2404.h
rtc-v3020.h
rtc.h NTP: Add a CONFIG_RTC_SYSTOHC configuration 2013-01-15 18:16:06 -08:00
rtmutex.h
rtnetlink.h
rwlock.h
rwlock_api_smp.h
rwlock_types.h
rwsem-spinlock.h
rwsem.h lockdep, rwsem: fix down_write_nest_lock() if !CONFIG_DEBUG_LOCK_ALLOC 2013-01-16 12:13:20 -08:00
rxrpc.h
s3c_adc_battery.h
sa11x0-dma.h
scatterlist.h
scc.h
sched.h sched/rt: Move rt specific bits into new header file 2013-02-07 20:51:08 +01:00
screen_info.h
sctp.h
scx200.h
scx200_gpio.h
sdla.h
seccomp.h
securebits.h
security.h tun: fix LSM/SELinux labeling of tun/tap devices 2013-01-14 18:16:59 -05:00
selection.h
selinux.h
sem.h
semaphore.h
seq_file.h
seq_file_net.h
seqlock.h
serial.h
serial_8250.h
serial_core.h
serial_max3100.h
serial_mfd.h
serial_pnx8xxx.h
serial_sci.h
serio.h
sfi.h
sfi_acpi.h
sh_clk.h
sh_dma.h
sh_eth.h
sh_intc.h
sh_pfc.h
sh_timer.h
shdma-base.h
shm.h mm: support more pagesizes for MAP_HUGETLB/SHM_HUGETLB 2012-12-11 17:22:25 -08:00
shmem_fs.h
shrinker.h
signal.h new helpers: __save_altstack/__compat_save_altstack, switch x86 and um to those 2012-12-19 18:07:41 -05:00
signalfd.h
sirfsoc_dma.h
sizes.h
skbuff.h net: Add support for hardware-offloaded encapsulation 2012-12-09 00:20:28 -05:00
slab.h slab: propagate tunable values 2012-12-18 15:02:14 -08:00
slab_def.h slab/slub: struct memcg_params 2012-12-18 15:02:13 -08:00
slob_def.h
slub_def.h slub: slub-specific propagation changes 2012-12-18 15:02:14 -08:00
sm501-regs.h
sm501.h
smc91x.h
smc911x.h
smp.h
smpboot.h smpboot: Allow selfparking per cpu threads 2013-02-14 15:29:37 +01:00
smsc911x.h
smscphy.h net: phy: smsc: force all capable mode if the phy is started in powerdown mode 2012-12-07 12:48:00 -05:00
sock_diag.h
socket.h
sonet.h
sony-laptop.h
sonypi.h
sort.h
sound.h
soundcard.h
spinlock.h
spinlock_api_smp.h
spinlock_api_up.h
spinlock_types.h
spinlock_types_up.h
spinlock_up.h
splice.h
srcu.h srcu: Remove checks preventing idle CPUs from calling srcu_read_lock() 2013-02-07 15:15:00 -08:00
stackprotector.h
stacktrace.h
start_kernel.h
stat.h
statfs.h
static_key.h
stddef.h
ste_modem_shm.h
stmmac.h Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial 2012-12-13 12:00:02 -08:00
stmp_device.h
stop_machine.h
string.h string: introduce helper to get base file name from given path 2012-12-17 17:15:17 -08:00
string_helpers.h
stringify.h
sungem_phy.h
sunserialcore.h
sunxi_timer.h
superhyway.h
suspend.h
svga.h
swab.h
swap.h
swapfile.h
swapops.h
swiotlb.h
synclink.h
sys.h
sys_soc.h
syscalls.h Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/signal 2012-12-20 18:05:28 -08:00
syscore_ops.h
sysctl.h
sysfs.h
syslog.h
sysrq.h
sysv_fs.h
task_io_accounting.h
task_io_accounting_ops.h
task_work.h
taskstats_kern.h
tboot.h
tc.h
tca6416_keypad.h
tcp.h net: Add support for hardware-offloaded encapsulation 2012-12-09 00:20:28 -05:00
tegra-ahb.h
textsearch.h
textsearch_fsm.h
tfrc.h
thermal.h Thermal: Fix DEFAULT_THERMAL_GOVERNOR 2012-12-12 15:34:48 +08:00
thread_info.h fork: protect architectures where THREAD_SIZE >= PAGE_SIZE against fork bombs 2012-12-18 15:02:13 -08:00
threads.h
ti_wilink_st.h
tick.h Merge branch 'nohz/printk-v8' into irq/core 2013-02-05 00:48:46 +01:00
tifm.h
timb_dma.h
timb_gpio.h
time-armada-370-xp.h
time.h time, Fix setting of hardware clock in NTP code 2013-02-08 15:07:05 -08:00
timekeeper_internal.h
timer.h
timerfd.h
timeriomem-rng.h
timerqueue.h
timex.h
topology.h
toshiba.h
tpm.h
tpm_command.h
trace_clock.h
trace_seq.h
tracehook.h
tracepoint.h
transport_class.h
tsacct_kern.h cputime: Use accessors to read task cputime stats 2013-01-27 19:23:31 +01:00
tty.h
tty_driver.h
tty_flip.h
tty_ldisc.h
typecheck.h
types.h mm, oom: fix race when specifying a thread as the oom origin 2012-12-11 17:22:27 -08:00
u64_stats_sync.h
uaccess.h
ucb1400.h
udp.h net: Add support for hardware-offloaded encapsulation 2012-12-09 00:20:28 -05:00
uidgid.h
uinput.h
uio.h
uio_driver.h
uprobes.h uprobes: Introduce uprobe_apply() 2013-02-08 18:28:04 +01:00
usb.h USB: add usb_hcd_{start,end}_port_resume 2013-01-25 15:06:01 -08:00
usb_usual.h
usbdevice_fs.h
user-return-notifier.h
user.h
user_namespace.h
uts.h
utsname.h
uuid.h
uwb.h
vermagic.h
vexpress.h
vfio.h
vfs.h
vga_switcheroo.h
vgaarb.h
via-core.h
via-gpio.h
via.h
via_i2c.h
video_output.h
videodev2.h
virtio.h virtio: add drv_to_virtio to make code clearly 2012-12-18 15:20:43 +10:30
virtio_config.h
virtio_console.h
virtio_mmio.h
virtio_ring.h
virtio_scsi.h
vlynq.h
vm_event_item.h Automatic NUMA Balancing V11 2012-12-16 15:18:08 -08:00
vmalloc.h
vme.h
vmstat.h mm: numa: Add pte updates, hinting and migration stats 2012-12-11 14:42:48 +00:00
vt.h
vt_buffer.h
vt_kern.h
vtime.h cputime: Safely read cputime of full dynticks CPUs 2013-01-27 20:35:47 +01:00
w1-gpio.h
wait.h wait: add wait_event_lock_irq() interface 2012-11-30 11:47:57 +01:00
wanrouter.h
watchdog.h watchdog: WatchDog Timer Driver Core: fix comment 2012-12-19 22:24:55 +01:00
wireless.h
wl12xx.h
wm97xx.h
workqueue.h workqueue: rename cpu_workqueue to pool_workqueue 2013-02-13 19:29:12 -08:00
writeback.h writeback: remove nr_pages_dirtied arg from balance_dirty_pages_ratelimited_nr() 2012-12-11 17:22:21 -08:00
xattr.h
xilinxfb.h
xz.h
yam.h
z2_battery.h
zconf.h
zlib.h
zorro.h
zorro_ids.h
zutil.h