diff options
| author | Dave Airlie <airlied@redhat.com> | 2010-08-01 20:24:46 -0400 |
|---|---|---|
| committer | Dave Airlie <airlied@redhat.com> | 2010-08-01 20:24:46 -0400 |
| commit | 7827627107aeb629f1a056cb56b17bd4fb789e03 (patch) | |
| tree | cbd83582abb9120c7ef724bf439916c8bf864e37 /include/linux | |
| parent | e190bfe56841551b1ad5abb42ebd0c4798cc8c01 (diff) | |
| parent | 219de62a1627247fca10789f28902f66cb0b408f (diff) | |
Merge branch 'drm-radeon-next' of ../drm-radeon-next into drm-core-next
* 'drm-radeon-next' of ../drm-radeon-next: (333 commits)
drm/radeon/kms: trivial code style fixes for audio
drm/radeon: remove viewport transform from r6xx/r7xx blit emit
drm/radeon: group r6xx/r7xx newly sequential blit state
drm/radeon: reorder r6xx/r7xx blit state emit to make more regs sequential
drm/radeon: r6xx/r7xx move vport clipping to a single packet
drm/radeon: group r6xx/r7xx sequential blit state
drm/radeon: remove duplicate state emit in r6xx/r7xx blit
drm/radeon: add comments to r6xx/r7xx blit state
drm/radeon/kms/r7xx: add workaround for hw issue with HDP flush
drm/radeon/kms: remove rs4xx gart limit
drm: radeon: fix sign bug
drm/radeon/kms: check/restore sanity before doing anything else with GPU.
drm/radeon: fall back to GTT if bo creation/validation in VRAM fails.
drm/radeon/kms: add ioport register access
drm/radeon/kms: enable HDMI audio on RS600/RS690/RS740
drm/radeon/kms: track audio engine state, do not use not setup timer
drm/radeon/kms/r6xx+: add query for tile config (v2)
drm/radeon/kms: fix CS alignment checking for tiling (v2)
drm/radeon/kms: add tiling support to the cs checker for r6xx/r7xx
drm/radeon/kms: Add crtc tiling setup support for evergreen
...
Diffstat (limited to 'include/linux')
| -rw-r--r-- | include/linux/backing-dev.h | 2 | ||||
| -rw-r--r-- | include/linux/ethtool.h | 2 | ||||
| -rw-r--r-- | include/linux/fb.h | 2 | ||||
| -rw-r--r-- | include/linux/fdtable.h | 3 | ||||
| -rw-r--r-- | include/linux/fs.h | 13 | ||||
| -rw-r--r-- | include/linux/i8042.h | 12 | ||||
| -rw-r--r-- | include/linux/jbd2.h | 11 | ||||
| -rw-r--r-- | include/linux/lmb.h | 89 | ||||
| -rw-r--r-- | include/linux/memblock.h | 89 | ||||
| -rw-r--r-- | include/linux/mm.h | 2 | ||||
| -rw-r--r-- | include/linux/mv643xx_eth.h | 5 | ||||
| -rw-r--r-- | include/linux/net.h | 3 | ||||
| -rw-r--r-- | include/linux/netdevice.h | 5 | ||||
| -rw-r--r-- | include/linux/pci.h | 1 | ||||
| -rw-r--r-- | include/linux/rbtree.h | 13 | ||||
| -rw-r--r-- | include/linux/syscalls.h | 6 | ||||
| -rw-r--r-- | include/linux/sysrq.h | 1 | ||||
| -rw-r--r-- | include/linux/vgaarb.h | 1 | ||||
| -rw-r--r-- | include/linux/writeback.h | 7 |
19 files changed, 149 insertions, 118 deletions
diff --git a/include/linux/backing-dev.h b/include/linux/backing-dev.h index 9ae2889096b6..e9aec0d099df 100644 --- a/include/linux/backing-dev.h +++ b/include/linux/backing-dev.h | |||
| @@ -82,8 +82,6 @@ struct backing_dev_info { | |||
| 82 | struct bdi_writeback wb; /* default writeback info for this bdi */ | 82 | struct bdi_writeback wb; /* default writeback info for this bdi */ |
| 83 | spinlock_t wb_lock; /* protects update side of wb_list */ | 83 | spinlock_t wb_lock; /* protects update side of wb_list */ |
| 84 | struct list_head wb_list; /* the flusher threads hanging off this bdi */ | 84 | struct list_head wb_list; /* the flusher threads hanging off this bdi */ |
| 85 | unsigned long wb_mask; /* bitmask of registered tasks */ | ||
| 86 | unsigned int wb_cnt; /* number of registered tasks */ | ||
| 87 | 85 | ||
| 88 | struct list_head work_list; | 86 | struct list_head work_list; |
| 89 | 87 | ||
diff --git a/include/linux/ethtool.h b/include/linux/ethtool.h index 276b40a16835..b4207ca3ad52 100644 --- a/include/linux/ethtool.h +++ b/include/linux/ethtool.h | |||
| @@ -379,6 +379,8 @@ struct ethtool_rxnfc { | |||
| 379 | __u32 flow_type; | 379 | __u32 flow_type; |
| 380 | /* The rx flow hash value or the rule DB size */ | 380 | /* The rx flow hash value or the rule DB size */ |
| 381 | __u64 data; | 381 | __u64 data; |
| 382 | /* The following fields are not valid and must not be used for | ||
| 383 | * the ETHTOOL_{G,X}RXFH commands. */ | ||
| 382 | struct ethtool_rx_flow_spec fs; | 384 | struct ethtool_rx_flow_spec fs; |
| 383 | __u32 rule_cnt; | 385 | __u32 rule_cnt; |
| 384 | __u32 rule_locs[0]; | 386 | __u32 rule_locs[0]; |
diff --git a/include/linux/fb.h b/include/linux/fb.h index 8e5a9dfb76bf..e7445df44d6c 100644 --- a/include/linux/fb.h +++ b/include/linux/fb.h | |||
| @@ -873,6 +873,8 @@ struct fb_info { | |||
| 873 | static inline struct apertures_struct *alloc_apertures(unsigned int max_num) { | 873 | static inline struct apertures_struct *alloc_apertures(unsigned int max_num) { |
| 874 | struct apertures_struct *a = kzalloc(sizeof(struct apertures_struct) | 874 | struct apertures_struct *a = kzalloc(sizeof(struct apertures_struct) |
| 875 | + max_num * sizeof(struct aperture), GFP_KERNEL); | 875 | + max_num * sizeof(struct aperture), GFP_KERNEL); |
| 876 | if (!a) | ||
| 877 | return NULL; | ||
| 876 | a->count = max_num; | 878 | a->count = max_num; |
| 877 | return a; | 879 | return a; |
| 878 | } | 880 | } |
diff --git a/include/linux/fdtable.h b/include/linux/fdtable.h index 013dc529e95f..d147461bc271 100644 --- a/include/linux/fdtable.h +++ b/include/linux/fdtable.h | |||
| @@ -61,7 +61,8 @@ struct files_struct { | |||
| 61 | (rcu_dereference_check((fdtfd), \ | 61 | (rcu_dereference_check((fdtfd), \ |
| 62 | rcu_read_lock_held() || \ | 62 | rcu_read_lock_held() || \ |
| 63 | lockdep_is_held(&(files)->file_lock) || \ | 63 | lockdep_is_held(&(files)->file_lock) || \ |
| 64 | atomic_read(&(files)->count) == 1)) | 64 | atomic_read(&(files)->count) == 1 || \ |
| 65 | rcu_my_thread_group_empty())) | ||
| 65 | 66 | ||
| 66 | #define files_fdtable(files) \ | 67 | #define files_fdtable(files) \ |
| 67 | (rcu_dereference_check_fdtable((files), (files)->fdt)) | 68 | (rcu_dereference_check_fdtable((files), (files)->fdt)) |
diff --git a/include/linux/fs.h b/include/linux/fs.h index 471e1ff5079a..68ca1b0491af 100644 --- a/include/linux/fs.h +++ b/include/linux/fs.h | |||
| @@ -1783,6 +1783,19 @@ extern int get_sb_pseudo(struct file_system_type *, char *, | |||
| 1783 | struct vfsmount *mnt); | 1783 | struct vfsmount *mnt); |
| 1784 | extern void simple_set_mnt(struct vfsmount *mnt, struct super_block *sb); | 1784 | extern void simple_set_mnt(struct vfsmount *mnt, struct super_block *sb); |
| 1785 | 1785 | ||
| 1786 | static inline void sb_mark_dirty(struct super_block *sb) | ||
| 1787 | { | ||
| 1788 | sb->s_dirt = 1; | ||
| 1789 | } | ||
| 1790 | static inline void sb_mark_clean(struct super_block *sb) | ||
| 1791 | { | ||
| 1792 | sb->s_dirt = 0; | ||
| 1793 | } | ||
| 1794 | static inline int sb_is_dirty(struct super_block *sb) | ||
| 1795 | { | ||
| 1796 | return sb->s_dirt; | ||
| 1797 | } | ||
| 1798 | |||
| 1786 | /* Alas, no aliases. Too much hassle with bringing module.h everywhere */ | 1799 | /* Alas, no aliases. Too much hassle with bringing module.h everywhere */ |
| 1787 | #define fops_get(fops) \ | 1800 | #define fops_get(fops) \ |
| 1788 | (((fops) && try_module_get((fops)->owner) ? (fops) : NULL)) | 1801 | (((fops) && try_module_get((fops)->owner) ? (fops) : NULL)) |
diff --git a/include/linux/i8042.h b/include/linux/i8042.h index 9bf6870ee5f4..a986ff588944 100644 --- a/include/linux/i8042.h +++ b/include/linux/i8042.h | |||
| @@ -46,31 +46,31 @@ int i8042_remove_filter(bool (*filter)(unsigned char data, unsigned char str, | |||
| 46 | 46 | ||
| 47 | #else | 47 | #else |
| 48 | 48 | ||
| 49 | void i8042_lock_chip(void) | 49 | static inline void i8042_lock_chip(void) |
| 50 | { | 50 | { |
| 51 | } | 51 | } |
| 52 | 52 | ||
| 53 | void i8042_unlock_chip(void) | 53 | static inline void i8042_unlock_chip(void) |
| 54 | { | 54 | { |
| 55 | } | 55 | } |
| 56 | 56 | ||
| 57 | int i8042_command(unsigned char *param, int command) | 57 | static inline int i8042_command(unsigned char *param, int command) |
| 58 | { | 58 | { |
| 59 | return -ENODEV; | 59 | return -ENODEV; |
| 60 | } | 60 | } |
| 61 | 61 | ||
| 62 | bool i8042_check_port_owner(const struct serio *serio) | 62 | static inline bool i8042_check_port_owner(const struct serio *serio) |
| 63 | { | 63 | { |
| 64 | return false; | 64 | return false; |
| 65 | } | 65 | } |
| 66 | 66 | ||
| 67 | int i8042_install_filter(bool (*filter)(unsigned char data, unsigned char str, | 67 | static inline int i8042_install_filter(bool (*filter)(unsigned char data, unsigned char str, |
| 68 | struct serio *serio)) | 68 | struct serio *serio)) |
| 69 | { | 69 | { |
| 70 | return -ENODEV; | 70 | return -ENODEV; |
| 71 | } | 71 | } |
| 72 | 72 | ||
| 73 | int i8042_remove_filter(bool (*filter)(unsigned char data, unsigned char str, | 73 | static inline int i8042_remove_filter(bool (*filter)(unsigned char data, unsigned char str, |
| 74 | struct serio *serio)) | 74 | struct serio *serio)) |
| 75 | { | 75 | { |
| 76 | return -ENODEV; | 76 | return -ENODEV; |
diff --git a/include/linux/jbd2.h b/include/linux/jbd2.h index a4d2e9f7088a..adf832dec3f3 100644 --- a/include/linux/jbd2.h +++ b/include/linux/jbd2.h | |||
| @@ -1026,11 +1026,12 @@ void __jbd2_journal_insert_checkpoint(struct journal_head *, transaction_t *); | |||
| 1026 | 1026 | ||
| 1027 | struct jbd2_buffer_trigger_type { | 1027 | struct jbd2_buffer_trigger_type { |
| 1028 | /* | 1028 | /* |
| 1029 | * Fired just before a buffer is written to the journal. | 1029 | * Fired a the moment data to write to the journal are known to be |
| 1030 | * mapped_data is a mapped buffer that is the frozen data for | 1030 | * stable - so either at the moment b_frozen_data is created or just |
| 1031 | * commit. | 1031 | * before a buffer is written to the journal. mapped_data is a mapped |
| 1032 | * buffer that is the frozen data for commit. | ||
| 1032 | */ | 1033 | */ |
| 1033 | void (*t_commit)(struct jbd2_buffer_trigger_type *type, | 1034 | void (*t_frozen)(struct jbd2_buffer_trigger_type *type, |
| 1034 | struct buffer_head *bh, void *mapped_data, | 1035 | struct buffer_head *bh, void *mapped_data, |
| 1035 | size_t size); | 1036 | size_t size); |
| 1036 | 1037 | ||
| @@ -1042,7 +1043,7 @@ struct jbd2_buffer_trigger_type { | |||
| 1042 | struct buffer_head *bh); | 1043 | struct buffer_head *bh); |
| 1043 | }; | 1044 | }; |
| 1044 | 1045 | ||
| 1045 | extern void jbd2_buffer_commit_trigger(struct journal_head *jh, | 1046 | extern void jbd2_buffer_frozen_trigger(struct journal_head *jh, |
| 1046 | void *mapped_data, | 1047 | void *mapped_data, |
| 1047 | struct jbd2_buffer_trigger_type *triggers); | 1048 | struct jbd2_buffer_trigger_type *triggers); |
| 1048 | extern void jbd2_buffer_abort_trigger(struct journal_head *jh, | 1049 | extern void jbd2_buffer_abort_trigger(struct journal_head *jh, |
diff --git a/include/linux/lmb.h b/include/linux/lmb.h deleted file mode 100644 index f3d14333ebed..000000000000 --- a/include/linux/lmb.h +++ /dev/null | |||
| @@ -1,89 +0,0 @@ | |||
| 1 | #ifndef _LINUX_LMB_H | ||
| 2 | #define _LINUX_LMB_H | ||
| 3 | #ifdef __KERNEL__ | ||
| 4 | |||
| 5 | /* | ||
| 6 | * Logical memory blocks. | ||
| 7 | * | ||
| 8 | * Copyright (C) 2001 Peter Bergner, IBM Corp. | ||
| 9 | * | ||
| 10 | * This program is free software; you can redistribute it and/or | ||
| 11 | * modify it under the terms of the GNU General Public License | ||
| 12 | * as published by the Free Software Foundation; either version | ||
| 13 | * 2 of the License, or (at your option) any later version. | ||
| 14 | */ | ||
| 15 | |||
| 16 | #include <linux/init.h> | ||
| 17 | #include <linux/mm.h> | ||
| 18 | |||
| 19 | #define MAX_LMB_REGIONS 128 | ||
| 20 | |||
| 21 | struct lmb_property { | ||
| 22 | u64 base; | ||
| 23 | u64 size; | ||
| 24 | }; | ||
| 25 | |||
| 26 | struct lmb_region { | ||
| 27 | unsigned long cnt; | ||
| 28 | u64 size; | ||
| 29 | struct lmb_property region[MAX_LMB_REGIONS+1]; | ||
| 30 | }; | ||
| 31 | |||
| 32 | struct lmb { | ||
| 33 | unsigned long debug; | ||
| 34 | u64 rmo_size; | ||
| 35 | struct lmb_region memory; | ||
| 36 | struct lmb_region reserved; | ||
| 37 | }; | ||
| 38 | |||
| 39 | extern struct lmb lmb; | ||
| 40 | |||
| 41 | extern void __init lmb_init(void); | ||
| 42 | extern void __init lmb_analyze(void); | ||
| 43 | extern long lmb_add(u64 base, u64 size); | ||
| 44 | extern long lmb_remove(u64 base, u64 size); | ||
| 45 | extern long __init lmb_free(u64 base, u64 size); | ||
| 46 | extern long __init lmb_reserve(u64 base, u64 size); | ||
| 47 | extern u64 __init lmb_alloc_nid(u64 size, u64 align, int nid, | ||
| 48 | u64 (*nid_range)(u64, u64, int *)); | ||
| 49 | extern u64 __init lmb_alloc(u64 size, u64 align); | ||
| 50 | extern u64 __init lmb_alloc_base(u64 size, | ||
| 51 | u64, u64 max_addr); | ||
| 52 | extern u64 __init __lmb_alloc_base(u64 size, | ||
| 53 | u64 align, u64 max_addr); | ||
| 54 | extern u64 __init lmb_phys_mem_size(void); | ||
| 55 | extern u64 lmb_end_of_DRAM(void); | ||
| 56 | extern void __init lmb_enforce_memory_limit(u64 memory_limit); | ||
| 57 | extern int __init lmb_is_reserved(u64 addr); | ||
| 58 | extern int lmb_is_region_reserved(u64 base, u64 size); | ||
| 59 | extern int lmb_find(struct lmb_property *res); | ||
| 60 | |||
| 61 | extern void lmb_dump_all(void); | ||
| 62 | |||
| 63 | static inline u64 | ||
| 64 | lmb_size_bytes(struct lmb_region *type, unsigned long region_nr) | ||
| 65 | { | ||
| 66 | return type->region[region_nr].size; | ||
| 67 | } | ||
| 68 | static inline u64 | ||
| 69 | lmb_size_pages(struct lmb_region *type, unsigned long region_nr) | ||
| 70 | { | ||
| 71 | return lmb_size_bytes(type, region_nr) >> PAGE_SHIFT; | ||
| 72 | } | ||
| 73 | static inline u64 | ||
| 74 | lmb_start_pfn(struct lmb_region *type, unsigned long region_nr) | ||
| 75 | { | ||
| 76 | return type->region[region_nr].base >> PAGE_SHIFT; | ||
| 77 | } | ||
| 78 | static inline u64 | ||
| 79 | lmb_end_pfn(struct lmb_region *type, unsigned long region_nr) | ||
| 80 | { | ||
| 81 | return lmb_start_pfn(type, region_nr) + | ||
| 82 | lmb_size_pages(type, region_nr); | ||
| 83 | } | ||
| 84 | |||
| 85 | #include <asm/lmb.h> | ||
| 86 | |||
| 87 | #endif /* __KERNEL__ */ | ||
| 88 | |||
| 89 | #endif /* _LINUX_LMB_H */ | ||
diff --git a/include/linux/memblock.h b/include/linux/memblock.h new file mode 100644 index 000000000000..a59faf2b5edd --- /dev/null +++ b/include/linux/memblock.h | |||
| @@ -0,0 +1,89 @@ | |||
| 1 | #ifndef _LINUX_MEMBLOCK_H | ||
| 2 | #define _LINUX_MEMBLOCK_H | ||
| 3 | #ifdef __KERNEL__ | ||
| 4 | |||
| 5 | /* | ||
| 6 | * Logical memory blocks. | ||
| 7 | * | ||
| 8 | * Copyright (C) 2001 Peter Bergner, IBM Corp. | ||
| 9 | * | ||
| 10 | * This program is free software; you can redistribute it and/or | ||
| 11 | * modify it under the terms of the GNU General Public License | ||
| 12 | * as published by the Free Software Foundation; either version | ||
| 13 | * 2 of the License, or (at your option) any later version. | ||
| 14 | */ | ||
| 15 | |||
| 16 | #include <linux/init.h> | ||
| 17 | #include <linux/mm.h> | ||
| 18 | |||
| 19 | #define MAX_MEMBLOCK_REGIONS 128 | ||
| 20 | |||
| 21 | struct memblock_property { | ||
| 22 | u64 base; | ||
| 23 | u64 size; | ||
| 24 | }; | ||
| 25 | |||
| 26 | struct memblock_region { | ||
| 27 | unsigned long cnt; | ||
| 28 | u64 size; | ||
| 29 | struct memblock_property region[MAX_MEMBLOCK_REGIONS+1]; | ||
| 30 | }; | ||
| 31 | |||
| 32 | struct memblock { | ||
| 33 | unsigned long debug; | ||
| 34 | u64 rmo_size; | ||
| 35 | struct memblock_region memory; | ||
| 36 | struct memblock_region reserved; | ||
| 37 | }; | ||
| 38 | |||
| 39 | extern struct memblock memblock; | ||
| 40 | |||
| 41 | extern void __init memblock_init(void); | ||
| 42 | extern void __init memblock_analyze(void); | ||
| 43 | extern long memblock_add(u64 base, u64 size); | ||
| 44 | extern long memblock_remove(u64 base, u64 size); | ||
| 45 | extern long __init memblock_free(u64 base, u64 size); | ||
| 46 | extern long __init memblock_reserve(u64 base, u64 size); | ||
| 47 | extern u64 __init memblock_alloc_nid(u64 size, u64 align, int nid, | ||
| 48 | u64 (*nid_range)(u64, u64, int *)); | ||
| 49 | extern u64 __init memblock_alloc(u64 size, u64 align); | ||
| 50 | extern u64 __init memblock_alloc_base(u64 size, | ||
| 51 | u64, u64 max_addr); | ||
| 52 | extern u64 __init __memblock_alloc_base(u64 size, | ||
| 53 | u64 align, u64 max_addr); | ||
| 54 | extern u64 __init memblock_phys_mem_size(void); | ||
| 55 | extern u64 memblock_end_of_DRAM(void); | ||
| 56 | extern void __init memblock_enforce_memory_limit(u64 memory_limit); | ||
| 57 | extern int __init memblock_is_reserved(u64 addr); | ||
| 58 | extern int memblock_is_region_reserved(u64 base, u64 size); | ||
| 59 | extern int memblock_find(struct memblock_property *res); | ||
| 60 | |||
| 61 | extern void memblock_dump_all(void); | ||
| 62 | |||
| 63 | static inline u64 | ||
| 64 | memblock_size_bytes(struct memblock_region *type, unsigned long region_nr) | ||
| 65 | { | ||
| 66 | return type->region[region_nr].size; | ||
| 67 | } | ||
| 68 | static inline u64 | ||
| 69 | memblock_size_pages(struct memblock_region *type, unsigned long region_nr) | ||
| 70 | { | ||
| 71 | return memblock_size_bytes(type, region_nr) >> PAGE_SHIFT; | ||
| 72 | } | ||
| 73 | static inline u64 | ||
| 74 | memblock_start_pfn(struct memblock_region *type, unsigned long region_nr) | ||
| 75 | { | ||
| 76 | return type->region[region_nr].base >> PAGE_SHIFT; | ||
| 77 | } | ||
| 78 | static inline u64 | ||
| 79 | memblock_end_pfn(struct memblock_region *type, unsigned long region_nr) | ||
| 80 | { | ||
| 81 | return memblock_start_pfn(type, region_nr) + | ||
| 82 | memblock_size_pages(type, region_nr); | ||
| 83 | } | ||
| 84 | |||
| 85 | #include <asm/memblock.h> | ||
| 86 | |||
| 87 | #endif /* __KERNEL__ */ | ||
| 88 | |||
| 89 | #endif /* _LINUX_MEMBLOCK_H */ | ||
diff --git a/include/linux/mm.h b/include/linux/mm.h index b969efb03787..a2b48041b910 100644 --- a/include/linux/mm.h +++ b/include/linux/mm.h | |||
| @@ -999,7 +999,7 @@ static inline void sync_mm_rss(struct task_struct *task, struct mm_struct *mm) | |||
| 999 | * querying the cache size, so a fastpath for that case is appropriate. | 999 | * querying the cache size, so a fastpath for that case is appropriate. |
| 1000 | */ | 1000 | */ |
| 1001 | struct shrinker { | 1001 | struct shrinker { |
| 1002 | int (*shrink)(int nr_to_scan, gfp_t gfp_mask); | 1002 | int (*shrink)(struct shrinker *, int nr_to_scan, gfp_t gfp_mask); |
| 1003 | int seeks; /* seeks to recreate an obj */ | 1003 | int seeks; /* seeks to recreate an obj */ |
| 1004 | 1004 | ||
| 1005 | /* These are for internal use */ | 1005 | /* These are for internal use */ |
diff --git a/include/linux/mv643xx_eth.h b/include/linux/mv643xx_eth.h index cbbbe9bfecad..30b0c4e78f91 100644 --- a/include/linux/mv643xx_eth.h +++ b/include/linux/mv643xx_eth.h | |||
| @@ -19,6 +19,11 @@ struct mv643xx_eth_shared_platform_data { | |||
| 19 | struct mbus_dram_target_info *dram; | 19 | struct mbus_dram_target_info *dram; |
| 20 | struct platform_device *shared_smi; | 20 | struct platform_device *shared_smi; |
| 21 | unsigned int t_clk; | 21 | unsigned int t_clk; |
| 22 | /* | ||
| 23 | * Max packet size for Tx IP/Layer 4 checksum, when set to 0, default | ||
| 24 | * limit of 9KiB will be used. | ||
| 25 | */ | ||
| 26 | int tx_csum_limit; | ||
| 22 | }; | 27 | }; |
| 23 | 28 | ||
| 24 | #define MV643XX_ETH_PHY_ADDR_DEFAULT 0 | 29 | #define MV643XX_ETH_PHY_ADDR_DEFAULT 0 |
diff --git a/include/linux/net.h b/include/linux/net.h index 2b4deeeb8646..dee0b11a8759 100644 --- a/include/linux/net.h +++ b/include/linux/net.h | |||
| @@ -129,10 +129,9 @@ struct socket_wq { | |||
| 129 | * @type: socket type (%SOCK_STREAM, etc) | 129 | * @type: socket type (%SOCK_STREAM, etc) |
| 130 | * @flags: socket flags (%SOCK_ASYNC_NOSPACE, etc) | 130 | * @flags: socket flags (%SOCK_ASYNC_NOSPACE, etc) |
| 131 | * @ops: protocol specific socket operations | 131 | * @ops: protocol specific socket operations |
| 132 | * @fasync_list: Asynchronous wake up list | ||
| 133 | * @file: File back pointer for gc | 132 | * @file: File back pointer for gc |
| 134 | * @sk: internal networking protocol agnostic socket representation | 133 | * @sk: internal networking protocol agnostic socket representation |
| 135 | * @wait: wait queue for several uses | 134 | * @wq: wait queue for several uses |
| 136 | */ | 135 | */ |
| 137 | struct socket { | 136 | struct socket { |
| 138 | socket_state state; | 137 | socket_state state; |
diff --git a/include/linux/netdevice.h b/include/linux/netdevice.h index 40291f375024..b21e4054c12c 100644 --- a/include/linux/netdevice.h +++ b/include/linux/netdevice.h | |||
| @@ -1656,6 +1656,9 @@ static inline int netif_is_multiqueue(const struct net_device *dev) | |||
| 1656 | return (dev->num_tx_queues > 1); | 1656 | return (dev->num_tx_queues > 1); |
| 1657 | } | 1657 | } |
| 1658 | 1658 | ||
| 1659 | extern void netif_set_real_num_tx_queues(struct net_device *dev, | ||
| 1660 | unsigned int txq); | ||
| 1661 | |||
| 1659 | /* Use this variant when it is known for sure that it | 1662 | /* Use this variant when it is known for sure that it |
| 1660 | * is executing from hardware interrupt context or with hardware interrupts | 1663 | * is executing from hardware interrupt context or with hardware interrupts |
| 1661 | * disabled. | 1664 | * disabled. |
| @@ -2329,7 +2332,7 @@ do { \ | |||
| 2329 | #endif | 2332 | #endif |
| 2330 | 2333 | ||
| 2331 | #if defined(VERBOSE_DEBUG) | 2334 | #if defined(VERBOSE_DEBUG) |
| 2332 | #define netif_vdbg netdev_dbg | 2335 | #define netif_vdbg netif_dbg |
| 2333 | #else | 2336 | #else |
| 2334 | #define netif_vdbg(priv, type, dev, format, args...) \ | 2337 | #define netif_vdbg(priv, type, dev, format, args...) \ |
| 2335 | ({ \ | 2338 | ({ \ |
diff --git a/include/linux/pci.h b/include/linux/pci.h index 7cb00845f150..f26fda76b87f 100644 --- a/include/linux/pci.h +++ b/include/linux/pci.h | |||
| @@ -288,6 +288,7 @@ struct pci_dev { | |||
| 288 | */ | 288 | */ |
| 289 | unsigned int irq; | 289 | unsigned int irq; |
| 290 | struct resource resource[DEVICE_COUNT_RESOURCE]; /* I/O and memory regions + expansion ROMs */ | 290 | struct resource resource[DEVICE_COUNT_RESOURCE]; /* I/O and memory regions + expansion ROMs */ |
| 291 | resource_size_t fw_addr[DEVICE_COUNT_RESOURCE]; /* FW-assigned addr */ | ||
| 291 | 292 | ||
| 292 | /* These fields are used by common fixups */ | 293 | /* These fields are used by common fixups */ |
| 293 | unsigned int transparent:1; /* Transparent PCI bridge */ | 294 | unsigned int transparent:1; /* Transparent PCI bridge */ |
diff --git a/include/linux/rbtree.h b/include/linux/rbtree.h index fe1872e5b37e..7066acb2c530 100644 --- a/include/linux/rbtree.h +++ b/include/linux/rbtree.h | |||
| @@ -110,7 +110,6 @@ struct rb_node | |||
| 110 | struct rb_root | 110 | struct rb_root |
| 111 | { | 111 | { |
| 112 | struct rb_node *rb_node; | 112 | struct rb_node *rb_node; |
| 113 | void (*augment_cb)(struct rb_node *node); | ||
| 114 | }; | 113 | }; |
| 115 | 114 | ||
| 116 | 115 | ||
| @@ -130,9 +129,7 @@ static inline void rb_set_color(struct rb_node *rb, int color) | |||
| 130 | rb->rb_parent_color = (rb->rb_parent_color & ~1) | color; | 129 | rb->rb_parent_color = (rb->rb_parent_color & ~1) | color; |
| 131 | } | 130 | } |
| 132 | 131 | ||
| 133 | #define RB_ROOT (struct rb_root) { NULL, NULL, } | 132 | #define RB_ROOT (struct rb_root) { NULL, } |
| 134 | #define RB_AUGMENT_ROOT(x) (struct rb_root) { NULL, x} | ||
| 135 | |||
| 136 | #define rb_entry(ptr, type, member) container_of(ptr, type, member) | 133 | #define rb_entry(ptr, type, member) container_of(ptr, type, member) |
| 137 | 134 | ||
| 138 | #define RB_EMPTY_ROOT(root) ((root)->rb_node == NULL) | 135 | #define RB_EMPTY_ROOT(root) ((root)->rb_node == NULL) |
| @@ -142,6 +139,14 @@ static inline void rb_set_color(struct rb_node *rb, int color) | |||
| 142 | extern void rb_insert_color(struct rb_node *, struct rb_root *); | 139 | extern void rb_insert_color(struct rb_node *, struct rb_root *); |
| 143 | extern void rb_erase(struct rb_node *, struct rb_root *); | 140 | extern void rb_erase(struct rb_node *, struct rb_root *); |
| 144 | 141 | ||
| 142 | typedef void (*rb_augment_f)(struct rb_node *node, void *data); | ||
| 143 | |||
| 144 | extern void rb_augment_insert(struct rb_node *node, | ||
| 145 | rb_augment_f func, void *data); | ||
| 146 | extern struct rb_node *rb_augment_erase_begin(struct rb_node *node); | ||
| 147 | extern void rb_augment_erase_end(struct rb_node *node, | ||
| 148 | rb_augment_f func, void *data); | ||
| 149 | |||
| 145 | /* Find logical next and previous nodes in a tree */ | 150 | /* Find logical next and previous nodes in a tree */ |
| 146 | extern struct rb_node *rb_next(const struct rb_node *); | 151 | extern struct rb_node *rb_next(const struct rb_node *); |
| 147 | extern struct rb_node *rb_prev(const struct rb_node *); | 152 | extern struct rb_node *rb_prev(const struct rb_node *); |
diff --git a/include/linux/syscalls.h b/include/linux/syscalls.h index 7f614ce274a9..13ebb5413a79 100644 --- a/include/linux/syscalls.h +++ b/include/linux/syscalls.h | |||
| @@ -124,7 +124,8 @@ extern struct trace_event_functions enter_syscall_print_funcs; | |||
| 124 | extern struct trace_event_functions exit_syscall_print_funcs; | 124 | extern struct trace_event_functions exit_syscall_print_funcs; |
| 125 | 125 | ||
| 126 | #define SYSCALL_TRACE_ENTER_EVENT(sname) \ | 126 | #define SYSCALL_TRACE_ENTER_EVENT(sname) \ |
| 127 | static struct syscall_metadata __syscall_meta_##sname; \ | 127 | static struct syscall_metadata \ |
| 128 | __attribute__((__aligned__(4))) __syscall_meta_##sname; \ | ||
| 128 | static struct ftrace_event_call \ | 129 | static struct ftrace_event_call \ |
| 129 | __attribute__((__aligned__(4))) event_enter_##sname; \ | 130 | __attribute__((__aligned__(4))) event_enter_##sname; \ |
| 130 | static struct ftrace_event_call __used \ | 131 | static struct ftrace_event_call __used \ |
| @@ -138,7 +139,8 @@ extern struct trace_event_functions exit_syscall_print_funcs; | |||
| 138 | } | 139 | } |
| 139 | 140 | ||
| 140 | #define SYSCALL_TRACE_EXIT_EVENT(sname) \ | 141 | #define SYSCALL_TRACE_EXIT_EVENT(sname) \ |
| 141 | static struct syscall_metadata __syscall_meta_##sname; \ | 142 | static struct syscall_metadata \ |
| 143 | __attribute__((__aligned__(4))) __syscall_meta_##sname; \ | ||
| 142 | static struct ftrace_event_call \ | 144 | static struct ftrace_event_call \ |
| 143 | __attribute__((__aligned__(4))) event_exit_##sname; \ | 145 | __attribute__((__aligned__(4))) event_exit_##sname; \ |
| 144 | static struct ftrace_event_call __used \ | 146 | static struct ftrace_event_call __used \ |
diff --git a/include/linux/sysrq.h b/include/linux/sysrq.h index 4496322e28dd..609e8ca5f534 100644 --- a/include/linux/sysrq.h +++ b/include/linux/sysrq.h | |||
| @@ -45,6 +45,7 @@ struct sysrq_key_op { | |||
| 45 | */ | 45 | */ |
| 46 | 46 | ||
| 47 | void handle_sysrq(int key, struct tty_struct *tty); | 47 | void handle_sysrq(int key, struct tty_struct *tty); |
| 48 | void __handle_sysrq(int key, struct tty_struct *tty, int check_mask); | ||
| 48 | int register_sysrq_key(int key, struct sysrq_key_op *op); | 49 | int register_sysrq_key(int key, struct sysrq_key_op *op); |
| 49 | int unregister_sysrq_key(int key, struct sysrq_key_op *op); | 50 | int unregister_sysrq_key(int key, struct sysrq_key_op *op); |
| 50 | struct sysrq_key_op *__sysrq_get_key_op(int key); | 51 | struct sysrq_key_op *__sysrq_get_key_op(int key); |
diff --git a/include/linux/vgaarb.h b/include/linux/vgaarb.h index c9a975976995..814f294d4cd0 100644 --- a/include/linux/vgaarb.h +++ b/include/linux/vgaarb.h | |||
| @@ -29,6 +29,7 @@ | |||
| 29 | */ | 29 | */ |
| 30 | 30 | ||
| 31 | #ifndef LINUX_VGA_H | 31 | #ifndef LINUX_VGA_H |
| 32 | #define LINUX_VGA_H | ||
| 32 | 33 | ||
| 33 | #include <asm/vga.h> | 34 | #include <asm/vga.h> |
| 34 | 35 | ||
diff --git a/include/linux/writeback.h b/include/linux/writeback.h index d63ef8f9609f..c24eca71e80c 100644 --- a/include/linux/writeback.h +++ b/include/linux/writeback.h | |||
| @@ -27,10 +27,6 @@ enum writeback_sync_modes { | |||
| 27 | * in a manner such that unspecified fields are set to zero. | 27 | * in a manner such that unspecified fields are set to zero. |
| 28 | */ | 28 | */ |
| 29 | struct writeback_control { | 29 | struct writeback_control { |
| 30 | struct backing_dev_info *bdi; /* If !NULL, only write back this | ||
| 31 | queue */ | ||
| 32 | struct super_block *sb; /* if !NULL, only write inodes from | ||
| 33 | this super_block */ | ||
| 34 | enum writeback_sync_modes sync_mode; | 30 | enum writeback_sync_modes sync_mode; |
| 35 | unsigned long *older_than_this; /* If !NULL, only write back inodes | 31 | unsigned long *older_than_this; /* If !NULL, only write back inodes |
| 36 | older than this */ | 32 | older than this */ |
| @@ -66,7 +62,8 @@ int inode_wait(void *); | |||
| 66 | void writeback_inodes_sb(struct super_block *); | 62 | void writeback_inodes_sb(struct super_block *); |
| 67 | int writeback_inodes_sb_if_idle(struct super_block *); | 63 | int writeback_inodes_sb_if_idle(struct super_block *); |
| 68 | void sync_inodes_sb(struct super_block *); | 64 | void sync_inodes_sb(struct super_block *); |
| 69 | void writeback_inodes_wbc(struct writeback_control *wbc); | 65 | void writeback_inodes_wb(struct bdi_writeback *wb, |
| 66 | struct writeback_control *wbc); | ||
| 70 | long wb_do_writeback(struct bdi_writeback *wb, int force_wait); | 67 | long wb_do_writeback(struct bdi_writeback *wb, int force_wait); |
| 71 | void wakeup_flusher_threads(long nr_pages); | 68 | void wakeup_flusher_threads(long nr_pages); |
| 72 | 69 | ||
