Skip to site navigation (Press enter)
[lk] The Linux Kernel API
Peter Teoh
Wed, 02 Mar 2011 07:21:03 -0800
http://www.huihoo.org/gnu_linux/kernel-api/index.html
The Linux Kernel API
Legal Notice
Table of Contents
1.
The Linux VFS
The Directory Cache
d_invalidate
— invalidate a dentry
d_find_alias
— grab a hashed alias of inode
prune_dcache
— shrink the dcache
shrink_dcache_sb
— shrink dcache for a superblock
have_submounts
— check for mounts over a dentry
shrink_dcache_parent
— prune dcache
d_alloc
— allocate a dcache entry
d_instantiate
— fill in inode information for a dentry
d_alloc_root
— allocate root dentry
d_lookup
— search for a dentry
d_validate
— verify dentry provided from insecure source
d_delete
— delete a dentry
d_rehash
— add an entry back to the hash
d_move
— move a dentry
__d_path
— return the path of a dentry
is_subdir
— is new dentry a subdirectory of old_dentry
find_inode_number
— check for dentry with name
d_drop
— drop a dentry
d_add
— add dentry to hash queues
dget
— get a reference to a dentry
d_unhashed
— is dentry hashed
Inode Handling
__mark_inode_dirty
— internal function
write_inode_now
— write an inode to disk
clear_inode
— clear an inode
invalidate_inodes
— discard the inodes on a device
get_empty_inode
— obtain an inode
iunique
— get a unique inode number
insert_inode_hash
— hash an inode
remove_inode_hash
— remove an inode from the hash
iput
— put an inode
bmap
— find a block number in a file
update_atime
— update the access time
make_bad_inode
— mark an inode bad due to an I/O error
is_bad_inode
— is an inode errored
Registration and Superblocks
register_filesystem
— register a new filesystem
unregister_filesystem
— unregister a file system
__wait_on_super
— wait on a superblock
get_super
— get the superblock of a device
get_empty_super
— find empty superblocks
2.
Linux Networking
Socket Buffer Functions
skb_queue_empty
— check if a queue is empty
skb_get
— reference buffer
kfree_skb
— free an sk_buff
skb_cloned
— is the buffer a clone
skb_shared
— is the buffer shared
skb_unshare
— make a copy of a shared buffer
skb_peek
—
skb_peek_tail
—
skb_queue_len
— get queue length
__skb_queue_head
— queue a buffer at the list head
skb_queue_head
— queue a buffer at the list head
__skb_queue_tail
— queue a buffer at the list tail
skb_queue_tail
— queue a buffer at the list tail
__skb_dequeue
— remove from the head of the queue
skb_dequeue
— remove from the head of the queue
skb_insert
— insert a buffer
skb_append
— append a buffer
skb_unlink
— remove a buffer from a list
__skb_dequeue_tail
— remove from the tail of the queue
skb_dequeue_tail
— remove from the head of the queue
skb_put
— add data to a buffer
skb_push
— add data to the start of a buffer
skb_pull
— remove data from the start of a buffer
skb_headroom
— bytes at buffer head
skb_tailroom
— bytes at buffer end
skb_reserve
— adjust headroom
skb_trim
— remove end from a buffer
skb_orphan
— orphan a buffer
skb_queue_purge
— empty a list
__skb_queue_purge
— empty a list
dev_alloc_skb
— allocate an skbuff for sending
skb_cow
— copy a buffer if need be
skb_over_panic
— private function
skb_under_panic
— private function
alloc_skb
— allocate a network buffer
__kfree_skb
— private function
skb_clone
— duplicate an sk_buff
skb_copy
— copy an sk_buff
skb_copy_expand
— copy and expand sk_buff
Socket Filter
sk_run_filter
— run a filter on a socket
3.
Network device support
Driver Support
init_etherdev
— Register ethernet device
dev_add_pack
— add packet handler
dev_remove_pack
— remove packet handler
__dev_get_by_name
— find a device by its name
dev_get_by_name
— find a device by its name
dev_get
— test if a device exists
__dev_get_by_index
— find a device by its ifindex
dev_get_by_index
— find a device by its ifindex
dev_alloc_name
— allocate a name for a device
dev_alloc
— allocate a network device and name
netdev_state_change
— device changes state
dev_load
— load a network module
dev_open
— prepare an interface for use.
dev_close
— shutdown an interface.
register_netdevice_notifier
— register a network notifier block
unregister_netdevice_notifier
— unregister a network notifier block
dev_queue_xmit
— transmit a buffer
netif_rx
— post buffer to the network code
net_call_rx_atomic
—
register_gifconf
— register a SIOCGIF handler
netdev_set_master
— set up master/slave pair
dev_set_promiscuity
— update promiscuity count on a device
dev_set_allmulti
— update allmulti count on a device
dev_ioctl
— network device ioctl
dev_new_index
— allocate an ifindex
register_netdevice
— register a network device
netdev_finish_unregister
— complete unregistration
unregister_netdevice
— remove device from the kernel
8390 Based Network Cards
ei_open
— Open/initialize the board.
ei_close
— shut down network device
ei_interrupt
— handle the interrupts from an 8390
ethdev_init
— init rest of 8390 device struct
NS8390_init
— initialize 8390 hardware
Synchronous PPP
sppp_input
— receive and process a WAN PPP frame
sppp_close
— close down a synchronous PPP or Cisco HDLC link
sppp_open
— open a synchronous PPP or Cisco HDLC link
sppp_reopen
— notify of physical link loss
sppp_change_mtu
— Change the link MTU
sppp_do_ioctl
— Ioctl handler for ppp/hdlc
sppp_attach
— attach synchronous PPP/HDLC to a device
sppp_detach
— release PPP resources from a device
4.
Module Loading
request_module
— try to load a kernel module
5.
Hardware Interfaces
Interrupt Handling
disable_irq_nosync
— disable an irq without waiting
disable_irq
— disable an irq and wait for completion
enable_irq
— enable interrupt handling on an irq
probe_irq_mask
— scan a bitmap of interrupt lines
MTRR Handling
mtrr_add
— Add a memory type region
mtrr_del
— delete a memory type region
PCI Support Library
pci_find_slot
— locate PCI device from a given PCI slot
pci_find_device
— begin or continue searching for a PCI device by vendor/device id
pci_find_class
— begin or continue searching for a PCI device by class
pci_find_parent_resource
— return resource region of parent bus of given region
pci_set_power_state
— Set power management state of a device.
pci_enable_device
— Initialize device before it's used by a driver.
MCA Architecture
MCA Device Functions
MCA Bus DMA
6.
The Device File System
devfs_register
— Register a device entry.
devfs_unregister
— Unregister a device entry.
devfs_mk_symlink
—
devfs_mk_dir
— Create a directory in the devfs namespace.
devfs_find_handle
— Find the handle of a devfs entry.
devfs_get_flags
— Get the flags for a devfs entry.
devfs_get_maj_min
— Get the major and minor numbers for a devfs entry.
devfs_get_handle_from_inode
— Get the devfs handle for a VFS inode.
devfs_generate_path
— Generate a pathname for an entry, relative to the devfs root.
devfs_get_ops
— Get the device operations for a devfs entry.
devfs_set_file_size
— Set the file size for a devfs regular file.
devfs_get_info
— Get the info pointer written to private_data of @de upon open.
devfs_set_info
— Set the info pointer written to private_data upon open.
devfs_get_parent
— Get the parent device entry.
devfs_get_first_child
— Get the first leaf node in a directory.
devfs_get_next_sibling
— Get the next sibling leaf node. for a device entry.
devfs_auto_unregister
— Configure a devfs entry to be automatically unregistered.
devfs_get_unregister_slave
— Get the slave entry which will be automatically unregistered.
devfs_register_chrdev
— Optionally register a conventional character driver.
devfs_register_blkdev
— Optionally register a conventional block driver.
devfs_unregister_chrdev
— Optionally unregister a conventional character driver.
devfs_unregister_blkdev
— Optionally unregister a conventional block driver.
7.
Power Management
pm_register
— register a device with power management
pm_unregister
— unregister a device with power management
pm_unregister_all
— unregister all devices with matching callback
pm_send
— send request to a single device
pm_send_all
— send request to all managed devices
pm_find
— find a device
8.
Miscellaneous Devices
misc_register
— register a miscellaneous device
misc_deregister
Previous message
View by thread
View by date
Next message
Reply via email to
Search the site
The Mail Archive home
linuxkernelnewbies - all messages
linuxkernelnewbies - about the list
Expand
Previous message
Next message