android_kernel_xiaomi_sm8350/include/linux
Serge E. Hallyn 3b7391de67 capabilities: introduce per-process capability bounding set
The capability bounding set is a set beyond which capabilities cannot grow.
 Currently cap_bset is per-system.  It can be manipulated through sysctl,
but only init can add capabilities.  Root can remove capabilities.  By
default it includes all caps except CAP_SETPCAP.

This patch makes the bounding set per-process when file capabilities are
enabled.  It is inherited at fork from parent.  Noone can add elements,
CAP_SETPCAP is required to remove them.

One example use of this is to start a safer container.  For instance, until
device namespaces or per-container device whitelists are introduced, it is
best to take CAP_MKNOD away from a container.

The bounding set will not affect pP and pE immediately.  It will only
affect pP' and pE' after subsequent exec()s.  It also does not affect pI,
and exec() does not constrain pI'.  So to really start a shell with no way
of regain CAP_MKNOD, you would do

	prctl(PR_CAPBSET_DROP, CAP_MKNOD);
	cap_t cap = cap_get_proc();
	cap_value_t caparray[1];
	caparray[0] = CAP_MKNOD;
	cap_set_flag(cap, CAP_INHERITABLE, 1, caparray, CAP_DROP);
	cap_set_proc(cap);
	cap_free(cap);

The following test program will get and set the bounding
set (but not pI).  For instance

	./bset get
		(lists capabilities in bset)
	./bset drop cap_net_raw
		(starts shell with new bset)
		(use capset, setuid binary, or binary with
		file capabilities to try to increase caps)

************************************************************
cap_bound.c
************************************************************
 #include <sys/prctl.h>
 #include <linux/capability.h>
 #include <sys/types.h>
 #include <unistd.h>
 #include <stdio.h>
 #include <stdlib.h>
 #include <string.h>

 #ifndef PR_CAPBSET_READ
 #define PR_CAPBSET_READ 23
 #endif

 #ifndef PR_CAPBSET_DROP
 #define PR_CAPBSET_DROP 24
 #endif

int usage(char *me)
{
	printf("Usage: %s get\n", me);
	printf("       %s drop <capability>\n", me);
	return 1;
}

 #define numcaps 32
char *captable[numcaps] = {
	"cap_chown",
	"cap_dac_override",
	"cap_dac_read_search",
	"cap_fowner",
	"cap_fsetid",
	"cap_kill",
	"cap_setgid",
	"cap_setuid",
	"cap_setpcap",
	"cap_linux_immutable",
	"cap_net_bind_service",
	"cap_net_broadcast",
	"cap_net_admin",
	"cap_net_raw",
	"cap_ipc_lock",
	"cap_ipc_owner",
	"cap_sys_module",
	"cap_sys_rawio",
	"cap_sys_chroot",
	"cap_sys_ptrace",
	"cap_sys_pacct",
	"cap_sys_admin",
	"cap_sys_boot",
	"cap_sys_nice",
	"cap_sys_resource",
	"cap_sys_time",
	"cap_sys_tty_config",
	"cap_mknod",
	"cap_lease",
	"cap_audit_write",
	"cap_audit_control",
	"cap_setfcap"
};

int getbcap(void)
{
	int comma=0;
	unsigned long i;
	int ret;

	printf("i know of %d capabilities\n", numcaps);
	printf("capability bounding set:");
	for (i=0; i<numcaps; i++) {
		ret = prctl(PR_CAPBSET_READ, i);
		if (ret < 0)
			perror("prctl");
		else if (ret==1)
			printf("%s%s", (comma++) ? ", " : " ", captable[i]);
	}
	printf("\n");
	return 0;
}

int capdrop(char *str)
{
	unsigned long i;

	int found=0;
	for (i=0; i<numcaps; i++) {
		if (strcmp(captable[i], str) == 0) {
			found=1;
			break;
		}
	}
	if (!found)
		return 1;
	if (prctl(PR_CAPBSET_DROP, i)) {
		perror("prctl");
		return 1;
	}
	return 0;
}

int main(int argc, char *argv[])
{
	if (argc<2)
		return usage(argv[0]);
	if (strcmp(argv[1], "get")==0)
		return getbcap();
	if (strcmp(argv[1], "drop")!=0 || argc<3)
		return usage(argv[0]);
	if (capdrop(argv[2])) {
		printf("unknown capability\n");
		return 1;
	}
	return execl("/bin/bash", "/bin/bash", NULL);
}
************************************************************

[serue@us.ibm.com: fix typo]
Signed-off-by: Serge E. Hallyn <serue@us.ibm.com>
Signed-off-by: Andrew G. Morgan <morgan@kernel.org>
Cc: Stephen Smalley <sds@tycho.nsa.gov>
Cc: James Morris <jmorris@namei.org>
Cc: Chris Wright <chrisw@sous-sol.org>
Cc: Casey Schaufler <casey@schaufler-ca.com>a
Signed-off-by: "Serge E. Hallyn" <serue@us.ibm.com>
Tested-by: Jiri Slaby <jirislaby@gmail.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2008-02-05 09:44:20 -08:00
..
amba
byteorder
can [CAN]: Add missing Kbuild entries 2008-01-28 14:54:13 -08:00
dvb
hdlc
i2c gpiolib: pca9539 i2c gpio expander support 2008-02-05 09:44:13 -08:00
isdn
lockd NLM: Fix sign of length of NLM variable length strings 2008-02-01 16:42:02 -05:00
mlx4
mmc mmc: remove unused 'mode' from the mmc_host structure 2007-12-12 20:01:01 +01:00
mtd
netfilter [NETFILTER]: nf_{conntrack,nat}_pptp: annotate PPtP helper with const 2008-01-31 19:28:09 -08:00
netfilter_arp [NETFILTER]: arp_tables: netns preparation 2008-01-31 19:27:40 -08:00
netfilter_bridge
netfilter_ipv4 [NETFILTER]: x_tables: return new table from {arp,ip,ip6}t_register_table() 2008-01-31 19:27:36 -08:00
netfilter_ipv6 [NETFILTER]: ip6_tables: netns preparation 2008-01-31 19:27:39 -08:00
nfsd nfsd: Allow AIX client to read dir containing mountpoints 2008-02-01 16:42:06 -05:00
raid
rtc
spi mcp23s08 spi gpio expander support 2008-02-05 09:44:13 -08:00
ssb ssb: Add boardflags_hi field to the sprom data structure 2008-01-28 15:09:52 -08:00
sunrpc SUNRPC: spin svc_rqst initialization to its own function 2008-02-01 16:42:15 -05:00
tc_act [NET] tc_nat: header install 2007-12-26 19:36:35 -08:00
tc_ematch
usb USB: fix codingstyle issues in include/linux/usb/ 2008-02-01 14:35:07 -08:00
8250_pci.h
a.out.h
ac97_codec.h
acct.h
acpi_pmtmr.h x86: move pmtmr related declarations 2008-01-30 13:30:18 +01:00
acpi.h ACPI: make _OSI(Linux) console messages smarter 2008-01-23 21:26:15 -05:00
adb.h
adfs_fs_i.h
adfs_fs_sb.h
adfs_fs.h
aer.h
affs_hardblocks.h
agp_backend.h
agpgart.h
aio_abi.h
aio.h
amifd.h
amifdreg.h
amigaffs.h
anon_inodes.h
apm_bios.h apm_event{,info}_t are userspace types 2007-12-17 19:28:16 -08:00
apm-emulation.h
arcdevice.h
arcfb.h
async_tx.h
ata.h libata annotations and fixes 2008-01-23 05:24:15 -05:00
atalk.h
atm_eni.h
atm_he.h
atm_idt77105.h
atm_nicstar.h
atm_suni.h
atm_tcp.h
atm_zatm.h
atm.h
atmapi.h
atmarp.h
atmbr2684.h [ATM]: [br2864] whitespace cleanup 2008-01-28 15:00:14 -08:00
atmclip.h
atmdev.h [ATM]: Convert struct class_device to struct device 2008-01-28 15:00:12 -08:00
atmel_pdc.h
atmel_serial.h [ARM] 4660/3: at91: allow selecting UART for early kernel messages 2008-02-04 13:16:39 +00:00
atmel-ssc.h
atmioc.h
atmlec.h
atmmpc.h
atmppp.h
atmsap.h
atmsvc.h
attribute_container.h [SCSI] attribute_container: update to use the group interface 2008-01-23 11:29:17 -06:00
audit.h [AUDIT] break large execve argument logging into smaller messages 2008-02-01 14:23:55 -05:00
auto_fs4.h
auto_fs.h
auxvec.h
ax25.h
b1lli.h
b1pcmcia.h
backing-dev.h
backlight.h
baycom.h
bcd.h
bfs_fs.h
binfmts.h
bio.h
bit_spinlock.h
bitmap.h
bitops.h
bitrev.h
blkdev.h block: kill swap_io_context() 2008-02-01 11:34:49 +01:00
blkpg.h
blktrace_api.h Fix blktrace compile warning 2008-01-29 21:55:15 +01:00
blockgroup_lock.h
bootmem.h Revert "x86_64: allocate sparsemem memmap above 4G" 2007-10-29 14:05:37 -07:00
bottom_half.h
bpqether.h
bsg.h
buffer_head.h Add buffer head related helper functions 2008-01-28 23:58:26 -05:00
bug.h
cache.h
calc64.h
can.h [CAN]: Add PF_CAN core module 2008-01-28 14:54:10 -08:00
capability.h capabilities: introduce per-process capability bounding set 2008-02-05 09:44:20 -08:00
capi.h
cciss_ioctl.h
cd1400.h
cdev.h
cdk.h
cdrom.h ide-cd: move lba_to_msf() and msf_to_lba() to <linux/cdrom.h> 2008-02-01 23:09:24 +01:00
cfag12864b.h
cgroup_subsys.h sched: cpu accounting controller (V2) 2007-12-02 20:04:49 +01:00
cgroup.h
cgroupstats.h
chio.h include/linux/: Spelling fixes 2008-02-03 17:45:46 +02:00
circ_buf.h
clk.h
clockchips.h
clocksource.h clocksource: add unregister function to disable unusable clocksources 2008-01-30 13:30:02 +01:00
cm4000_cs.h
cn_proc.h
coda_cache.h
coda_fs_i.h
coda_linux.h
coda_psdev.h
coda.h
coff.h
com20020.h
compat.h timerfd: new timerfd API 2008-02-05 09:44:07 -08:00
compiler-gcc3.h remove __attribute_used__ 2008-01-28 23:21:18 +01:00
compiler-gcc4.h remove __attribute_used__ 2008-01-28 23:21:18 +01:00
compiler-gcc.h
compiler-intel.h
compiler.h remove __attribute_used__ 2008-01-28 23:21:18 +01:00
completion.h Add wait_for_completion_killable 2007-12-06 17:40:19 -05:00
comstats.h
concap.h
configfs.h
connector.h [CONNECTOR]: Cleanup struct cn_callback_entry 2008-01-28 15:00:40 -08:00
console_struct.h
console.h
consolemap.h
const.h x86: add _AT() macro to conditionally cast 2008-01-30 13:32:42 +01:00
cpu.h cpu-hotplug: fix build on !CONFIG_SMP 2008-01-25 21:08:02 +01:00
cpufreq.h
cpuidle.h cpuidle: fix HP nx6125 regression 2007-11-19 21:43:22 -05:00
cpumask.h x86: avoid build warning 2008-01-30 13:31:10 +01:00
cpuset.h
cramfs_fs_sb.h
cramfs_fs.h
crash_dump.h
crc7.h
crc16.h
crc32.h
crc32c.h
crc-ccitt.h
crc-itu-t.h
crypto.h [CRYPTO] api: Set default CRYPTO_MINALIGN to unsigned long long 2008-01-11 08:17:01 +11:00
cryptohash.h
ctype.h
cuda.h
cyclades.h include/linux/: Spelling fixes 2008-02-03 17:45:46 +02:00
cyclomx.h
cycx_cfm.h
cycx_drv.h
cycx_x25.h Spelling fixes: lenght->length 2008-02-03 15:42:53 +02:00
dca.h
dcache.h
dccp.h [DCCP]: Reorganize struct dccp_sock to save 8 bytes 2008-02-03 04:28:53 -08:00
dcookies.h
debug_locks.h softlockup: automatically detect hung TASK_UNINTERRUPTIBLE tasks 2008-01-25 21:08:02 +01:00
debugfs.h
delay.h
delayacct.h
device-mapper.h dm: merge max_hw_sector 2007-12-20 17:32:12 +00:00
device.h iommu sg merging: add device_dma_parameters structure 2008-02-05 09:44:10 -08:00
devpts_fs.h
dio.h
dirent.h
display.h
dlm_device.h
dlm_netlink.h
dlm.h dlm: Split lock mode and flag constants into a sharable header. 2008-01-25 14:46:04 -08:00
dlmconstants.h dlm: Split lock mode and flag constants into a sharable header. 2008-01-25 14:46:04 -08:00
dm9000.h
dm-ioctl.h
dma-mapping.h iommu sg merging: add accessors for segment_boundary_mask in device_dma_parameters() 2008-02-05 09:44:11 -08:00
dmaengine.h include/linux/: Spelling fixes 2008-02-03 17:45:46 +02:00
dmapool.h
dmar.h
dmi.h DMI: create dmi_get_slot() 2008-01-23 21:23:13 -05:00
dn.h
dnotify.h
dqblk_v1.h
dqblk_v2.h
dqblk_xfs.h
ds1wm.h
ds1286.h
ds17287rtc.h
dtlk.h
edac.h
edd.h
eeprom_93cx6.h
efi.h
efs_dir.h
efs_fs_i.h
efs_fs_sb.h
efs_fs.h
efs_vh.h
eisa.h
elevator.h block: let elv_register() return void 2007-12-18 08:29:28 +01:00
elf-em.h
elf-fdpic.h
elf.h x86: x86 core dump TLS 2008-01-30 13:31:56 +01:00
elfcore-compat.h
elfcore.h
elfnote.h remove __attribute_used__ 2008-01-28 23:21:18 +01:00
err.h
errno.h
errqueue.h
etherdevice.h
ethtool.h include/linux/: Spelling fixes 2008-02-03 17:45:46 +02:00
eventfd.h
eventpoll.h x86 merge fallout: uml 2007-10-29 07:41:32 -07:00
exportfs.h
ext2_fs_sb.h
ext2_fs.h fix up ext2_fs.h for userspace after reservations backport 2007-11-29 09:24:53 -08:00
ext3_fs_i.h
ext3_fs_sb.h
ext3_fs.h Fix 64KB blocksize in ext3 directories 2007-11-14 18:45:43 -08:00
ext3_jbd.h
ext4_fs_extents.h ext4: Add new functions for searching extent tree 2008-01-28 23:58:27 -05:00
ext4_fs_i.h ext4: Add multi block allocator for ext4 2008-01-29 00:19:52 -05:00
ext4_fs_sb.h ext4: Add multi block allocator for ext4 2008-01-29 00:19:52 -05:00
ext4_fs.h ext4: Add multi block allocator for ext4 2008-01-29 00:19:52 -05:00
ext4_jbd2.h
f75375s.h hwmon: (f75375s) Allow setting up fans with platform_data 2007-11-08 08:42:46 -05:00
fadvise.h
falloc.h
fault-inject.h
fb.h
fcdevice.h
fcntl.h
fd1772.h
fd.h
fddidevice.h
fdreg.h
fib_rules.h
file.h
filter.h
firewire-cdev.h
firewire-constants.h
firmware.h
flat.h
font.h
freezer.h
fs_enet_pd.h
fs_stack.h
fs_struct.h
fs_uart_pd.h
fs.h Merge git://git.kernel.org/pub/scm/linux/kernel/git/bunk/trivial 2008-02-04 07:58:52 -08:00
fsl_devices.h
fsnotify.h
fuse.h fuse: pass open flags to read and write 2007-11-29 09:24:54 -08:00
futex.h futex: Add bitset conditional wait/wakeup functionality 2008-02-01 17:45:14 +01:00
gameport.h
gen_stats.h
genalloc.h
generic_acl.h
generic_serial.h
genetlink.h
genhd.h Driver core: convert block from raw kobjects to core devices 2008-01-24 20:40:36 -08:00
getcpu.h
gfp.h Page allocator: clean up pcp draining functions 2008-02-05 09:44:17 -08:00
gfs2_ondisk.h
gigaset_dev.h
gpio_keys.h
gpio_mouse.h
hardirq.h sched: remove the !PREEMPT_BKL code 2008-01-25 21:08:33 +01:00
harrier_defs.h
hash.h
hayesesp.h
hdlc.h
hdlcdrv.h
hdpu_features.h
hdreg.h Spelling fixes: lenght->length 2008-02-03 15:42:53 +02:00
hdsmart.h <linux/hdsmart.h> is not used by kernel code 2008-02-01 23:09:34 +01:00
hid-debug.h
hid.h HID: Support Samsung IR remote 2008-01-28 14:51:22 +01:00
hiddev.h
hidraw.h
highmem.h mm: fix PageUptodate data race 2008-02-05 09:44:19 -08:00
highuid.h
hil_mlc.h
hil.h
hippidevice.h
hp_sdc.h
hpet.h x86: nuke a ton of dead hpet code 2008-01-30 13:30:27 +01:00
hrtimer.h timerfd: new timerfd API 2008-02-05 09:44:07 -08:00
htirq.h
hugetlb.h Revert "hugetlb: Add hugetlb_dynamic_pool sysctl" 2007-12-17 19:28:17 -08:00
hw_random.h [HWRNG]: move status polling loop to data_present callbacks 2008-01-11 08:16:16 +11:00
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-sgi.h
i2c-dev.h
i2c-gpio.h
i2c-id.h i2c: Discard unused driver IDs 2008-01-27 18:14:50 +01:00
i2c-ocores.h
i2c-pnx.h
i2c-pxa.h
i2c.h i2c: Add i2c_new_dummy() utility 2008-01-27 18:14:52 +01:00
i2o-dev.h
i2o.h
i8k.h
i8042.h
ibmtr.h
icmp.h
icmpv6.h
ide.h ide: move check_dma_crc() to ide-dma.c 2008-02-02 19:56:47 +01:00
idr.h
ieee80211.h iwlwifi: Fix MIMO PS mode 2008-02-01 16:13:16 -05:00
if_addr.h
if_addrlabel.h [IPV6] ADDRCONF: Support RFC3484 configurable address selection policy table. 2008-01-28 14:53:58 -08:00
if_arcnet.h
if_arp.h [CAN]: Allocate protocol numbers for PF_CAN 2008-01-28 14:54:09 -08:00
if_bonding.h bonding: Add new layer2+3 hash for xor/802.3ad modes 2007-12-07 15:00:32 -05:00
if_bridge.h
if_cablemodem.h
if_ec.h
if_eql.h
if_ether.h [ETHER]: Bring back MAC_FMT 2008-01-28 15:08:27 -08:00
if_fc.h
if_fddi.h
if_frad.h annotate the rest of drivers/net/wan 2008-01-28 15:07:58 -08:00
if_hippi.h
if_infiniband.h
if_link.h
if_ltalk.h
if_macvlan.h
if_packet.h
if_plip.h
if_ppp.h
if_pppol2tp.h
if_pppox.h
if_slip.h
if_strip.h
if_tr.h [TR]: Use ctl paths to register net/token-ring/ table 2008-01-28 14:56:28 -08:00
if_tun.h annotate tun 2008-01-28 15:07:57 -08:00
if_tunnel.h [IPV6]: Add RFC4214 support 2008-01-28 14:55:09 -08:00
if_vlan.h [VLAN]: Turn __constant_htons into htons where possible 2008-01-28 15:08:32 -08:00
if_wanpipe.h
if.h [IPV6]: Add RFC4214 support 2008-01-28 14:55:09 -08:00
igmp.h
in6.h
in_route.h
in.h [IPV4]: Enable use of 240/4 address space. 2008-01-28 15:08:44 -08:00
inet_diag.h
inet_lro.h [LRO]: fix lro_gen_skb() alignment 2007-12-05 05:37:32 -08:00
inet.h
inetdevice.h [IPV4]: Make struct ipv4_devconf static. 2008-01-31 19:28:31 -08:00
init_ohci1394_dma.h x86: early boot debugging via FireWire (ohci1394_dma=early) 2008-01-30 13:34:11 +01:00
init_task.h capabilities: introduce per-process capability bounding set 2008-02-05 09:44:20 -08:00
init.h Remove __INIT_REFOK and __INITDATA_REFOK 2008-02-03 08:58:07 +01:00
initrd.h
inotify.h
input-polldev.h
input.h rfkill: add the WiMAX radio type 2008-01-31 19:26:46 -08:00
interrupt.h Preempt-RCU: Use softirq instead of tasklets for 2008-01-25 21:08:23 +01:00
io.h
ioc3.h
ioc4.h
iocontext.h block: cfq: make the io contect sharing lockless 2008-01-28 10:50:33 +01:00
ioctl.h
iommu-helper.h iommu sg: add IOMMU helper functions for the free area management 2008-02-05 09:44:11 -08:00
ioport.h x86: remove extern declarations for code, data, bss resources 2008-01-30 13:30:32 +01:00
ioprio.h ioprio: move io priority from task_struct to io_context 2008-01-28 10:50:29 +01:00
ip6_tunnel.h
ip.h
ipc.h
ipmi_msgdefs.h
ipmi_smi.h IPMI: fix comparison in demangle_device_id 2007-10-30 08:06:55 -07:00
ipmi.h
ipsec.h
ipv6_route.h
ipv6.h [NETNS]: Tcp-v6 sockets per-net lookup. 2008-01-31 19:28:20 -08:00
ipx.h
irda.h
irq_cpustat.h
irq.h genirq: add unlocked version of set_irq_handler() 2007-12-18 18:05:58 +01:00
irqflags.h
irqreturn.h
isa.h
isapnp.h
isdn_divertif.h
isdn_ppp.h
isdn.h
isdnif.h
isicom.h
iso_fs.h
istallion.h
ivtv.h
ivtvfb.h
ixjuser.h
jbd2.h jbd2: add lockdep support 2008-01-28 23:58:27 -05:00
jbd.h jbd: Fix assertion failure in fs/jbd/checkpoint.c 2007-12-05 09:21:20 -08:00
jffs2.h
jhash.h
jiffies.h timers: don't #error on higher HZ values 2008-01-25 21:08:34 +01:00
journal-head.h
joystick.h
kallsyms.h Missing include file in kallsyms.h 2007-11-05 15:12:32 -08:00
kbd_diacr.h
kbd_kern.h
Kbuild Hibernation: Introduce exportable suspend ioctls header (rev. 2) 2008-02-01 18:30:53 -05:00
kd.h Fix <linux/kd.h> usage in userspace 2007-11-29 09:24:52 -08:00
kdebug.h
kdev_t.h
kernel_stat.h
kernel.h x86: make early printk selectable on 64-bit as well 2008-01-30 13:33:06 +01:00
kernelcapi.h
kexec.h
key-type.h
key-ui.h
key.h KEYS: fix macro 2008-01-08 16:10:35 -08:00
keyboard.h
keyctl.h
kfifo.h
klist.h
kmalloc_sizes.h
kmod.h
kobj_map.h
kobject.h Kobject: fix coding style issues in kobject.h 2008-01-24 21:27:06 -08:00
kprobes.h x86: kprobes: add kprobes smoke tests that run on boot 2008-01-30 13:32:53 +01:00
kref.h kref: add kref_set() 2008-01-24 20:40:05 -08:00
ks0108.h
kthread.h
ktime.h
kvm_host.h KVM: Move apic timer migration away from critical section 2008-01-30 18:01:22 +02:00
kvm_para.h KVM: Put kvm_para.h include outside __KERNEL__ 2008-01-30 18:01:22 +02:00
kvm_types.h KVM: Move arch dependent files to new directory arch/x86/kvm/ 2008-01-30 18:01:18 +02:00
kvm.h KVM: Portability: Move kvm_fpu to asm-x86/kvm.h 2008-01-30 18:01:22 +02:00
lapb.h
latency.h
latencytop.h sched: latencytop support 2008-01-25 21:08:34 +01:00
lcd.h
leds.h leds: Fix led trigger locking bugs 2007-12-07 09:06:53 +00:00
lguest_launcher.h virtio: simplify config mechanism. 2008-02-04 23:49:57 +11:00
lguest.h lguest: documentation update 2007-10-25 15:02:50 +10:00
libata.h libata: factor out ata_pci_activate_sff_host() from ata_pci_one() 2008-01-23 05:24:16 -05:00
libps2.h
license.h
limits.h
linkage.h x86: add ENDPROC() markers 2008-01-30 13:33:13 +01:00
linux_logo.h
list.h
llc.h include/linux/: Spelling fixes 2008-02-03 17:45:46 +02:00
lm_interface.h
lock_dlm_plock.h
lockdep.h
log2.h
loop.h
lp.h
lzo.h
m48t86.h
magic.h
major.h
maple.h
marker.h
matroxfb.h
mbcache.h
mc6821.h
mc146818rtc.h rtc: fall back to requesting only the ports we actually use 2007-11-14 18:45:41 -08:00
mca-legacy.h
mca.h
mdio-bitbang.h
memory_hotplug.h
memory.h
mempolicy.h
mempool.h
meye.h
migrate.h
mii.h
minix_fs.h
miscdevice.h
mm_inline.h
mm_types.h
mm.h maps4: introduce a generic page walker 2008-02-05 09:44:16 -08:00
mman.h
mmtimer.h
mmzone.h Page allocator: get rid of the list of cold pages 2008-02-05 09:44:18 -08:00
mnt_namespace.h
mod_devicetable.h sdio: fix module device table definition for m68k 2008-02-05 09:44:08 -08:00
module.h Merge git://git.kernel.org/pub/scm/linux/kernel/git/sam/kbuild 2008-01-29 22:46:14 +11:00
moduleloader.h
moduleparam.h remove __attribute_used__ 2008-01-28 23:21:18 +01:00
mount.h
mpage.h
mqueue.h
mroute.h [IPV4]: Clean the ip_sockglue.c from some ugly ifdefs 2007-11-07 04:08:55 -08:00
msdos_fs.h
msg.h
msi.h
mtio.h
mutex-debug.h
mutex.h Add mutex_lock_killable 2007-12-06 17:37:59 -05:00
mv643xx_eth.h mv643xx_eth: Fix MV643XX_ETH offsets used by Pegasos 2 2007-10-30 14:32:16 -04:00
mv643xx_i2c.h [I2C] i2c-mv64xxx: Don't set i2c_adapter.retries 2008-01-26 15:04:01 +00:00
mv643xx.h [I2C] Split mv643xx I2C platform support 2008-01-26 15:03:59 +00:00
n_r3964.h
namei.h
nbd.h
ncp_fs_i.h
ncp_fs_sb.h
ncp_fs.h
ncp_mount.h
ncp_no.h
ncp.h
neighbour.h
net.h [NET]: Remove the empty net_table 2008-01-28 14:56:29 -08:00
netdevice.h [VLAN]: set_rx_mode support for unicast address list 2008-01-31 19:28:24 -08:00
netfilter_arp.h
netfilter_bridge.h [NETFILTER]: bridge: fix missing link layer headers on outgoing routed packets 2007-12-14 13:54:39 -08:00
netfilter_decnet.h
netfilter_ipv4.h [NETFILTER]: Introduce NF_INET_ hook values 2008-01-28 14:53:55 -08:00
netfilter_ipv6.h [NETFILTER]: Introduce NF_INET_ hook values 2008-01-28 14:53:55 -08:00
netfilter.h [NETFILTER]: Extend nf_inet_addr with in{,6}_addr 2008-01-28 15:02:22 -08:00
netlink.h [IPV4] fib_trie: rescan if key is lost during dump 2008-01-31 19:28:23 -08:00
netpoll.h [NETPOLL]: Don't need rx_flags. 2008-01-28 14:54:18 -08:00
netrom.h
nfs2.h
nfs3.h
nfs4_acl.h
nfs4_mount.h
nfs4.h
nfs_fs_i.h
nfs_fs_sb.h NFS: Invoke nlmclnt_init during NFS mount processing 2008-01-30 02:06:07 -05:00
nfs_fs.h Merge branch 'task_killable' of git://git.kernel.org/pub/scm/linux/kernel/git/willy/misc 2008-02-01 11:45:47 +11:00
nfs_idmap.h
nfs_mount.h NFS: Switch from intr mount option to TASK_KILLABLE 2007-12-06 17:40:25 -05:00
nfs_page.h NFS: Clean up the write request locking. 2008-01-30 02:05:24 -05:00
nfs_xdr.h NFS: NFS version number is unsigned 2008-01-30 02:06:08 -05:00
nfs.h
nfsacl.h
nfsd_idmap.h knfsd: allow cache_register to return error on failure 2008-02-01 16:42:05 -05:00
nl80211.h cfg80211/nl80211: implement station attribute retrieval 2008-01-28 14:59:52 -08:00
nls.h
nmi.h
node.h
nodemask.h
notifier.h Hibernation: Add PM_RESTORE_PREPARE and PM_POST_RESTORE notifiers (rev. 2) 2008-02-01 18:30:53 -05:00
nsc_gpio.h
nsproxy.h
nubus.h
numa.h
nvram.h
of_device.h [POWERPC] Add of_find_matching_node() helper function 2008-01-17 14:53:22 +11:00
of_platform.h
of.h [POWERPC] Add of_find_matching_node() helper function 2008-01-17 14:53:22 +11:00
oom.h
oprofile.h
page-flags.h mm: fix PageUptodate data race 2008-02-05 09:44:19 -08:00
page-isolation.h
pageblock-flags.h
pagemap.h Add lock_page_killable 2007-12-06 17:35:41 -05:00
pagevec.h
param.h
parport_pc.h
parport.h [PARPORT] Remove unused 'irq' argument from parport irq functions 2007-10-23 19:53:16 -04:00
parser.h
pata_platform.h libata: pata_platform: make probe and remove functions device type neutral 2008-01-15 10:23:41 -06:00
patchkey.h
pci_hotplug.h kset: convert pci hotplug to use kset_create_and_add 2008-01-24 20:40:14 -08:00
pci_ids.h serial: add ADDI-DATA GmbH Communication cardsin8250_pci.c and pci_ids.h 2008-02-05 09:44:09 -08:00
pci_regs.h Revert "PCI: PCIE ASPM support" 2008-02-02 11:32:01 -08:00
pci-acpi.h PCI ACPI: Added a function to register _OSC with only PCIe devices. 2008-02-01 15:04:29 -08:00
pci.h iommu sg merging: PCI: add dma segment boundary support 2008-02-05 09:44:12 -08:00
pcieport_if.h
pcounter.h [LIB] pcounter : unline too big functions 2008-01-28 15:00:35 -08:00
pda_power.h pda_power: implement polling 2008-02-02 02:44:34 +03:00
percpu_counter.h
percpu.h ia64: use generic percpu 2008-01-30 23:27:58 +01:00
personality.h
pfkeyv2.h [IPSEC]: Add support for combined mode algorithms 2008-01-31 19:27:03 -08:00
pfn.h
pg.h
phantom.h
phonedev.h
phy_fixed.h phy/fixed.c: rework to not duplicate PHY layer functionality 2008-01-23 19:33:58 -06:00
phy.h PHYLIB: Locking fixes for PHY I/O potentially sleeping 2008-02-03 04:28:41 -08:00
pid_namespace.h pidns: Place under CONFIG_EXPERIMENTAL 2007-11-14 18:45:43 -08:00
pid.h
pipe_fs_i.h
pkt_cls.h [NET_SCHED]: Add flow classifier 2008-01-31 19:28:36 -08:00
pkt_sched.h [NET_SCHED]: sch_sfq: make internal queues visible as classes 2008-01-31 19:28:35 -08:00
pktcdvd.h pktcdvd: Convert from class_device to device for block/pktcdvd 2008-01-24 20:40:06 -08:00
platform_device.h Driver Core: constify the name passed to platform_device_register_simple 2008-01-24 20:40:43 -08:00
plist.h
pm_legacy.h PM: ACPI and APM must not be enabled at the same time 2008-01-11 12:26:47 -05:00
pm.h include/linux/: Spelling fixes 2008-02-03 17:45:46 +02:00
pmu.h [POWERPC] Fix for via-pmu based backlight control 2007-12-21 22:14:07 +11:00
pnp.h include/linux/: Spelling fixes 2008-02-03 17:45:46 +02:00
pnpbios.h
poison.h
poll.h
posix_acl_xattr.h
posix_acl.h
posix_types.h
posix-timers.h
power_supply.h power_supply: add few more values and props 2008-02-02 02:43:00 +03:00
ppdev.h
ppp_channel.h
ppp_defs.h
ppp-comp.h
prctl.h capabilities: introduce per-process capability bounding set 2008-02-05 09:44:20 -08:00
preempt.h
prefetch.h
prio_heap.h
prio_tree.h
proc_fs.h maps4: move clear_refs code to task_mmu.c 2008-02-05 09:44:16 -08:00
profile.h
proportions.h
ps2esdi.h
ptrace.h ptrace: generic PTRACE_SINGLEBLOCK 2008-01-30 13:30:53 +01:00
qnx4_fs.h
qnxtypes.h
quicklist.h quicklists: do not release off node pages early 2007-12-23 12:54:36 -08:00
quota.h
quotaio_v1.h
quotaio_v2.h
quotaops.h
radeonfb.h
radix-tree.h radix_tree.h trivial comment correction 2008-02-03 16:12:47 +02:00
raid_class.h
ramfs.h
random.h
raw.h
rbtree.h
rcuclassic.h Preempt-RCU: implementation 2008-01-25 21:08:24 +01:00
rcupdate.h Preempt-RCU: implementation 2008-01-25 21:08:24 +01:00
rcupreempt_trace.h Preempt-RCU: implementation 2008-01-25 21:08:24 +01:00
rcupreempt.h Preempt-RCU: implementation 2008-01-25 21:08:24 +01:00
reboot.h
reciprocal_div.h
regset.h x86: user_regset user-copy helpers 2008-01-30 13:31:47 +01:00
reiserfs_acl.h
reiserfs_fs_i.h
reiserfs_fs_sb.h Spelling fixes: lenght->length 2008-02-03 15:42:53 +02:00
reiserfs_fs.h
reiserfs_xattr.h
relay.h
resource.h
resume-trace.h
rfkill.h rfkill: add the WiMAX radio type 2008-01-31 19:26:46 -08:00
rio_drv.h
rio_ids.h
rio_regs.h
rio.h
rmap.h
romfs_fs.h
root_dev.h
rose.h
route.h
rslib.h
rtc-v3020.h
rtc.h RTC: convert mutex to bitfield 2007-11-29 09:24:54 -08:00
rtmutex.h
rtnetlink.h [NET]: Make rtnetlink infrastructure network namespace aware (v3) 2008-01-28 14:54:25 -08:00
rwsem-spinlock.h
rwsem.h
rxrpc.h
sc26198.h
scatterlist.h SG: work with the SCSI fixed maximum allocations. 2008-01-28 10:54:49 +01:00
scc.h
sched.h capabilities: introduce per-process capability bounding set 2008-02-05 09:44:20 -08:00
screen_info.h x86_64 EFI boot support: EFI frame buffer driver 2007-11-29 09:24:54 -08:00
sctp.h
scx200_gpio.h
scx200.h
sdla.h
seccomp.h
securebits.h
security.h capabilities: introduce per-process capability bounding set 2008-02-05 09:44:20 -08:00
selection.h
selinux_netlink.h
selinux.h SELinux: Enable dynamic enable/disable of the network access checks 2008-01-30 08:17:26 +11:00
sem.h
seq_file.h [NET]: Consolidate net namespace related proc files creation. 2008-01-28 14:54:28 -08:00
seqlock.h
serial167.h
serial_8250.h 8250.c: support specifying DW APB UARTs in device platform_data 2008-02-05 09:44:09 -08:00
serial_core.h IP22ZILOG: fix lockup and sysrq 2007-11-29 09:24:53 -08:00
serial_pnx8xxx.h
serial_reg.h
serial.h
serialP.h
serio.h
shm.h
shmem_fs.h
signal.h
signalfd.h Fix a small number of "memeber" typoes. 2008-02-03 15:12:15 +02:00
skbuff.h virtio: Implement skb_partial_csum_set, for setting partial csums on untrusted packets. 2008-02-04 23:49:56 +11:00
slab_def.h Unify /proc/slabinfo configuration 2008-01-02 13:04:48 -08:00
slab.h Unify /proc/slabinfo configuration 2008-01-02 13:04:48 -08:00
slob_def.h
slub_def.h Explain kmem_cache_cpu fields 2008-02-04 10:56:03 -08:00
sm501-regs.h include/linux/: Spelling fixes 2008-02-03 17:45:46 +02:00
sm501.h
smb_fs_i.h
smb_fs_sb.h
smb_fs.h
smb_mount.h
smb.h
smbno.h
smp_lock.h sched: remove the !PREEMPT_BKL code 2008-01-25 21:08:33 +01:00
smp.h x86: optimize lock prefix switching to run less frequently 2008-01-30 13:33:17 +01:00
snmp.h [XFRM]: Fix statistics. 2008-01-31 19:28:30 -08:00
socket.h [NET] sysctl: make sysctl_somaxconn per-namespace 2008-01-28 14:56:57 -08:00
sockios.h
som.h
sonet.h
sony-laptop.h
sonypi.h
sort.h
sound.h
soundcard.h
spinlock_api_smp.h
spinlock_api_up.h include/linux/: Spelling fixes 2008-02-03 17:45:46 +02:00
spinlock_types_up.h
spinlock_types.h spinlock: lockbreak cleanup 2008-01-30 13:31:20 +01:00
spinlock_up.h spinlock: lockbreak cleanup 2008-01-30 13:31:20 +01:00
spinlock.h spinlock: lockbreak cleanup 2008-01-30 13:31:20 +01:00
splice.h [SPLICE]: Don't assume regular pages in splice_to_pipe() 2008-01-28 14:53:30 -08:00
srcu.h
stacktrace.h sched: latencytop support 2008-01-25 21:08:34 +01:00
stallion.h
start_kernel.h
stat.h
statfs.h
stddef.h
stop_machine.h
string.h [TIPC]: Fix headercheck wrt. tipc_config.h 2007-10-30 21:44:00 -07:00
stringify.h
superhyway.h
suspend_ioctls.h Hibernation: Introduce exportable suspend ioctls header (rev. 2) 2008-02-01 18:30:53 -05:00
suspend.h Page allocator: clean up pcp draining functions 2008-02-05 09:44:17 -08:00
svga.h
swap.h tmpfs: move swap swizzling into shmem 2008-02-05 09:44:15 -08:00
swapops.h maps4: move is_swap_pte 2008-02-05 09:44:16 -08:00
synclink.h
sys.h
syscalls.h timerfd: new timerfd API 2008-02-05 09:44:07 -08:00
sysctl.h capabilities: introduce per-process capability bounding set 2008-02-05 09:44:20 -08:00
sysdev.h Driver core: change sysdev classes to use dynamic kobject names 2008-01-24 20:40:40 -08:00
sysfs.h [SCSI] sysfs: add filter function to groups 2008-01-23 11:29:18 -06:00
sysrq.h
sysv_fs.h
task_io_accounting_ops.h
task_io_accounting.h
taskstats_kern.h
taskstats.h
tc.h
tcp.h [TCP]: Rewrite SACK block processing & sack_recv_cache use 2008-01-28 14:54:07 -08:00
telephony.h
termios.h
textsearch_fsm.h
textsearch.h
tfrc.h
thread_info.h futex: Add bitset conditional wait/wakeup functionality 2008-02-01 17:45:14 +01:00
threads.h
tick.h tick-sched: add more debug information 2008-02-01 17:45:14 +01:00
tifm.h tifm: Convert from class_device to device for TI flash media 2008-01-24 20:40:06 -08:00
time.h timekeeping: update xtime_cache when time(zone) changes 2008-02-01 17:45:13 +01:00
timer.h time: clean hungarian notation from timers 2008-01-30 13:30:00 +01:00
timerfd.h
times.h
timex.h time: add ADJ_OFFSET_SS_READ 2007-11-26 20:42:19 +01:00
tiocl.h
tipc_config.h
tipc.h
topology.h sched: whitespace cleanups in topology.h 2008-01-25 21:08:20 +01:00
toshiba.h
transport_class.h
trdevice.h
tsacct_kern.h
tty_driver.h
tty_flip.h
tty_ldisc.h
tty.h [CAN]: Allocate protocol numbers for PF_CAN 2008-01-28 14:54:09 -08:00
types.h linux/types.h: Use __u64 for aligned_u64 2008-01-31 19:27:30 -08:00
uaccess.h
udf_fs_i.h
udf_fs_sb.h
udf_fs.h
udp.h
ufs_fs.h
uinput.h
uio_driver.h UIO: fix kobject usage 2008-01-24 20:40:26 -08:00
uio.h
ultrasound.h
un.h
unistd.h
unwind.h
usb_usual.h USB: usb-storage: new "lockable" subclass 0x07 2008-02-01 14:34:49 -08:00
usb.h USB: fix codingstyle issues in include/linux/usb.h 2008-02-01 14:35:07 -08:00
usbdevice_fs.h USB: usbdevfs_urb: __user annotation 2008-02-01 14:34:58 -08:00
user_namespace.h
user.h
utime.h
uts.h
utsname.h
vermagic.h
veth.h [VETH]: move veth.h to include/linux 2007-12-26 19:36:35 -08:00
vfs.h
via.h
video_decoder.h
video_encoder.h
video_output.h
videodev2.h
videodev.h
videotext.h
virtio_9p.h 9p: add virtio transport 2007-10-23 13:47:31 -05:00
virtio_balloon.h virtio: balloon driver 2008-02-04 23:50:13 +11:00
virtio_blk.h virtio: remove unused id field from struct virtio_blk_outhdr 2008-02-04 23:50:01 +11:00
virtio_config.h virtio: reset function 2008-02-04 23:50:03 +11:00
virtio_console.h Virtio console driver 2007-10-23 15:49:55 +10:00
virtio_net.h virtio: Tweak virtio_net defines 2008-02-04 23:50:02 +11:00
virtio_pci.h virtio: Use PCI revision field to indicate virtio PCI ABI version 2008-02-04 23:50:12 +11:00
virtio_ring.h virtio: clarify NO_NOTIFY flag usage 2008-02-04 23:50:00 +11:00
virtio.h virtio: reset function 2008-02-04 23:50:03 +11:00
vmalloc.h vmalloc: add const to void* parameters 2008-02-05 09:44:14 -08:00
vmstat.h
vt_buffer.h
vt_kern.h
vt.h
wait.h lockdep: annotate epoll 2008-02-05 09:44:07 -08:00
wanrouter.h
watchdog.h
wireless.h Spelling fixes: lenght->length 2008-02-03 15:42:53 +02:00
workqueue.h lockdep: fix workqueue creation API lockdep interaction 2008-01-16 09:51:58 +01:00
writeback.h writeback: speed up writeback of big dirty files 2008-02-05 09:44:19 -08:00
x25.h
xattr.h VFS/Security: Rework inode_getsecurity and callers to return resulting buffer 2008-02-05 09:44:20 -08:00
xfrm.h [IPSEC]: Add support for combined mode algorithms 2008-01-31 19:27:03 -08:00
xilinxfb.h
yam.h
zconf.h
zlib.h
zorro_ids.h
zorro.h
zutil.h