Alan Cox
33f0f88f1c
[PATCH] TTY layer buffering revamp
...
The API and code have been through various bits of initial review by
serial driver people but they definitely need to live somewhere for a
while so the unconverted drivers can get knocked into shape, existing
drivers that have been updated can be better tuned and bugs whacked out.
This replaces the tty flip buffers with kmalloc objects in rings. In the
normal situation for an IRQ driven serial port at typical speeds the
behaviour is pretty much the same, two buffers end up allocated and the
kernel cycles between them as before.
When there are delays or at high speed we now behave far better as the
buffer pool can grow a bit rather than lose characters. This also means
that we can operate at higher speeds reliably.
For drivers that receive characters in blocks (DMA based, USB and
especially virtualisation) the layer allows a lot of driver specific
code that works around the tty layer with private secondary queues to be
removed. The IBM folks need this sort of layer, the smart serial port
people do, the virtualisers do (because a virtualised tty typically
operates at infinite speed rather than emulating 9600 baud).
Finally many drivers had invalid and unsafe attempts to avoid buffer
overflows by directly invoking tty methods extracted out of the innards
of work queue structs. These are no longer needed and all go away. That
fixes various random hangs with serial ports on overflow.
The other change in here is to optimise the receive_room path that is
used by some callers. It turns out that only one ldisc uses receive room
except asa constant and it updates it far far less than the value is
read. We thus make it a variable not a function call.
I expect the code to contain bugs due to the size alone but I'll be
watching and squashing them and feeding out new patches as it goes.
Because the buffers now dynamically expand you should only run out of
buffering when the kernel runs out of memory for real. That means a lot of
the horrible hacks high performance drivers used to do just aren't needed any
more.
Description:
tty_insert_flip_char is an old API and continues to work as before, as does
tty_flip_buffer_push() [this is why many drivers dont need modification]. It
does now also return the number of chars inserted
There are also
tty_buffer_request_room(tty, len)
which asks for a buffer block of the length requested and returns the space
found. This improves efficiency with hardware that knows how much to
transfer.
and tty_insert_flip_string_flags(tty, str, flags, len)
to insert a string of characters and flags
For a smart interface the usual code is
len = tty_request_buffer_room(tty, amount_hardware_says);
tty_insert_flip_string(tty, buffer_from_card, len);
More description!
At the moment tty buffers are attached directly to the tty. This is causing a
lot of the problems related to tty layer locking, also problems at high speed
and also with bursty data (such as occurs in virtualised environments)
I'm working on ripping out the flip buffers and replacing them with a pool of
dynamically allocated buffers. This allows both for old style "byte I/O"
devices and also helps virtualisation and smart devices where large blocks of
data suddenely materialise and need storing.
So far so good. Lots of drivers reference tty->flip.*. Several of them also
call directly and unsafely into function pointers it provides. This will all
break. Most drivers can use tty_insert_flip_char which can be kept as an API
but others need more.
At the moment I've added the following interfaces, if people think more will
be needed now is a good time to say
int tty_buffer_request_room(tty, size)
Try and ensure at least size bytes are available, returns actual room (may be
zero). At the moment it just uses the flipbuf space but that will change.
Repeated calls without characters being added are not cumulative. (ie if you
call it with 1, 1, 1, and then 4 you'll have four characters of space. The
other functions will also try and grow buffers in future but this will be a
more efficient way when you know block sizes.
int tty_insert_flip_char(tty, ch, flag)
As before insert a character if there is room. Now returns 1 for success, 0
for failure.
int tty_insert_flip_string(tty, str, len)
Insert a block of non error characters. Returns the number inserted.
int tty_prepare_flip_string(tty, strptr, len)
Adjust the buffer to allow len characters to be added. Returns a buffer
pointer in strptr and the length available. This allows for hardware that
needs to use functions like insl or mencpy_fromio.
Signed-off-by: Alan Cox <alan@redhat.com>
Cc: Paul Fulghum <paulkf@microgate.com>
Signed-off-by: Hirokazu Takata <takata@linux-m32r.org>
Signed-off-by: Serge Hallyn <serue@us.ibm.com>
Signed-off-by: Jeff Dike <jdike@addtoit.com>
Signed-off-by: John Hawkes <hawkes@sgi.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Adrian Bunk <bunk@stusta.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-01-10 08:01:59 -08:00
..
amba
[ARM] Move AMBA include files to include/linux/amba/
2006-01-07 13:52:45 +00:00
byteorder
[PATCH] remove gcc-2 checks
2006-01-08 20:14:02 -08:00
dvb
DVB (2444): Implement frontend-specific tuning and the ability to disable zigzag
2006-01-09 15:25:07 -02:00
hdlc
isdn
lockd
RPC: Clean up RPC task structure
2006-01-06 14:58:39 -05:00
mmc
[MMC] Indicate that R1/R1b contains command opcode
2006-01-09 22:51:46 +00:00
mtd
[PATCH] mtd onenand driver: reduce stack usage
2005-12-18 16:28:24 -08:00
netfilter
[NETFILTER]: ctnetlink: Fix dumping of helper name
2006-01-05 12:20:02 -08:00
netfilter_arp
[NETFILTER]: Add "revision" support to arp_tables and ip6_tables
2005-10-31 16:36:08 -02:00
netfilter_bridge
netfilter_ipv4
[NETFILTER]: Add ipt_policy/ip6t_policy matches
2006-01-07 12:57:38 -08:00
netfilter_ipv6
[NETFILTER]: Add ipt_policy/ip6t_policy matches
2006-01-07 12:57:38 -08:00
nfsd
[PATCH] mutex subsystem, semaphore to mutex: VFS, ->i_sem
2006-01-09 15:59:24 -08:00
raid
[PATCH] md: allow sync-speed to be controlled per-device
2006-01-06 08:34:10 -08:00
sunrpc
SUNRPC: Update the spkm3 code to use the make_checksum interface
2006-01-06 14:58:59 -05:00
tc_act
tc_ematch
[INET]: speedup inet (tcp/dccp) lookups
2005-10-03 14:13:38 -07:00
8250_pci.h
a.out.h
ac97_codec.h
acct.h
[PATCH] acct.h needs jiffies.h
2005-11-13 18:14:17 -08:00
acpi.h
adb.h
adfs_fs.h
adfs_fs_i.h
adfs_fs_sb.h
affs_fs.h
affs_hardblocks.h
agp_backend.h
agpgart.h
aio.h
[PATCH] aio: reorder kiocb structure elements to make sync iocb setup faster
2006-01-08 20:14:03 -08:00
aio_abi.h
amifd.h
amifdreg.h
amigaffs.h
apm_bios.h
arcdevice.h
arcfb.h
ata.h
Merge branch 'post-2.6.15' of git://brick.kernel.dk/data/git/linux-2.6-block
2006-01-06 09:01:25 -08:00
atalk.h
[PATCH] Eliminate __attribute__ ((packed)) warnings for gcc-4.1
2006-01-08 20:14:07 -08:00
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
[ATM]: deregistration removes device from atm_devs list immediately
2005-11-29 16:16:41 -08:00
atmioc.h
atmlec.h
atmmpc.h
atmppp.h
atmsap.h
atmsvc.h
attribute_container.h
audit.h
[PATCH] gfp_t: kernel/*
2005-10-28 08:16:49 -07:00
auto_fs.h
auto_fs4.h
auxvec.h
awe_voice.h
ax25.h
b1lli.h
b1pcmcia.h
backing-dev.h
backlight.h
baycom.h
bcd.h
bfs_fs.h
[PATCH] bfs endianness annotations
2005-10-04 13:22:01 -07:00
binfmts.h
bio.h
[SCSI] Convert SCSI mid-layer to scsi_execute_async
2005-12-14 19:03:35 -08:00
bit_spinlock.h
[PATCH] spinlock consolidation
2005-09-10 10:06:21 -07:00
bitmap.h
[PATCH] cpusets: bitmap and mask remap operators
2005-10-30 17:37:21 -08:00
bitops.h
[FLS64]: generic version
2006-01-03 13:11:06 -08:00
blkdev.h
Merge branch 'blk-softirq' of git://brick.kernel.dk/data/git/linux-2.6-block
2006-01-09 09:26:40 -08:00
blkpg.h
blockgroup_lock.h
bootmem.h
[PATCH] Cleanup bootmem allocator and fix alloc_bootmem_low
2006-01-06 08:33:26 -08:00
bpqether.h
buffer_head.h
[PATCH] fat: support a truncate() for expanding size (generic_cont_expand)
2006-01-08 20:13:47 -08:00
cache.h
[PATCH] Change maxaligned_in_smp alignemnt macros to internodealigned_in_smp macros
2006-01-08 20:13:38 -08:00
calc64.h
[PATCH] hrtimer: move div_long_long_rem out of jiffies.h
2006-01-10 08:01:35 -08:00
capability.h
capi.h
cciss_ioctl.h
[PATCH 1/3] cciss: bug fix for hpacucli
2005-11-18 22:00:17 +01:00
cd1400.h
cdev.h
cdk.h
cdrom.h
chio.h
[PATCH] __user annotations (scsi/ch)
2005-09-10 10:16:27 -07:00
circ_buf.h
clk.h
[ARM] Move asm/hardware/clock.h to linux/clk.h
2006-01-07 16:15:52 +00:00
cm4000_cs.h
[PATCH] New Omnikey Cardman 4000 driver
2005-11-13 18:14:10 -08:00
cn_proc.h
[PATCH] Add timestamp field to process events
2005-12-12 08:57:42 -08:00
cobalt-nvram.h
coda.h
coda_cache.h
coda_fs_i.h
coda_linux.h
coda_proc.h
coda_psdev.h
coff.h
com20020.h
compat.h
compat_ioctl.h
[PATCH] sanitize building of fs/compat_ioctl.c
2006-01-10 08:01:33 -08:00
compiler-gcc.h
[PATCH] remove gcc-2 checks
2006-01-08 20:14:02 -08:00
compiler-gcc3.h
[PATCH] remove gcc-2 checks
2006-01-08 20:14:02 -08:00
compiler-gcc4.h
[PATCH] remove gcc-2 checks
2006-01-08 20:14:02 -08:00
compiler-intel.h
compiler.h
[PATCH] Abandon gcc-2.95.x
2006-01-08 20:14:02 -08:00
completion.h
comstats.h
concap.h
config.h
[PATCH] kbuild: permanently fix kernel configuration include mess
2005-11-06 10:22:04 +01:00
configfs.h
[PATCH] configfs: User-driven configuration filesystem
2006-01-03 11:45:28 -08:00
connector.h
[CIFS] Reserve upcall IDX value for CIFS with connector header and add
2005-11-10 15:33:38 -08:00
console.h
console_struct.h
[PATCH] console: Fix compile error
2005-11-07 07:53:52 -08:00
consolemap.h
cpu.h
[PATCH] clean up lock_cpu_hotplug() in cpufreq
2005-11-28 14:42:23 -08:00
cpufreq.h
[CPUFREQ] CPU frequency display in /proc/cpuinfo
2005-12-06 19:35:11 -08:00
cpumask.h
[PATCH] cpusets: bitmap and mask remap operators
2005-10-30 17:37:21 -08:00
cpuset.h
[PATCH] cpuset: remove test for null cpuset from alloc code path
2006-01-08 20:13:44 -08:00
cramfs_fs.h
cramfs_fs_sb.h
crash_dump.h
crc-ccitt.h
crc16.h
[PATCH] crc16: remove w1 specific comments.
2005-09-12 08:48:08 -07:00
crc32.h
crc32c.h
crypto.h
[CRYPTO] Allow multiple implementations of the same algorithm
2006-01-09 14:15:37 -08:00
cryptohash.h
ctype.h
cuda.h
cyclades.h
cyclomx.h
[PATCH] Replace drivers/net/wan custom ctype macros with standard ones
2005-09-14 08:35:09 -04:00
cycx_cfm.h
cycx_drv.h
[PATCH] drivers/net/wan/: possible cleanups
2005-09-14 08:36:54 -04:00
cycx_x25.h
[PATCH] Eliminate __attribute__ ((packed)) warnings for gcc-4.1
2006-01-08 20:14:07 -08:00
dcache.h
[PATCH] shrink dentry struct
2006-01-08 20:13:58 -08:00
dccp.h
[INET_SOCK]: Move struct inet_sock & helper functions to net/inet_sock.h
2006-01-03 13:11:21 -08:00
dcookies.h
debugfs.h
delay.h
devfs_fs.h
devfs_fs_kernel.h
device-mapper.h
device.h
[PATCH] driver core: replace "hotplug" by "uevent"
2006-01-04 16:18:08 -08:00
devpts_fs.h
dio.h
dirent.h
divert.h
dm-ioctl.h
[PATCH] device-mapper ioctl: add skip lock_fs flag
2006-01-06 08:34:01 -08:00
dm9000.h
dma-mapping.h
dmapool.h
[PATCH] gfp flags annotations - part 1
2005-10-08 15:00:57 -07:00
dmi.h
[PATCH] CONFIG_IA32
2005-10-30 17:37:10 -08:00
dn.h
dnotify.h
dqblk_v1.h
dqblk_v2.h
dqblk_xfs.h
[XFS] Add a mechanism for XFS to use the generic quota sync method.
2005-11-03 13:53:34 +11:00
ds1286.h
ds1742rtc.h
Add definitions for the Dallas DS1742 RTC / non-volatile memory.
2005-11-17 16:23:43 +00:00
ds17287rtc.h
Add definitions for the Dallas DS17287 RTC.
2005-11-17 16:23:42 +00:00
dtlk.h
edd.h
efi.h
efs_dir.h
efs_fs.h
efs_fs_i.h
efs_fs_sb.h
efs_vh.h
eisa.h
elevator.h
s/assoicated/associated/
2006-01-10 00:09:36 +01:00
elf-fdpic.h
elf.h
[PATCH] ELF: symbol table type additions
2006-01-08 20:13:49 -08:00
elfcore.h
err.h
errno.h
errqueue.h
etherdevice.h
[NET]: Don't exclude broadcast addresses from is_multicast_ether_addr()
2006-01-03 15:25:45 -08:00
ethtool.h
[PATCH] bnx2: add 5708 support
2005-11-05 21:00:02 -05:00
eventpoll.h
ext2_fs.h
ext2_fs_sb.h
ext3_fs.h
ext3_fs_i.h
[PATCH] mutex subsystem, semaphore to mutex: VFS, ->i_sem
2006-01-09 15:59:24 -08:00
ext3_fs_sb.h
ext3_jbd.h
fadvise.h
fb.h
[PATCH] fbdev: Fix incorrect unaligned access in little-endian machines
2005-12-12 22:31:17 -08:00
fcdevice.h
fcntl.h
fd.h
fd1772.h
fddidevice.h
fdreg.h
file.h
[PATCH] reorder struct files_struct
2005-11-13 18:14:10 -08:00
filter.h
[NET]: Change sk_run_filter()'s return type in net/core/filter.c
2006-01-06 13:08:20 -08:00
firmware.h
[PATCH] driver core: replace "hotplug" by "uevent"
2006-01-04 16:18:08 -08:00
flat.h
font.h
Revert "[PATCH] fbcon: Add rl (Roman Large) font"
2005-11-12 10:14:02 -08:00
fs.h
[PATCH] per-mountpoint noatime/nodiratime
2006-01-10 08:01:34 -08:00
fs_enet_pd.h
[PATCH] changing CONFIG_LOCALVERSION rebuilds too much, for no good reason
2005-11-09 07:55:57 -08:00
fs_struct.h
fsl_devices.h
[PATCH] Update email address for Kumar
2005-11-13 18:14:10 -08:00
fsnotify.h
ftape-header-segment.h
ftape-vendors.h
ftape.h
fuse.h
[PATCH] fuse: make maximum write data configurable
2006-01-06 08:33:56 -08:00
futex.h
gameport.h
[PATCH] fix missing includes
2005-10-30 17:37:32 -08:00
gen_stats.h
genalloc.h
generic_serial.h
genetlink.h
[NETLINK]: Generic netlink family
2005-11-10 02:26:41 +01:00
genhd.h
[BLOCK] Document the READ/WRITE splitup of the disk stats
2005-11-12 10:55:21 +01:00
gfp.h
Fix up GFP_ZONEMASK for GFP_DMA32 usage
2005-11-22 19:39:30 -08:00
hardirq.h
[PATCH] m68k: thread_info header cleanup
2005-11-13 18:14:13 -08:00
harrier_defs.h
hash.h
hayesesp.h
hdlc.h
hdlcdrv.h
hdpu_features.h
hdreg.h
[PATCH] ide: remove dead code from flagged_taskfile()
2005-11-19 22:17:55 +01:00
hdsmart.h
hiddev.h
highmem.h
highuid.h
hil.h
[PARISC] Update parisc specific input code from parisc tree
2005-10-21 22:58:51 -04:00
hil_mlc.h
[PARISC] Update parisc specific input code from parisc tree
2005-10-21 22:58:51 -04:00
hippidevice.h
hp_sdc.h
[PARISC] Update parisc specific input code from parisc tree
2005-10-21 22:58:51 -04:00
hpet.h
hpfs_fs.h
hrtimer.h
[PATCH] hrtimer: convert posix timers completely
2006-01-10 08:01:39 -08:00
hugetlb.h
[PATCH] Add NUMA policy support for huge pages.
2006-01-06 08:33:23 -08:00
hwmon-sysfs.h
hwmon-vid.h
[PATCH] hwmon: add VRM/VID support for some VIA CPUs
2006-01-05 22:16:26 -08:00
hwmon.h
hysdn_if.h
i2c-algo-bit.h
[PATCH] i2c: Drop unused per-i2c-algorithm adapter max
2005-10-28 14:02:10 -07:00
i2c-algo-ite.h
i2c-algo-pca.h
[PATCH] i2c: Drop unused per-i2c-algorithm adapter max
2005-10-28 14:02:10 -07:00
i2c-algo-pcf.h
[PATCH] i2c: Drop unused per-i2c-algorithm adapter max
2005-10-28 14:02:10 -07:00
i2c-algo-sgi.h
i2c-algo-sibyte.h
i2c-dev.h
[PATCH] i2c: Drop useless CVS revision IDs
2005-10-28 14:02:09 -07:00
i2c-id.h
V4L/DVB (3234): Included advanced debug option to tvp5150.c
2006-01-09 15:25:37 -02:00
i2c-isa.h
i2c-pxa.h
i2c.h
[PATCH] I2C: Make i2c_add_driver automatically set the proper module owner
2006-01-05 22:16:24 -08:00
i2o-dev.h
i2o.h
[PATCH] I2O: Bugfixes
2006-01-06 08:33:54 -08:00
i8k.h
ibmtr.h
[PATCH] drivers/net: fix-up schedule_timeout() usage
2005-09-14 08:33:24 -04:00
icmp.h
icmpv6.h
ide.h
[PATCH] mutex subsystem, semaphore to completion: IDE ->gendev_rel_sem
2006-01-09 15:59:27 -08:00
idr.h
include/linux: enclose idr.h in #ifndef
2005-11-08 17:14:08 +01:00
if.h
if_arcnet.h
if_arp.h
[PATCH] ieee80211: Added ieee80211_radiotap.h
2005-09-21 23:03:55 -04:00
if_bonding.h
if_bridge.h
if_cablemodem.h
if_ec.h
if_eql.h
if_ether.h
[NET]: Annotate h_proto in struct ethhdr
2005-11-10 13:03:08 -08:00
if_fc.h
if_fddi.h
if_frad.h
[PATCH] Eliminate __attribute__ ((packed)) warnings for gcc-4.1
2006-01-08 20:14:07 -08:00
if_hippi.h
if_infiniband.h
if_ltalk.h
if_packet.h
if_plip.h
if_ppp.h
[PPP]: add PPP MPPE encryption module
2005-11-08 09:40:47 -08:00
if_pppox.h
[PPPOX]: Fix assignment into const proto_ops.
2006-01-03 13:11:23 -08:00
if_shaper.h
if_slip.h
if_strip.h
if_tr.h
if_tun.h
if_tunnel.h
if_vlan.h
[8021Q]: Add endian annotations.
2005-09-19 15:41:28 -07:00
if_wanpipe.h
if_wanpipe_common.h
[PATCH] changing CONFIG_LOCALVERSION rebuilds too much, for no good reason
2005-11-09 07:55:57 -08:00
igmp.h
in.h
in6.h
[IPV6]: Note values allocated for ip6_tables.
2005-09-10 11:32:45 +09:00
in_route.h
inet.h
[NET]: Endian-annotate in_aton()
2006-01-06 13:24:54 -08:00
inet_diag.h
inetdevice.h
[IPV4]: Replace __in_dev_get with __in_dev_get_rcu/rtnl
2005-10-03 14:35:55 -07:00
init.h
init_task.h
[PATCH] aio: remove kioctx from mm_struct
2005-11-13 18:14:16 -08:00
initrd.h
inotify.h
[PATCH] inotify: add two inotify_add_watch flags
2005-12-12 08:57:43 -08:00
input.h
[PATCH] Input: fix add modalias support build error
2006-01-04 16:18:09 -08:00
interrupt.h
[SCSI] Kill the SCSI softirq handling
2006-01-09 16:03:03 +01:00
ioc4.h
ioctl.h
ioctl32.h
ioport.h
[PATCH] __deprecated_for_modules: insert_resource
2005-11-07 07:54:07 -08:00
ioprio.h
ip.h
[NET]: Endian-annotate struct iphdr
2006-01-06 13:24:29 -08:00
ip6_tunnel.h
ip_mp_alg.h
ipc.h
ipmi.h
[PATCH] ipmi: use refcount in message handler
2005-11-07 07:53:43 -08:00
ipmi_msgdefs.h
ipmi_smi.h
ipsec.h
ipv6.h
[NETFILTER]: Fix xfrm lookup in ip_route_me_harder/ip6_route_me_harder
2006-01-07 12:57:33 -08:00
ipv6_route.h
[IPV6]: Flag RTF_ANYCAST for anycast routes.
2005-12-21 22:56:42 +09:00
ipx.h
irda.h
irq.h
[PATCH] s390: cleanup Kconfig
2006-01-06 08:33:53 -08:00
irq_cpustat.h
isapnp.h
isdn.h
isdn_divertif.h
isdn_ppp.h
isdnif.h
[PATCH] Eliminate __attribute__ ((packed)) warnings for gcc-4.1
2006-01-08 20:14:07 -08:00
isicom.h
iso_fs.h
istallion.h
[PATCH] changing CONFIG_LOCALVERSION rebuilds too much, for no good reason
2005-11-09 07:55:57 -08:00
ite_gpio.h
ixjuser.h
jbd.h
[PATCH] jbd: split checkpoint lists
2006-01-06 08:33:59 -08:00
jffs.h
jffs2.h
[JFFS2] Clean up trailing white spaces
2005-11-07 14:18:56 +01:00
jffs2_fs_i.h
[PATCH] mutex subsystem, semaphore to mutex: VFS, ->i_sem
2006-01-09 15:59:24 -08:00
jffs2_fs_sb.h
[JFFS2] Clean up trailing white spaces
2005-11-07 14:18:56 +01:00
jhash.h
jiffies.h
[PATCH] hrtimer: move div_long_long_rem out of jiffies.h
2006-01-10 08:01:35 -08:00
journal-head.h
joystick.h
[PATCH] joystick-vs-x.org fix
2005-09-17 11:50:02 -07:00
kallsyms.h
kbd_diacr.h
kbd_kern.h
[PATCH] TTY layer buffering revamp
2006-01-10 08:01:59 -08:00
kd.h
kdev_t.h
kernel.h
[PATCH] dump_thread() cleanup
2006-01-10 08:01:25 -08:00
kernel_stat.h
[PATCH] small kernel_stat.h cleanup
2005-11-07 07:53:37 -08:00
kernelcapi.h
kexec.h
[PATCH] kexec: increase max segment limit
2006-01-10 08:01:28 -08:00
key-ui.h
[PATCH] Keys: Add LSM hooks for key management [try #3 ]
2005-10-30 17:37:23 -08:00
key.h
[PATCH] keys: Permit running process to instantiate keys
2006-01-08 20:13:53 -08:00
keyboard.h
keyctl.h
[PATCH] keys: Permit running process to instantiate keys
2006-01-08 20:13:53 -08:00
kfifo.h
[PATCH] gfp flags annotations - part 1
2005-10-08 15:00:57 -07:00
klist.h
kmalloc_sizes.h
kmod.h
kobj_map.h
[PATCH] fix missing includes
2005-10-30 17:37:32 -08:00
kobject.h
[PATCH] kobject_uevent CONFIG_NET=n fix
2006-01-04 16:18:08 -08:00
kprobes.h
[PATCH] kprobes: fix build breakage
2006-01-10 08:01:40 -08:00
kref.h
kthread.h
[PATCH] Add kthread_stop_sem()
2005-10-30 17:37:17 -08:00
ktime.h
[PATCH] hrtimer: hrtimer core code
2006-01-10 08:01:37 -08:00
lapb.h
lcd.h
libata.h
Merge branch 'post-2.6.15' of git://brick.kernel.dk/data/git/linux-2.6-block
2006-01-06 09:01:25 -08:00
libps2.h
limits.h
linkage.h
linux_logo.h
list.h
[PATCH] Add list_for_each_entry_safe_reverse()
2006-01-10 08:01:24 -08:00
llc.h
loop.h
[PATCH] mutex subsystem, semaphore to completion: drivers/block/loop.c
2006-01-09 15:59:27 -08:00
lp.h
major.h
matroxfb.h
mbcache.h
[PATCH] gfp_t: fs/*
2005-10-28 08:16:47 -07:00
mc6821.h
mc146818rtc.h
mca-legacy.h
mca.h
memory.h
[PATCH] Fix compilation with CONFIG_MEMORY_HOTPLUG=y and gcc41.
2006-01-08 20:12:39 -08:00
memory_hotplug.h
[PATCH] memory hotplug: sysfs and add/remove functions
2005-10-29 21:40:44 -07:00
mempolicy.h
[PATCH] cpuset: rebind vma mempolicies fix
2006-01-08 20:13:44 -08:00
mempool.h
[PATCH] gfp flags annotations - part 1
2005-10-08 15:00:57 -07:00
meye.h
mii.h
[PATCH] mii: Add test for GigE support
2005-09-14 08:46:21 -04:00
minix_fs.h
miscdevice.h
mm.h
[PATCH] mutex subsystem, more debugging code
2006-01-09 15:59:21 -08:00
mm_inline.h
[PATCH] Swap Migration V5: LRU operations
2006-01-08 20:12:41 -08:00
mman.h
mmtimer.h
mmzone.h
[PATCH] Change maxaligned_in_smp alignemnt macros to internodealigned_in_smp macros
2006-01-08 20:13:38 -08:00
mod_devicetable.h
[PATCH] I2C: add i2c module alias for i2c drivers to use
2005-10-28 14:02:15 -07:00
module.h
[PATCH] modules: fix sparse warning for every MODULE_PARM
2005-10-30 17:37:26 -08:00
moduleloader.h
moduleparam.h
kbuild: un-stringnify KBUILD_MODNAME
2006-01-06 21:17:50 +01:00
mount.h
[PATCH] per-mountpoint noatime/nodiratime
2006-01-10 08:01:34 -08:00
mpage.h
mqueue.h
mroute.h
msdos_fs.h
[PATCH] fat: support ->direct_IO()
2006-01-08 20:13:46 -08:00
msg.h
mtio.h
mutex-debug.h
[PATCH] mutex subsystem, debugging code
2006-01-09 15:59:20 -08:00
mutex.h
[PATCH] mutex subsystem, core
2006-01-09 15:59:19 -08:00
mv643xx.h
n_r3964.h
[PATCH] n_r3964: fixed usage of HZ; removed bad include
2005-12-24 15:37:00 -08:00
namei.h
[PATCH] __deprecated_for_modules the lookup_hash() prototype
2006-01-10 08:01:31 -08:00
namespace.h
[PATCH] making namespace_sem global
2005-11-07 18:18:10 -08:00
nbd.h
[PATCH] nbd: fix TX/RX race condition
2006-01-06 08:33:20 -08:00
ncp.h
[PATCH] Eliminate __attribute__ ((packed)) warnings for gcc-4.1
2006-01-08 20:14:07 -08:00
ncp_fs.h
ncp_fs_i.h
ncp_fs_sb.h
ncp_mount.h
ncp_no.h
net.h
[NET]: move struct proto_ops to const
2006-01-03 13:11:15 -08:00
netdevice.h
[PATCH] sky2: change netif_rx_schedule_test to __netif_schedule_prep
2005-12-01 02:20:20 -05:00
netfilter.h
[NETFILTER]: Add dummy nf_hook{_thresh}() when NETFILTER is disabled.
2006-01-07 12:57:42 -08:00
netfilter_arp.h
netfilter_bridge.h
netfilter_decnet.h
netfilter_ipv4.h
netfilter_ipv6.h
[NETFILTER]: Add nf_conntrack subsystem.
2005-11-09 16:38:16 -08:00
netfilter_logging.h
netlink.h
[NETLINK]: Type-safe netlink messages/attributes interface
2005-11-10 02:26:40 +01:00
netpoll.h
[NETPOLL]: wrong return for null netpoll_poll_lock()
2005-10-12 15:12:21 -07:00
netrom.h
nfs.h
nfs2.h
nfs3.h
nfs4.h
nfs4_acl.h
nfs4_mount.h
nfs_fs.h
NFSv4: Allow user to set the port used by the NFSv4 callback channel
2006-01-06 14:58:52 -05:00
nfs_fs_i.h
nfs_fs_sb.h
nfs_idmap.h
NFSv4: Allow entries in the idmap cache to expire
2006-01-06 14:58:58 -05:00
nfs_mount.h
nfs_page.h
NFS: simplify inlined bit ops in nfs_page.h
2006-01-06 14:58:48 -05:00
nfs_xdr.h
NFSv4: Ensure DELEGRETURN returns attributes
2006-01-06 14:58:51 -05:00
nfsacl.h
nfsd_idmap.h
nls.h
nmi.h
node.h
nodemask.h
[PATCH] cpusets: bitmap and mask remap operators
2005-10-30 17:37:21 -08:00
notifier.h
nubus.h
numa.h
nvram.h
openprom_fs.h
oprofile.h
page-flags.h
[PATCH] mm: page_state opt docs
2006-01-06 08:33:29 -08:00
pagemap.h
[PATCH] mm: gfp_noreclaim cleanup
2005-11-13 18:14:12 -08:00
pagevec.h
[PATCH] Permit multiple inclusion of linux/pagevec.h
2006-01-08 20:13:52 -08:00
param.h
parport.h
[PATCH] parport: bring back an unused phase for ppdev ioctl
2006-01-08 20:14:07 -08:00
parport_pc.h
[PATCH] include/linux/parport_pc.h: "extern inline" -> "static inline"
2006-01-06 08:33:58 -08:00
parser.h
patchkey.h
pci-acpi.h
[PATCH] pciehp: request control of each hotplug controller individually
2005-11-10 16:09:15 -08:00
pci.h
[PATCH] PCI Error Recovery: header file patch
2006-01-09 12:13:21 -08:00
pci_ids.h
[PATCH] nvidiafb: Add support for some pci-e chipsets
2006-01-10 08:01:49 -08:00
pci_regs.h
[PATCH] powerpc: Experimental support for new G5 Macs ( #2 )
2006-01-09 15:03:17 +11:00
pcieport_if.h
percpu.h
[PATCH] remove unused blkp field in percpu_data
2006-01-08 20:13:59 -08:00
percpu_counter.h
personality.h
pfkeyv2.h
[LSM-IPSec]: Security association restriction.
2006-01-03 13:10:24 -08:00
pg.h
phonedev.h
[PATCH] changing CONFIG_LOCALVERSION rebuilds too much, for no good reason
2005-11-09 07:55:57 -08:00
phy.h
[PATCH] phy address mask support for generic phy layer
2005-11-05 14:40:55 -05:00
pid.h
pipe_fs_i.h
[PATCH] mutex subsystem, semaphore to mutex: VFS, ->i_sem
2006-01-09 15:59:24 -08:00
pkt_cls.h
pkt_sched.h
[PKT_SCHED] netem: packet corruption option
2006-01-03 13:11:05 -08:00
pktcdvd.h
[PATCH] pktcdvd: BUG_ON cleanups
2005-09-13 08:22:31 -07:00
platform.h
platform_device.h
[PATCH] Driver Core: Add platform_device_del()
2006-01-04 16:18:09 -08:00
pm.h
[PATCH] move pm_register/etc. to CONFIG_PM_LEGACY, pm_legacy.h
2005-11-13 18:14:10 -08:00
pm_legacy.h
[PATCH] move pm_register/etc. to CONFIG_PM_LEGACY, pm_legacy.h
2005-11-13 18:14:10 -08:00
pmu.h
[PATCH] 1/5 powerpc: Rework PowerMac i2c part 1
2006-01-09 15:47:16 +11:00
pnp.h
[ALSA] [PATCH] alsa: Improved PnP suspend support
2006-01-03 12:31:30 +01:00
pnpbios.h
poll.h
posix-timers.h
[PATCH] hrtimer: convert posix timers completely
2006-01-10 08:01:39 -08:00
posix_acl.h
[PATCH] gfp flags annotations - part 1
2005-10-08 15:00:57 -07:00
posix_acl_xattr.h
posix_types.h
ppdev.h
ppp-comp.h
[PPP]: add PPP MPPE encryption module
2005-11-08 09:40:47 -08:00
ppp_channel.h
ppp_defs.h
prctl.h
preempt.h
[PATCH] fix race with preempt_enable()
2005-12-22 09:17:39 -08:00
prefetch.h
prio_tree.h
proc_fs.h
[PATCH] Fix sysctl unregistration oops (CVE-2005-2709)
2005-11-08 17:57:30 -08:00
profile.h
ps2esdi.h
ptrace.h
[PATCH] PTRACE_SYSEMU is only for i386 and clashes with other ptrace codes of other archs
2006-01-08 20:14:04 -08:00
qic117.h
qnx4_fs.h
qnxtypes.h
quota.h
[PATCH] saner handling of auto_acct_off() and DQUOT_OFF() in umount
2005-11-07 18:18:09 -08:00
quotaio_v1.h
quotaio_v2.h
quotaops.h
[PATCH] quota: small cleanups
2005-11-07 07:53:39 -08:00
radeonfb.h
radix-tree.h
[PATCH] rcu file: use atomic primitives
2006-01-08 20:13:48 -08:00
raid_class.h
[SCSI] raid class update
2005-11-06 12:32:31 -06:00
ramfs.h
[PATCH] NOMMU: Provide shared-writable mmap support on ramfs
2006-01-06 08:33:32 -08:00
random.h
[INET6]: Generalise tcp_v6_hash_connect
2006-01-03 13:10:56 -08:00
raw.h
rbtree.h
rcupdate.h
[PATCH] rcu: uninline __rcu_pending()
2006-01-09 09:35:44 -08:00
reboot.h
[PATCH] reboot: comment and factor the main reboot functions
2005-09-22 22:17:33 -07:00
reboot_fixups.h
reiserfs_acl.h
reiserfs_fs.h
[PATCH] mutex subsystem, semaphore to mutex: VFS, ->i_sem
2006-01-09 15:59:24 -08:00
reiserfs_fs_i.h
reiserfs_fs_sb.h
reiserfs_xattr.h
relayfs_fs.h
[PATCH] relayfs: cleanup, change relayfs_file_* to relay_file_*
2006-01-08 20:13:51 -08:00
resource.h
rio.h
[PATCH] rapidio: message interface updates
2005-11-07 07:53:47 -08:00
rio_drv.h
[PATCH] DocBook: fix kernel-doc comments
2006-01-10 08:01:53 -08:00
rio_ids.h
[PATCH] RapidIO support: core includes
2005-11-07 07:53:46 -08:00
rio_regs.h
[PATCH] rapidio: core updates
2005-11-07 07:53:46 -08:00
rmap.h
[PATCH] mm: rmap optimisation
2006-01-06 08:33:27 -08:00
romfs_fs.h
root_dev.h
rose.h
route.h
rslib.h
[LIB] reed_solomon: Clean up trailing white spaces
2005-11-07 14:25:38 +01:00
rtc.h
[PATCH] move rtc_interrupt() prototype to rtc.h
2006-01-08 20:13:47 -08:00
rtnetlink.h
[RTNETLINK]: Fix RTNLGRP definitions in rtnetlink.h
2005-12-19 13:54:44 -08:00
rwsem-spinlock.h
[PATCH] add sem_is_read/write_locked()
2005-10-29 21:40:35 -07:00
rwsem.h
sc26198.h
scatterlist.h
[PATCH] Introduce sg_set_buf
2005-10-30 11:14:39 +11:00
scc.h
sched.h
[PATCH] hrtimer: switch itimers to hrtimer
2006-01-10 08:01:38 -08:00
screen_info.h
[PATCH] vesafb: Drop blank hook
2006-01-10 08:01:42 -08:00
sctp.h
scx200.h
scx200_gpio.h
sdla.h
[PATCH] Eliminate __attribute__ ((packed)) warnings for gcc-4.1
2006-01-08 20:14:07 -08:00
sdla_asy.h
sdla_chdlc.h
sdla_fr.h
sdla_ppp.h
sdla_x25.h
sdladrv.h
[PATCH] drivers/net/wan/: possible cleanups
2005-09-14 08:36:54 -04:00
sdlapci.h
sdlasfm.h
seccomp.h
[PATCH] remove gcc-2 checks
2006-01-08 20:14:02 -08:00
securebits.h
security.h
[LSM-IPSec]: Security association restriction.
2006-01-03 13:10:24 -08:00
selection.h
selinux_netlink.h
sem.h
[PATCH] fix remaining missing includes
2005-11-07 07:53:41 -08:00
seq_file.h
seqlock.h
serial.h
[PATCH] fix missing includes
2005-10-30 17:37:32 -08:00
serial167.h
serial_8250.h
[SERIAL] Support Au1x00 8250 UARTs using the generic 8250 driver.
2005-11-06 09:07:03 +00:00
serial_core.h
[ARM] 3181/1: add PORT_ identifier for Hilscher netx uart
2005-11-28 18:09:44 +00:00
serial_ip3106.h
Philips PNX8550 support: MIPS32-like core with 2 Trimedias on it.
2005-10-29 19:31:54 +01:00
serial_reg.h
serialP.h
serio.h
shm.h
[PATCH] SHM_NORESERVE flags for shmget()
2005-11-07 07:53:37 -08:00
shmem_fs.h
signal.h
[PATCH] sigaction should clear all signals on SIG_IGN, not just < 32
2006-01-08 20:13:53 -08:00
skbuff.h
[NETFILTER]: Fix xfrm lookup in ip_route_me_harder/ip6_route_me_harder
2006-01-07 12:57:33 -08:00
slab.h
[PATCH] slob: introduce the SLOB allocator
2006-01-08 20:13:41 -08:00
smb.h
smb_fs.h
smb_fs_i.h
smb_fs_sb.h
smb_mount.h
smbno.h
smp.h
Revert "[NET]: Shut up warnings in net/core/flow.c"
2005-11-23 08:44:05 -08:00
smp_lock.h
[PATCH] m68k: thread_info header cleanup
2005-11-13 18:14:13 -08:00
snmp.h
socket.h
[NET]: Small cleanup to socket initialization
2006-01-03 13:11:14 -08:00
sockios.h
som.h
sonet.h
sonypi.h
sort.h
sound.h
soundcard.h
spinlock.h
kbuild: set correct KBUILD_MODNAME when using well known kernel symbols as module names
2005-12-26 00:33:41 +01:00
spinlock_api_smp.h
[PATCH] spinlock consolidation
2005-09-10 10:06:21 -07:00
spinlock_api_up.h
[PATCH] spinlock consolidation
2005-09-10 10:06:21 -07:00
spinlock_types.h
[PATCH] spinlock consolidation
2005-09-10 10:06:21 -07:00
spinlock_types_up.h
[PATCH] remove gcc-2 checks
2006-01-08 20:14:02 -08:00
spinlock_up.h
[PATCH] spinlock consolidation
2005-09-10 10:06:21 -07:00
stallion.h
[PATCH] changing CONFIG_LOCALVERSION rebuilds too much, for no good reason
2005-11-09 07:55:57 -08:00
stat.h
statfs.h
stddef.h
stop_machine.h
string.h
[PATCH] gfp flags annotations - part 1
2005-10-08 15:00:57 -07:00
stringify.h
superhyway.h
[PATCH] superhyway: multiple block support and VCR rework
2005-11-07 07:53:28 -08:00
suspend.h
[PATCH] swsusp: improve freeing of memory
2006-01-06 08:33:40 -08:00
swap.h
[PATCH] SwapMig: Extend parameters for migrate_pages()
2006-01-08 20:12:42 -08:00
swapops.h
synclink.h
[PATCH] new driver synclink_gt
2006-01-08 20:13:45 -08:00
sys.h
syscalls.h
Merge git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc-merge
2006-01-09 10:03:44 -08:00
sysctl.h
[PATCH] Make high and batch sizes of per_cpu_pagelists configurable
2006-01-08 20:12:40 -08:00
sysdev.h
sysfs.h
sysrq.h
sysv_fs.h
tcp.h
[IP_SOCKGLUE]: Remove most of the tcp specific calls
2006-01-03 13:10:58 -08:00
telephony.h
termios.h
textsearch.h
[PATCH] fix missing includes
2005-10-30 17:37:32 -08:00
textsearch_fsm.h
tfrc.h
[CCID3]: Introduce include/linux/tfrc.h
2005-09-18 00:18:32 -07:00
thread_info.h
[PATCH] m68k: convert thread flags to use bit fields
2005-11-13 18:14:14 -08:00
threads.h
ticable.h
time.h
[PATCH] Remove getnstimestamp()
2006-01-10 08:01:39 -08:00
timer.h
[PATCH] hrtimer: switch itimers to hrtimer
2006-01-10 08:01:38 -08:00
times.h
timex.h
[PATCH] NTP shift_right cleanup
2005-10-30 17:37:18 -08:00
tiocl.h
topology.h
toshiba.h
transport_class.h
trdevice.h
tty.h
[PATCH] TTY layer buffering revamp
2006-01-10 08:01:59 -08:00
tty_driver.h
tty_flip.h
[PATCH] TTY layer buffering revamp
2006-01-10 08:01:59 -08:00
tty_ldisc.h
[PATCH] TTY layer buffering revamp
2006-01-10 08:01:59 -08:00
types.h
[PATCH] gfp_t: infrastructure
2005-10-28 08:16:46 -07:00
udf_fs.h
remove pointers to the defunct UDF mailing list
2006-01-03 13:19:13 +01:00
udf_fs_i.h
remove pointers to the defunct UDF mailing list
2006-01-03 13:19:13 +01:00
udf_fs_sb.h
remove pointers to the defunct UDF mailing list
2006-01-03 13:19:13 +01:00
udp.h
[INET_SOCK]: Move struct inet_sock & helper functions to net/inet_sock.h
2006-01-03 13:11:21 -08:00
ufs_fs.h
ufs_fs_i.h
ufs_fs_sb.h
uinput.h
Input: uinput - add UI_SET_SWBIT ioctl
2005-11-20 00:51:33 -05:00
uio.h
ultrasound.h
umem.h
un.h
unistd.h
usb.h
Merge git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-2.6
2006-01-04 18:44:12 -08:00
usb_cdc.h
usb_ch9.h
usb_gadget.h
[PATCH] gfp_t: drivers/usb
2005-10-28 08:16:49 -07:00
usb_gadgetfs.h
usb_input.h
usb_isp116x.h
usb_otg.h
[PATCH] add usb transceiver set_suspend() method
2005-10-28 16:47:45 -07:00
usb_sl811.h
usb_usual.h
[PATCH] USB Storage: add alauda support
2006-01-04 13:51:42 -08:00
usbdevice_fs.h
[PATCH] usb: Patch for USBDEVFS_IOCTL from 32-bit programs
2005-10-28 16:47:46 -07:00
user.h
utime.h
uts.h
utsname.h
vermagic.h
vfs.h
via.h
video_decoder.h
V4L/DVB (3269): ioctls cleanups.
2006-01-09 15:32:31 -02:00
video_encoder.h
videodev.h
[PATCH] v4l: 829: fixed user mode compiling
2005-11-09 07:56:23 -08:00
videodev2.h
V4L/DVB (3269): ioctls cleanups.
2006-01-09 15:32:31 -02:00
videotext.h
vmalloc.h
[PATCH] vmalloc_node
2005-10-29 21:40:35 -07:00
vt.h
vt_buffer.h
vt_kern.h
wait.h
[PATCH] fix remaining missing includes
2005-11-07 07:53:41 -08:00
wanpipe.h
[PATCH] Replace drivers/net/wan custom ctype macros with standard ones
2005-09-14 08:35:09 -04:00
wanrouter.h
watchdog.h
wavefront.h
[PATCH] Eliminate __attribute__ ((packed)) warnings for gcc-4.1
2006-01-08 20:14:07 -08:00
wireless.h
workqueue.h
[PATCH] add schedule_on_each_cpu()
2006-01-08 20:12:40 -08:00
writeback.h
[PATCH] export/change sync_page_range/_nolock()
2006-01-08 20:13:47 -08:00
x25.h
x1205.h
[PATCH] i2c: New Xicor X1205 RTC driver
2005-10-28 14:02:12 -07:00
xattr.h
[PATCH] move xattr permission checks into the VFS
2006-01-10 08:01:29 -08:00
xfrm.h
[LSM-IPSec]: Security association restriction.
2006-01-03 13:10:24 -08:00
yam.h
zconf.h
zftape.h
zlib.h
[PATCH] lib/zlib*: cleanups
2006-01-10 08:01:57 -08:00
zorro.h
zorro_ids.h
zutil.h
[PATCH] ppc64 boot: remove include from include/linux/zutil.h
2005-10-29 15:04:02 +10:00