aha/include/linux
Ilpo Järvinen 832d11c5cd tcp: Try to restore large SKBs while SACK processing
During SACK processing, most of the benefits of TSO are eaten by
the SACK blocks that one-by-one fragment SKBs to MSS sized chunks.
Then we're in problems when cleanup work for them has to be done
when a large cumulative ACK comes. Try to return back to pre-split
state already while more and more SACK info gets discovered by
combining newly discovered SACK areas with the previous skb if
that's SACKed as well.

This approach has a number of benefits:

1) The processing overhead is spread more equally over the RTT
2) Write queue has less skbs to process (affect everything
   which has to walk in the queue past the sacked areas)
3) Write queue is consistent whole the time, so no other parts
   of TCP has to be aware of this (this was not the case with
   some other approach that was, well, quite intrusive all
   around).
4) Clean_rtx_queue can release most of the pages using single
   put_page instead of previous PAGE_SIZE/mss+1 calls

In case a hole is fully filled by the new SACK block, we attempt
to combine the next skb too which allows construction of skbs
that are even larger than what tso split them to and it handles
hole per on every nth patterns that often occur during slow start
overshoot pretty nicely. Though this to be really useful also
a retransmission would have to get lost since cumulative ACKs
advance one hole at a time in the most typical case.

TODO: handle upwards only merging. That should be rather easy
when segment is fully sacked but I'm leaving that as future
work item (it won't make very large difference anyway since
this current approach already covers quite a lot of normal
cases).

I was earlier thinking of some sophisticated way of tracking
timestamps of the first and the last segment but later on
realized that it won't be that necessary at all to store the
timestamp of the last segment. The cases that can occur are
basically either:
  1) ambiguous => no sensible measurement can be taken anyway
  2) non-ambiguous is due to reordering => having the timestamp
     of the last segment there is just skewing things more off
     than does some good since the ack got triggered by one of
     the holes (besides some substle issues that would make
     determining right hole/skb even harder problem). Anyway,
     it has nothing to do with this change then.

I choose to route some abnormal looking cases with goto noop,
some could be handled differently (eg., by stopping the
walking at that skb but again). In general, they either
shouldn't happen at all or are rare enough to make no difference
in practice.

In theory this change (as whole) could cause some macroscale
regression (global) because of cache misses that are taken over
the round-trip time but it gets very likely better because of much
less (local) cache misses per other write queue walkers and the
big recovery clearing cumulative ack.

Worth to note that these benefits would be very easy to get also
without TSO/GSO being on as long as the data is in pages so that
we can merge them. Currently I won't let that happen because
DSACK splitting at fragment that would mess up pcounts due to
sk_can_gso in tcp_set_skb_tso_segs. Once DSACKs fragments gets
avoided, we have some conditions that can be made less strict.

TODO: I will probably have to convert the excessive pointer
passing to struct sacktag_state... :-)

My testing revealed that considerable amount of skbs couldn't
be shifted because they were cloned (most likely still awaiting
tx reclaim)...

[The rest is considering future work instead since I got
repeatably EFAULT to tcpdump's recvfrom when I added
pskb_expand_head to deal with clones, so I separated that
into another, later patch]

...To counter that, I gave up on the fifth advantage:

5) When growing previous SACK block, less allocs for new skbs
   are done, basically a new alloc is needed only when new hole
   is detected and when the previous skb runs out of frags space

...which now only happens of if reclaim is fast enough to dispose
the clone before the SACK block comes in (the window is RTT long),
otherwise we'll have to alloc some.

With clones being handled I got these numbers (will be somewhat
worse without that), taken with fine-grained mibs:

                  TCPSackShifted 398
                   TCPSackMerged 877
            TCPSackShiftFallback 320
      TCPSACKCOLLAPSEFALLBACKGSO 0
  TCPSACKCOLLAPSEFALLBACKSKBBITS 0
  TCPSACKCOLLAPSEFALLBACKSKBDATA 0
    TCPSACKCOLLAPSEFALLBACKBELOW 0
    TCPSACKCOLLAPSEFALLBACKFIRST 1
 TCPSACKCOLLAPSEFALLBACKPREVBITS 318
      TCPSACKCOLLAPSEFALLBACKMSS 1
   TCPSACKCOLLAPSEFALLBACKNOHEAD 0
    TCPSACKCOLLAPSEFALLBACKSHIFT 0
          TCPSACKCOLLAPSENOOPSEQ 0
  TCPSACKCOLLAPSENOOPSMALLPCOUNT 0
     TCPSACKCOLLAPSENOOPSMALLLEN 0
             TCPSACKCOLLAPSEHOLE 12

Signed-off-by: Ilpo Järvinen <ilpo.jarvinen@helsinki.fi>
Signed-off-by: David S. Miller <davem@davemloft.net>
2008-11-24 21:20:15 -08:00
..
amba
byteorder byteorder: provide swabb.h generically in asm/byteorder.h 2008-10-20 08:52:40 -07:00
can
dvb V4L/DVB (9196): Add support for DSS delivery 2008-10-17 17:15:43 -03:00
hdlc
i2c mfd: twl4030 IRQ handling update 2008-10-22 01:19:37 +02:00
isdn
lockd
mfd rtc: rtc-wm8350: add support for WM8350 RTC 2008-11-12 17:17:18 -08:00
mlx4 mlx4_core: Multiple port type support 2008-10-22 15:38:42 -07:00
mmc mmc: struct device - replace bus_id with dev_name(), dev_set_name() 2008-11-08 21:37:46 +01:00
mtd [MTD] [NOR] Fix cfi_send_gen_cmd handling of x16 devices in x8 mode (v4) 2008-11-05 14:40:25 +01:00
netfilter
netfilter_arp
netfilter_bridge
netfilter_ipv4
netfilter_ipv6
nfsd
raid md: use sysfs_notify_dirent to notify changes to md/dev-xxx/state 2008-10-21 13:25:28 +11:00
regulator
rtc
spi spi: fix compile error 2008-10-30 11:38:47 -07:00
ssb ssb: Fix DMA-API compilation for non-PCI systems 2008-11-10 13:50:19 -08:00
sunrpc misc: replace NIPQUAD() 2008-10-31 00:56:49 -07:00
tc_act
tc_ematch
unaligned
usb Merge branch 'master' into for-upstream 2008-10-20 16:07:19 +01:00
uwb
8250_pci.h
a.out.h
ac97_codec.h
acct.h
acpi.h Merge branch 'video' into release 2008-11-11 21:15:50 -05:00
acpi_pmtmr.h
adb.h
adfs_fs.h
adfs_fs_i.h
adfs_fs_sb.h
aer.h PCI: fix AER capability check 2008-10-20 11:01:52 -07:00
affs_hardblocks.h
agp_backend.h
agpgart.h
aio.h Configure out AIO support 2008-10-16 11:21:51 -07:00
aio_abi.h
amifd.h
amifdreg.h
amigaffs.h
anon_inodes.h
apm-emulation.h
apm_bios.h
arcdevice.h
arcfb.h
async_tx.h
ata.h
ata_platform.h
atalk.h
atm.h
atm_eni.h
atm_he.h
atm_idt77105.h
atm_nicstar.h
atm_suni.h
atm_tcp.h
atm_zatm.h
atmapi.h
atmarp.h
atmbr2684.h
atmclip.h
atmdev.h
atmel-pwm-bl.h
atmel-ssc.h
atmel_pdc.h
atmel_pwm.h
atmel_serial.h
atmel_tc.h
atmioc.h
atmlec.h
atmmpc.h
atmppp.h
atmsap.h
atmsvc.h
attribute_container.h
audit.h
auto_dev-ioctl.h autofs4: add miscellaneous device for ioctls 2008-10-16 11:21:39 -07:00
auto_fs.h
auto_fs4.h autofs4: add miscellaneous device for ioctls 2008-10-16 11:21:39 -07:00
auxvec.h
ax25.h
b1lli.h
b1pcmcia.h
backing-dev.h vmscan: split LRU lists into anon & file sets 2008-10-20 08:50:25 -07:00
backlight.h
baycom.h
bcd.h include/linux/bcd.h: remove comments 2008-10-20 08:52:42 -07:00
bfs_fs.h
binfmts.h Allow recursion in binfmt_script and binfmt_misc 2008-10-16 11:21:38 -07:00
bio.h bio: define __BIOVEC_PHYS_MERGEABLE 2008-11-06 08:41:55 +01:00
bit_spinlock.h
bitmap.h Merge branch 'for-upstream' of git://git.kernel.org/pub/scm/linux/kernel/git/dvrabel/uwb 2008-10-23 08:20:34 -07:00
bitops.h
bitrev.h
blkdev.h [PATCH] end of methods switch: remove the old ones 2008-10-21 07:48:52 -04:00
blkpg.h
blktrace_api.h blktrace: add support for driver data 2008-10-17 08:46:57 +02:00
blockgroup_lock.h
bootmem.h
bottom_half.h
bpqether.h
brcmphy.h
bsg.h
buffer_head.h fs: buffer lock use lock bitops 2008-10-20 08:52:32 -07:00
bug.h
byteorder.h
c2port.h Add c2 port support 2008-11-12 17:17:18 -08:00
cache.h
can.h
capability.h
capi.h
cciss_ioctl.h
cd1400.h
cdev.h
cdk.h
cdrom.h [PATCH] switch cdrom_{open,release,ioctl} to sane APIs 2008-10-21 07:47:22 -04:00
cfag12864b.h
cgroup.h cgroups: tiny cleanups 2008-10-30 11:38:45 -07:00
cgroup_subsys.h pkt_sched: Control group classifier 2008-11-07 22:56:00 -08:00
cgroupstats.h
chio.h
circ_buf.h
clk.h include/linux/clk.h: fix comment 2008-10-16 11:21:32 -07:00
clockchips.h
clocksource.h
cm4000_cs.h
cn_proc.h
cnt32_to_63.h clarify usage expectations for cnt32_to_63() 2008-11-09 11:17:33 -08:00
coda.h
coda_cache.h
coda_fs_i.h
coda_linux.h
coda_psdev.h
coff.h
com20020.h
compat.h compat: generic compat get/settimeofday 2008-10-16 11:21:33 -07:00
compiler-gcc.h
compiler-gcc3.h
compiler-gcc4.h
compiler-intel.h
compiler.h
completion.h
comstats.h
concap.h
configfs.h
connector.h
console.h
console_struct.h
consolemap.h
const.h
cpu.h
cpufreq.h
cpuidle.h
cpumask.h cpumask: introduce new API, without changing anything, v3 2008-11-09 21:09:54 +01:00
cpuset.h cpuset: update top cpuset's mems after adding a node 2008-11-19 18:49:58 -08:00
cramfs_fs.h
cramfs_fs_sb.h
crash_dump.h proc: move /proc/vmcore creation to fs/proc/vmcore.c 2008-10-23 18:51:22 +04:00
crc-ccitt.h
crc-itu-t.h
crc-t10dif.h
crc7.h
crc16.h
crc32.h
crc32c.h
cred.h
crypto.h
cryptohash.h
ctype.h
cuda.h
cyclades.h
cyclomx.h
cycx_cfm.h
cycx_drv.h
cycx_x25.h
dca.h
dcache.h [PATCH vfs-2.6 2/6] vfs: add d_ancestor() 2008-10-23 05:13:16 -04:00
dcbnl.h DCB: Add support for DCB BCN 2008-11-20 21:10:23 -08:00
dccp.h dccp: Set per-connection CCIDs via socket options 2008-11-23 16:02:31 -08:00
dcookies.h
debug_locks.h
debugfs.h
debugobjects.h
delay.h
delayacct.h
device-mapper.h Merge git://git.kernel.org/pub/scm/linux/kernel/git/viro/bdev 2008-10-23 10:23:07 -07:00
device.h i2c: Constify i2c_get_clientdata's parameter 2008-10-22 20:21:31 +02:00
device_cgroup.h
devpts_fs.h
dio.h
dirent.h
display.h
dlm.h
dlm_device.h
dlm_netlink.h
dlm_plock.h
dlmconstants.h
dm-dirty-log.h
dm-io.h
dm-ioctl.h
dm-kcopyd.h
dm-region-hash.h dm raid1: separate region_hash interface part1 2008-10-21 17:45:06 +01:00
dm9000.h
dma-attrs.h
dma-mapping.h
dma_remapping.h intel-iommu: IA64 support 2008-10-18 14:29:15 +01:00
dmaengine.h
dmapool.h
dmar.h dmar: fix using early fixmap mapping for DMAR table parsing 2008-10-16 16:53:04 +02:00
dmi.h
dn.h
dnotify.h
dqblk_v1.h
dqblk_v2.h
dqblk_xfs.h
ds1wm.h
ds1286.h
ds17287rtc.h
dtlk.h
dw_dmac.h
dynamic_printk.h driver core: basic infrastructure for per-module dynamic debug messages 2008-10-16 09:24:47 -07:00
edac.h
edd.h
eeprom_93cx6.h
efi.h x86: Add UV EFI table entry v4 2008-10-16 16:53:13 +02:00
efs_fs_sb.h
efs_vh.h
eisa.h
elevator.h
elf-em.h
elf-fdpic.h
elf.h
elfcore-compat.h
elfcore.h
elfnote.h
enclosure.h
err.h
errno.h
errqueue.h
etherdevice.h eth: Declare an optimized compare_ether_addr_64bits() function 2008-11-23 23:24:32 -08:00
ethtool.h
eventfd.h
eventpoll.h
exportfs.h
ext2_fs.h include: replace __FUNCTION__ with __func__ 2008-10-16 11:21:30 -07:00
ext2_fs_sb.h
ext3_fs.h ext3: add an option to control error handling on file data 2008-10-20 08:52:37 -07:00
ext3_fs_i.h
ext3_fs_sb.h
ext3_jbd.h include: replace __FUNCTION__ with __func__ 2008-10-16 11:21:30 -07:00
f75375s.h
fadvise.h
falloc.h
fault-inject.h
fb.h fb: convert lock/unlock_kernel() into local fb mutex 2008-10-20 08:52:36 -07:00
fcdevice.h
fcntl.h
fd.h
fddidevice.h fddi: convert to new network device ops 2008-11-20 20:29:48 -08:00
fdreg.h
fdtable.h
fib_rules.h
fiemap.h
file.h [PATCH] introduce fmode_t, do annotations 2008-10-21 07:47:06 -04:00
filter.h filter: add SKF_AD_NLATTR_NEST to look for nested attributes 2008-11-20 00:49:27 -08:00
firewire-cdev.h
firewire-constants.h
firmware-map.h
firmware.h
flat.h
font.h
freezer.h freezer_cg: use thaw_process() in unfreeze_cgroup() 2008-10-30 11:38:45 -07:00
fs.h fs: remove prepare_write/commit_write 2008-10-30 11:38:45 -07:00
fs_enet_pd.h
fs_stack.h
fs_struct.h
fs_uart_pd.h
fsl_devices.h gianfar: Fix race in TBI/SerDes configuration 2008-10-31 00:59:46 -04:00
fsnotify.h [PATCH] introduce fmode_t, do annotations 2008-10-21 07:47:06 -04:00
ftrace.h ftrace: remove ftrace hash 2008-10-23 16:00:24 +02:00
fuse.h fuse: implement nonseekable open 2008-10-16 16:08:57 +02:00
futex.h
gameport.h
gen_stats.h
genalloc.h
generic_acl.h
generic_serial.h
genetlink.h
genhd.h block: make add_partition() return pointer to hd_struct 2008-11-18 15:08:56 +01:00
getcpu.h
gfp.h
gfs2_ondisk.h
gigaset_dev.h
gpio.h gpio_free might sleep, generic part 2008-10-16 11:21:40 -07:00
gpio_keys.h
gpio_mouse.h
hardirq.h
hash.h
hayesesp.h
hdlc.h netdevice hdlc: Convert directly reference of netdev->priv 2008-11-21 16:34:18 -08:00
hdlcdrv.h
hdpu_features.h
hdreg.h
hid-debug.h
hid.h HID: fix oops during suspend of unbound HID devices 2008-10-27 15:06:01 +01:00
hiddev.h
hidraw.h
highmem.h
highuid.h
hil.h
hil_mlc.h
hippidevice.h hippi: convert driver to net_device_ops 2008-11-20 20:32:15 -08:00
hp_sdc.h
hpet.h
hrtimer.h hrtimer: clean up unused callback modes 2008-11-12 09:54:40 +01:00
htirq.h
hugetlb.h proc: switch /proc/meminfo to seq_file 2008-10-23 13:52:40 +04:00
hw_random.h
hwmon-sysfs.h
hwmon-vid.h
hwmon.h
hysdn_if.h
i2c-algo-bit.h
i2c-algo-pca.h
i2c-algo-pcf.h i2c-algo-pcf: Add adapter hooks around xfer begin and end 2008-10-22 20:21:30 +02:00
i2c-algo-sgi.h
i2c-dev.h
i2c-gpio.h
i2c-id.h V4L/DVB (9240): saa7127: Fix two typos 2008-10-17 17:25:11 -03:00
i2c-ocores.h
i2c-pca-platform.h
i2c-pnx.h
i2c-pxa.h
i2c.h i2c: Add info->archdata field 2008-10-22 20:21:33 +02:00
i2o-dev.h
i2o.h i2o: Fix 32/64bit DMA locking 2008-10-16 11:21:38 -07:00
i8k.h
i7300_idle.h i7300_idle: Disable ioat channel only on platforms where ile driver can load 2008-10-24 12:54:18 -04:00
i8042.h
ibmtr.h
icmp.h
icmpv6.h
ide.h [PATCH] switch ide_disk_ops ->ioctl() to sane prototype 2008-10-21 07:47:30 -04:00
idr.h
ieee80211.h mac80211_hwsim: Add support for client PS mode 2008-11-10 15:17:41 -05:00
if.h bonding, net: Move last_rx update into bonding recv logic 2008-11-03 18:16:50 -08:00
if_addr.h
if_addrlabel.h
if_arcnet.h
if_arp.h
if_bonding.h
if_bridge.h
if_cablemodem.h
if_ec.h
if_eql.h
if_ether.h
if_fc.h
if_fddi.h
if_frad.h
if_hippi.h
if_infiniband.h
if_link.h
if_ltalk.h
if_macvlan.h
if_packet.h
if_phonet.h
if_plip.h
if_ppp.h
if_pppol2tp.h
if_pppox.h
if_slip.h
if_strip.h
if_tr.h
if_tun.h
if_tunnel.h
if_vlan.h net: fix packet socket delivery in rx irq handler 2008-11-04 14:49:57 -08:00
igmp.h
ihex.h
in.h TPROXY: implemented IP_RECVORIGDSTADDR socket option 2008-11-16 19:32:39 -08:00
in6.h
in_route.h
inet.h
inet_diag.h
inet_lro.h
inetdevice.h
init.h adjust init section definitions 2008-10-29 22:02:09 +01:00
init_ohci1394_dma.h
init_task.h
initrd.h
inotify.h Fix inotify watch removal/umount races 2008-11-15 12:26:44 -08:00
input-polldev.h
input.h HID: map macbook keys for "Expose" and "Dashboard" 2008-11-13 10:31:36 +01:00
intel-iommu.h intel-iommu: IA64 support 2008-10-18 14:29:15 +01:00
interrupt.h Merge branch 'genirq-v28-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip 2008-10-20 13:23:01 -07:00
io-mapping.h io mapping: clean up #ifdefs 2008-11-03 18:21:45 +01:00
io.h
ioc3.h
ioc4.h
iocontext.h
ioctl.h
iommu-helper.h introduce generic iommu_num_pages function 2008-10-16 11:21:33 -07:00
ioport.h Merge branch 'core-v28-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip 2008-10-16 15:17:40 -07:00
ioprio.h
iova.h
ip.h
ip6_tunnel.h
ip_vs.h
ipc.h
ipc_namespace.h
ipmi.h
ipmi_msgdefs.h
ipmi_smi.h
ipsec.h
ipv6.h
ipv6_route.h
ipx.h
irda.h
irq.h genirq: improve include files 2008-10-18 14:05:18 +02:00
irq_cpustat.h
irqflags.h
irqnr.h genirq: fix off by one and coding style 2008-10-21 15:54:40 +02:00
irqreturn.h
isa.h
isapnp.h
iscsi_ibft.h
isdn.h
isdn_divertif.h
isdn_ppp.h
isdnif.h
isicom.h
iso_fs.h
istallion.h
ivtv.h
ivtvfb.h
ixjuser.h
jbd.h jbd: fix error handling for checkpoint io 2008-10-23 08:55:01 -07:00
jbd2.h ext4: Replace hackish ext4_mb_poll_new_transaction with commit callback 2008-10-16 20:00:24 -04:00
jffs2.h
jhash.h
jiffies.h
journal-head.h Remove Andrew Morton's old email accounts 2008-10-16 11:21:32 -07:00
joystick.h
kallsyms.h vsprintf: use new vsprintf symbolic function pointer format 2008-10-16 11:21:31 -07:00
kbd_diacr.h
kbd_kern.h
Kbuild byteorder: add new headers for make headers-install 2008-10-20 08:52:40 -07:00
kbuild.h
kd.h
kdebug.h
kdev_t.h
kernel.h Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 2008-11-18 23:38:23 -08:00
kernel_stat.h Merge branch 'genirq-v28-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip 2008-10-20 13:23:01 -07:00
kernelcapi.h
kexec.h
key-type.h
key-ui.h
key.h
keyboard.h
keyctl.h
kfifo.h
kgdb.h
klist.h
kmalloc_sizes.h
kmod.h pm: rework disabling of user mode helpers during suspend/hibernation 2008-10-16 11:21:29 -07:00
kobj_map.h
kobject.h
kprobes.h
kref.h
ks0108.h
kthread.h
ktime.h
kvm.h KVM: Future-proof device assignment ABI 2008-10-28 14:22:15 +02:00
kvm_host.h KVM: Fix guest shared interrupt with in-kernel irqchip 2008-10-28 14:21:34 +02:00
kvm_para.h
kvm_types.h
lapb.h
latencytop.h
lcd.h
leds-pca9532.h
leds.h leds: Make default trigger fields const 2008-10-20 22:34:12 +01:00
lguest.h
lguest_launcher.h
libata.h libata: revert convert-to-block-tagging patches 2008-11-10 08:04:47 -08:00
libps2.h
license.h
limits.h
linkage.h
linux_logo.h
list.h
list_nulls.h rcu: Introduce hlist_nulls variant of hlist 2008-11-16 19:37:55 -08:00
llc.h
lm_interface.h
lmb.h
lockdep.h lockdep: include/linux/lockdep.h - fix warning in net/bluetooth/af_bluetooth.c 2008-11-13 23:19:10 -08:00
log2.h
loop.h
lp.h
lzo.h
m48t86.h
magic.h
major.h
map_to_7segment.h
maple.h
marker.h
math64.h
matroxfb.h
mbcache.h
mbus.h
mc6821.h
mc146818rtc.h
mca-legacy.h
mca.h
mdio-bitbang.h
mdio-gpio.h phylib: make mdio-gpio work without OF (v4) 2008-11-16 18:59:45 -08:00
memcontrol.h memcg: allocate all page_cgroup at boot 2008-10-20 08:52:39 -07:00
memory.h
memory_hotplug.h
mempolicy.h
mempool.h
memstick.h
meye.h
migrate.h vmscan: move isolate_lru_page() to vmscan.c 2008-10-20 08:50:25 -07:00
mii.h
minix_fs.h
miscdevice.h
mISDNdsp.h
mISDNhw.h
mISDNif.h
mm.h mlock: mlocked pages are unevictable 2008-10-20 08:52:30 -07:00
mm_inline.h vmscan: kill unused lru functions 2008-10-20 08:52:31 -07:00
mm_types.h memcg: allocate all page_cgroup at boot 2008-10-20 08:52:39 -07:00
mman.h
mmdebug.h
mmiotrace.h
mmtimer.h
mmu_notifier.h
mmzone.h memcg: allocate all page_cgroup at boot 2008-10-20 08:52:39 -07:00
mnt_namespace.h
mod_devicetable.h HID: fix hid_device_id for cross compiling 2008-10-29 00:51:25 +01:00
module.h param: Fix duplicate module prefixes 2008-10-22 10:00:23 +11:00
moduleloader.h
moduleparam.h core_param() for genuinely core kernel parameters 2008-10-22 10:00:23 +11:00
mount.h include/linux/mount.h: remove CVS keyword 2008-10-16 11:21:30 -07:00
mpage.h
mqueue.h
mroute.h
mroute6.h
msdos_fs.h fat: Cleanup FAT attribute stuff 2008-11-06 15:41:21 -08:00
msg.h
msi.h
mtio.h
mutex-debug.h
mutex.h
mv643xx.h
mv643xx_eth.h
mv643xx_i2c.h
n_r3964.h
namei.h [PATCH vfs-2.6 6/6] vfs: add LOOKUP_RENAME_TARGET intent 2008-10-23 05:13:20 -04:00
nbd.h
ncp.h
ncp_fs.h
ncp_fs_i.h
ncp_fs_sb.h
ncp_mount.h
ncp_no.h
neighbour.h
net.h reintroduce accept4 2008-11-19 18:49:57 -08:00
netdevice.h ixgbe: this patch adds support for DCB to the kernel and ixgbe driver 2008-11-20 20:52:10 -08:00
netfilter.h
netfilter_arp.h
netfilter_bridge.h
netfilter_decnet.h
netfilter_ipv4.h
netfilter_ipv6.h
netlink.h netlink: avoid memset of 0 bytes sparse warning 2008-11-20 04:08:29 -08:00
netpoll.h
netrom.h
nfs.h
nfs2.h
nfs3.h
nfs4.h
nfs4_acl.h
nfs4_mount.h
nfs_fs.h Make nfs_file_cred more robust. 2008-10-17 13:06:45 -04:00
nfs_fs_i.h
nfs_fs_sb.h
nfs_idmap.h
nfs_iostat.h
nfs_mount.h
nfs_page.h
nfs_xdr.h
nfsacl.h
nfsd_idmap.h
nl80211.h nl80211: Add TX queue parameter configuration 2008-11-10 15:17:40 -05:00
nls.h
nmi.h
node.h
nodemask.h
notifier.h
nsc_gpio.h
nsproxy.h
nubus.h
numa.h
nvram.h
of.h
of_device.h
of_gpio.h
of_i2c.h
of_platform.h
of_spi.h
oom.h
oprofile.h powerpc/oprofile: Fix mutex locking for cell spu-oprofile 2008-10-21 15:17:48 +11:00
page-flags.h mlock: mlocked pages are unevictable 2008-10-20 08:52:30 -07:00
page-isolation.h
page_cgroup.h memcg: fix page_cgroup allocation 2008-10-23 08:55:02 -07:00
pageblock-flags.h
pagemap.h mm: page lock use lock bitops 2008-10-20 08:52:32 -07:00
pagevec.h Unevictable LRU Infrastructure 2008-10-20 08:50:26 -07:00
param.h
parport.h parport: remove CVS keywords 2008-10-16 11:21:49 -07:00
parport_pc.h
parser.h
patchkey.h
path.h
pci-acpi.h
pci-aspm.h
pci.h PCI: annotate return value of pci_ioremap_bar with __iomem 2008-11-03 14:31:18 -08:00
pci_hotplug.h PCI: Hotplug core: remove 'name' 2008-10-22 16:42:43 -07:00
pci_ids.h Merge branch 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-acpi-2.6 2008-10-23 10:20:36 -07:00
pci_regs.h PCI: add support for function level reset 2008-10-22 16:42:35 -07:00
pcieport_if.h
pda_power.h
percpu.h
percpu_counter.h
personality.h
pfkeyv2.h
pfn.h
pg.h
phantom.h
phonedev.h
phonet.h Phonet: do not reply to indication reset packets 2008-10-26 23:07:25 -07:00
phy.h
phy_fixed.h
pid.h
pid_namespace.h pid_ns: kill the now unused task_child_reaper() 2008-10-16 11:21:48 -07:00
pim.h
pipe_fs_i.h
pkt_cls.h pkt_sched: Control group classifier 2008-11-07 22:56:00 -08:00
pkt_sched.h pkt_sched: add DRR scheduler 2008-11-20 04:10:00 -08:00
pktcdvd.h
platform_device.h platform: add new device registration helper 2008-10-16 09:24:51 -07:00
plist.h
pm.h include: replace __FUNCTION__ with __func__ 2008-10-16 11:21:30 -07:00
pm_qos_params.h
pm_wakeup.h
pmu.h
pnp.h Merge branch 'linus' into test 2008-10-23 00:11:07 -04:00
poison.h
poll.h
posix-timers.h
posix_acl.h
posix_acl_xattr.h
posix_types.h
power_supply.h
ppdev.h
ppp-comp.h
ppp_channel.h
ppp_defs.h
prctl.h
preempt.h
prefetch.h
prio_heap.h
prio_tree.h
proc_fs.h proc: remove fs/proc/proc_misc.c 2008-10-23 18:54:05 +04:00
profile.h profiling: fix up CONFIG_PROC_FS=n build 2008-10-23 08:55:01 -07:00
proportions.h
ptrace.h make ptrace_untrace() static 2008-10-20 08:52:39 -07:00
pwm.h
pwm_backlight.h
qnx4_fs.h
qnxtypes.h
quicklist.h
quota.h quota: remove CVS keywords 2008-10-16 11:21:46 -07:00
quotaio_v1.h
quotaio_v2.h
quotaops.h quota: remove CVS keywords 2008-10-16 11:21:46 -07:00
radeonfb.h
radix-tree.h
raid_class.h
ramfs.h
random.h
ratelimit.h remove ratelimt() 2008-11-12 17:17:17 -08:00
raw.h
rbtree.h
rcuclassic.h
rculist.h udp: Use hlist_nulls in UDP RCU code 2008-11-16 19:39:21 -08:00
rculist_nulls.h rcu: Introduce hlist_nulls variant of hlist 2008-11-16 19:37:55 -08:00
rcupdate.h
rcupreempt.h
rcupreempt_trace.h
reboot.h
reciprocal_div.h
regset.h
reiserfs_acl.h
reiserfs_fs.h include: replace __FUNCTION__ with __func__ 2008-10-16 11:21:30 -07:00
reiserfs_fs_i.h
reiserfs_fs_sb.h [PATCH] remember mode of reiserfs journal 2008-10-21 07:49:04 -04:00
reiserfs_xattr.h
relay.h
res_counter.h
resource.h mm: increase the default mlock limit from 32k to 64k 2008-10-30 11:38:45 -07:00
resume-trace.h
rfkill.h
ring_buffer.h ring-buffer: buffer record on/off switch 2008-11-11 15:02:04 -05:00
rio.h
rio_drv.h
rio_ids.h
rio_regs.h
rmap.h make mm/rmap.c:anon_vma_cachep static 2008-10-20 08:52:40 -07:00
romfs_fs.h
root_dev.h
rose.h
route.h
rslib.h
rtc-v3020.h
rtc.h
rtmutex.h include: replace __FUNCTION__ with __func__ 2008-10-16 11:21:30 -07:00
rtnetlink.h ixgbe: this patch adds support for DCB to the kernel and ixgbe driver 2008-11-20 20:52:10 -08:00
rwsem-spinlock.h
rwsem.h
rxrpc.h
sc26198.h
scatterlist.h
scc.h
sched.h fix for account_group_exec_runtime(), make sure ->signal can't be freed under rq->lock 2008-11-11 08:01:43 +01:00
screen_info.h
sctp.h
scx200.h
scx200_gpio.h
sdla.h
seccomp.h
securebits.h
security.h nfsd: fix vm overcommit crash 2008-10-30 11:38:47 -07:00
selection.h
selinux.h
selinux_netlink.h
sem.h
semaphore.h
seq_file.h seq_file: add seq_cpumask_list(), seq_nodemask_list() 2008-10-20 08:52:39 -07:00
seq_file_net.h
seqlock.h
serial.h
serial167.h
serial_8250.h
serial_core.h serial: sh-sci: fix cannot work SH7723 SCIFA 2008-11-12 12:29:56 +09:00
serial_pnx8xxx.h
serial_reg.h
serial_sci.h
serialP.h
serio.h
sh_intc.h
shm.h
shmem_fs.h
signal.h
signalfd.h
skbuff.h tcp: Try to restore large SKBs while SACK processing 2008-11-24 21:20:15 -08:00
slab.h slab: document SLAB_DESTROY_BY_RCU 2008-11-13 20:49:02 +02:00
slab_def.h
slob_def.h
slub_def.h
sm501-regs.h
sm501.h
smb.h
smb_fs.h
smb_fs_i.h
smb_fs_sb.h
smb_mount.h
smbno.h
smc91x.h
smc911x.h smc911x: Add IRQ polarity configuration 2008-10-22 07:00:38 -04:00
smp.h cpumask: introduce new API, without changing anything 2008-11-06 09:05:33 +01:00
smp_lock.h
smsc911x.h SMSC LAN911x and LAN921x vendor driver 2008-11-06 00:58:40 -05:00
snmp.h
socket.h
sockios.h
som.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
stacktrace.h
stallion.h
start_kernel.h
stat.h
statfs.h
stddef.h
stop_machine.h
string.h linux/string.h: fix comment typo 2008-11-02 10:15:07 -08:00
string_helpers.h
stringify.h
superhyway.h
suspend.h
suspend_ioctls.h
svga.h
swab.h byteorder: use generic C version for value byteswapping 2008-10-20 08:52:40 -07:00
swap.h vmscan: unevictable LRU scan sysctl 2008-10-20 08:52:31 -07:00
swapops.h
swiotlb.h introduce generic header file for the software IO/TLB 2008-10-16 11:21:28 -07:00
synclink.h
sys.h
syscalls.h reintroduce accept4 2008-11-19 18:49:57 -08:00
sysctl.h sysctl: simplify ->strategy 2008-10-16 11:21:47 -07:00
sysdev.h
sysfs.h x86: sysfs: kill owner field from attribute 2008-10-20 08:52:42 -07:00
sysrq.h
sysv_fs.h
task_io_accounting.h Remove Andrew Morton's old email accounts 2008-10-16 11:21:32 -07:00
task_io_accounting_ops.h
taskstats.h
taskstats_kern.h
tc.h
tcp.h
telephony.h telephony: trivial: fix up email address 2008-11-11 09:30:23 -08:00
termios.h
textsearch.h
textsearch_fsm.h
tfrc.h
thermal.h
thread_info.h
threads.h
tick.h NOHZ: unify the nohz function calls in irq_enter() 2008-10-17 18:13:38 +02:00
tifm.h
time.h Merge branch 'timers/range-hrtimers' into v28-range-hrtimers-for-linus-v2 2008-10-22 09:48:06 +02:00
timer.h Add round_jiffies_up and related routines 2008-11-06 08:42:48 +01:00
timerfd.h
times.h
timex.h
tiocl.h
tipc.h
tipc_config.h
topology.h sched: fine-tune SD_SIBLING_INIT 2008-11-07 16:09:23 +01:00
toshiba.h
tracehook.h
tracepoint.h
transport_class.h
trdevice.h
tsacct_kern.h
tty.h
tty_driver.h
tty_flip.h
tty_ldisc.h
typecheck.h
types.h [PATCH] introduce fmode_t, do annotations 2008-10-21 07:47:06 -04:00
uaccess.h
ucb1400.h
udf_fs_i.h
udp.h
uinput.h
uio.h
uio_driver.h
ultrasound.h
un.h
unistd.h
unwind.h
usb.h USB: don't register endpoints for interfaces that are going away 2008-11-13 14:45:00 -08:00
usb_usual.h
usbdevice_fs.h
user.h
user_namespace.h
utime.h
uts.h
utsname.h
uwb.h
vermagic.h
veth.h
vfs.h
via.h
video_decoder.h
video_encoder.h
video_output.h
videodev.h
videodev2.h V4L/DVB (9320): v4l2: Add 10-bit RAW Bayer formats 2008-10-21 14:31:15 -02:00
videotext.h
virtio.h
virtio_9p.h
virtio_balloon.h
virtio_blk.h
virtio_config.h
virtio_console.h
virtio_net.h virtio_net: VIRTIO_NET_F_MSG_RXBUF (imprive rcv buffer allocation) 2008-11-16 22:41:34 -08:00
virtio_pci.h
virtio_ring.h
virtio_rng.h
vmalloc.h proc: move /proc/vmallocinfo to mm/vmalloc.c 2008-10-23 15:48:28 +04:00
vmstat.h proc: move /proc/zoneinfo boilerplate to mm/vmstat.c 2008-10-23 17:35:04 +04:00
vt.h
vt_buffer.h
vt_kern.h
w1-gpio.h
wait.h wait: kill is_sync_wait() 2008-10-16 11:21:31 -07:00
wanrouter.h
watchdog.h
wireless.h
wlp.h
wm97xx.h
wm97xx_batt.h
workqueue.h cpumask: introduce new API, without changing anything 2008-11-06 09:05:33 +01:00
writeback.h vfs: Add no_nrwrite_index_update writeback control flag 2008-10-16 10:09:17 -04:00
x25.h
xattr.h
xfrm.h xfrm: Notify changes in UDP encapsulation via netlink 2008-10-28 16:01:07 -07:00
xilinxfb.h
yam.h
zconf.h
zlib.h
zorro.h
zorro_ids.h
zutil.h