diff options
Diffstat (limited to 'include')
27 files changed, 198 insertions, 53 deletions
diff --git a/include/asm-generic/percpu.h b/include/asm-generic/percpu.h index d7d50d7ee51e..aa00800adacc 100644 --- a/include/asm-generic/percpu.h +++ b/include/asm-generic/percpu.h | |||
| @@ -97,4 +97,8 @@ extern void setup_per_cpu_areas(void); | |||
| 97 | #define PER_CPU_ATTRIBUTES | 97 | #define PER_CPU_ATTRIBUTES |
| 98 | #endif | 98 | #endif |
| 99 | 99 | ||
| 100 | #ifndef PER_CPU_DEF_ATTRIBUTES | ||
| 101 | #define PER_CPU_DEF_ATTRIBUTES | ||
| 102 | #endif | ||
| 103 | |||
| 100 | #endif /* _ASM_GENERIC_PERCPU_H_ */ | 104 | #endif /* _ASM_GENERIC_PERCPU_H_ */ |
diff --git a/include/asm-generic/vmlinux.lds.h b/include/asm-generic/vmlinux.lds.h index 92b73b6140ff..a553f1041cf1 100644 --- a/include/asm-generic/vmlinux.lds.h +++ b/include/asm-generic/vmlinux.lds.h | |||
| @@ -191,7 +191,7 @@ | |||
| 191 | . = ALIGN(align); \ | 191 | . = ALIGN(align); \ |
| 192 | *(.data.cacheline_aligned) | 192 | *(.data.cacheline_aligned) |
| 193 | 193 | ||
| 194 | #define INIT_TASK(align) \ | 194 | #define INIT_TASK_DATA(align) \ |
| 195 | . = ALIGN(align); \ | 195 | . = ALIGN(align); \ |
| 196 | *(.data.init_task) | 196 | *(.data.init_task) |
| 197 | 197 | ||
| @@ -434,14 +434,15 @@ | |||
| 434 | /* | 434 | /* |
| 435 | * Init task | 435 | * Init task |
| 436 | */ | 436 | */ |
| 437 | #define INIT_TASK_DATA(align) \ | 437 | #define INIT_TASK_DATA_SECTION(align) \ |
| 438 | . = ALIGN(align); \ | 438 | . = ALIGN(align); \ |
| 439 | .data.init_task : { \ | 439 | .data.init_task : { \ |
| 440 | INIT_TASK \ | 440 | INIT_TASK_DATA(align) \ |
| 441 | } | 441 | } |
| 442 | 442 | ||
| 443 | #ifdef CONFIG_CONSTRUCTORS | 443 | #ifdef CONFIG_CONSTRUCTORS |
| 444 | #define KERNEL_CTORS() VMLINUX_SYMBOL(__ctors_start) = .; \ | 444 | #define KERNEL_CTORS() . = ALIGN(8); \ |
| 445 | VMLINUX_SYMBOL(__ctors_start) = .; \ | ||
| 445 | *(.ctors) \ | 446 | *(.ctors) \ |
| 446 | VMLINUX_SYMBOL(__ctors_end) = .; | 447 | VMLINUX_SYMBOL(__ctors_end) = .; |
| 447 | #else | 448 | #else |
| @@ -704,15 +705,15 @@ | |||
| 704 | * matches the requirment of PAGE_ALIGNED_DATA. | 705 | * matches the requirment of PAGE_ALIGNED_DATA. |
| 705 | * | 706 | * |
| 706 | * use 0 as page_align if page_aligned data is not used */ | 707 | * use 0 as page_align if page_aligned data is not used */ |
| 707 | #define RW_DATA_SECTION(cacheline, nosave, pagealigned, inittask) \ | 708 | #define RW_DATA_SECTION(cacheline, pagealigned, inittask) \ |
| 708 | . = ALIGN(PAGE_SIZE); \ | 709 | . = ALIGN(PAGE_SIZE); \ |
| 709 | .data : AT(ADDR(.data) - LOAD_OFFSET) { \ | 710 | .data : AT(ADDR(.data) - LOAD_OFFSET) { \ |
| 710 | INIT_TASK(inittask) \ | 711 | INIT_TASK_DATA(inittask) \ |
| 711 | CACHELINE_ALIGNED_DATA(cacheline) \ | 712 | CACHELINE_ALIGNED_DATA(cacheline) \ |
| 712 | READ_MOSTLY_DATA(cacheline) \ | 713 | READ_MOSTLY_DATA(cacheline) \ |
| 713 | DATA_DATA \ | 714 | DATA_DATA \ |
| 714 | CONSTRUCTORS \ | 715 | CONSTRUCTORS \ |
| 715 | NOSAVE_DATA(nosave) \ | 716 | NOSAVE_DATA \ |
| 716 | PAGE_ALIGNED_DATA(pagealigned) \ | 717 | PAGE_ALIGNED_DATA(pagealigned) \ |
| 717 | } | 718 | } |
| 718 | 719 | ||
diff --git a/include/linux/aio.h b/include/linux/aio.h index b16a957030f8..47f7d932a01d 100644 --- a/include/linux/aio.h +++ b/include/linux/aio.h | |||
| @@ -121,9 +121,9 @@ struct kiocb { | |||
| 121 | 121 | ||
| 122 | /* | 122 | /* |
| 123 | * If the aio_resfd field of the userspace iocb is not zero, | 123 | * If the aio_resfd field of the userspace iocb is not zero, |
| 124 | * this is the underlying file* to deliver event to. | 124 | * this is the underlying eventfd context to deliver events to. |
| 125 | */ | 125 | */ |
| 126 | struct file *ki_eventfd; | 126 | struct eventfd_ctx *ki_eventfd; |
| 127 | }; | 127 | }; |
| 128 | 128 | ||
| 129 | #define is_sync_kiocb(iocb) ((iocb)->ki_key == KIOCB_SYNC_KEY) | 129 | #define is_sync_kiocb(iocb) ((iocb)->ki_key == KIOCB_SYNC_KEY) |
diff --git a/include/linux/bio.h b/include/linux/bio.h index 2a04eb54c0dd..2892b710771c 100644 --- a/include/linux/bio.h +++ b/include/linux/bio.h | |||
| @@ -319,7 +319,6 @@ static inline int bio_has_allocated_vec(struct bio *bio) | |||
| 319 | */ | 319 | */ |
| 320 | struct bio_integrity_payload { | 320 | struct bio_integrity_payload { |
| 321 | struct bio *bip_bio; /* parent bio */ | 321 | struct bio *bip_bio; /* parent bio */ |
| 322 | struct bio_vec *bip_vec; /* integrity data vector */ | ||
| 323 | 322 | ||
| 324 | sector_t bip_sector; /* virtual start sector */ | 323 | sector_t bip_sector; /* virtual start sector */ |
| 325 | 324 | ||
| @@ -328,11 +327,12 @@ struct bio_integrity_payload { | |||
| 328 | 327 | ||
| 329 | unsigned int bip_size; | 328 | unsigned int bip_size; |
| 330 | 329 | ||
| 331 | unsigned short bip_pool; /* pool the ivec came from */ | 330 | unsigned short bip_slab; /* slab the bip came from */ |
| 332 | unsigned short bip_vcnt; /* # of integrity bio_vecs */ | 331 | unsigned short bip_vcnt; /* # of integrity bio_vecs */ |
| 333 | unsigned short bip_idx; /* current bip_vec index */ | 332 | unsigned short bip_idx; /* current bip_vec index */ |
| 334 | 333 | ||
| 335 | struct work_struct bip_work; /* I/O completion */ | 334 | struct work_struct bip_work; /* I/O completion */ |
| 335 | struct bio_vec bip_vec[0]; /* embedded bvec array */ | ||
| 336 | }; | 336 | }; |
| 337 | #endif /* CONFIG_BLK_DEV_INTEGRITY */ | 337 | #endif /* CONFIG_BLK_DEV_INTEGRITY */ |
| 338 | 338 | ||
| @@ -430,6 +430,9 @@ struct bio_set { | |||
| 430 | unsigned int front_pad; | 430 | unsigned int front_pad; |
| 431 | 431 | ||
| 432 | mempool_t *bio_pool; | 432 | mempool_t *bio_pool; |
| 433 | #if defined(CONFIG_BLK_DEV_INTEGRITY) | ||
| 434 | mempool_t *bio_integrity_pool; | ||
| 435 | #endif | ||
| 433 | mempool_t *bvec_pool; | 436 | mempool_t *bvec_pool; |
| 434 | }; | 437 | }; |
| 435 | 438 | ||
| @@ -634,8 +637,9 @@ static inline struct bio *bio_list_get(struct bio_list *bl) | |||
| 634 | 637 | ||
| 635 | #define bio_integrity(bio) (bio->bi_integrity != NULL) | 638 | #define bio_integrity(bio) (bio->bi_integrity != NULL) |
| 636 | 639 | ||
| 640 | extern struct bio_integrity_payload *bio_integrity_alloc_bioset(struct bio *, gfp_t, unsigned int, struct bio_set *); | ||
| 637 | extern struct bio_integrity_payload *bio_integrity_alloc(struct bio *, gfp_t, unsigned int); | 641 | extern struct bio_integrity_payload *bio_integrity_alloc(struct bio *, gfp_t, unsigned int); |
| 638 | extern void bio_integrity_free(struct bio *); | 642 | extern void bio_integrity_free(struct bio *, struct bio_set *); |
| 639 | extern int bio_integrity_add_page(struct bio *, struct page *, unsigned int, unsigned int); | 643 | extern int bio_integrity_add_page(struct bio *, struct page *, unsigned int, unsigned int); |
| 640 | extern int bio_integrity_enabled(struct bio *bio); | 644 | extern int bio_integrity_enabled(struct bio *bio); |
| 641 | extern int bio_integrity_set_tag(struct bio *, void *, unsigned int); | 645 | extern int bio_integrity_set_tag(struct bio *, void *, unsigned int); |
| @@ -645,21 +649,27 @@ extern void bio_integrity_endio(struct bio *, int); | |||
| 645 | extern void bio_integrity_advance(struct bio *, unsigned int); | 649 | extern void bio_integrity_advance(struct bio *, unsigned int); |
| 646 | extern void bio_integrity_trim(struct bio *, unsigned int, unsigned int); | 650 | extern void bio_integrity_trim(struct bio *, unsigned int, unsigned int); |
| 647 | extern void bio_integrity_split(struct bio *, struct bio_pair *, int); | 651 | extern void bio_integrity_split(struct bio *, struct bio_pair *, int); |
| 648 | extern int bio_integrity_clone(struct bio *, struct bio *, gfp_t); | 652 | extern int bio_integrity_clone(struct bio *, struct bio *, gfp_t, struct bio_set *); |
| 653 | extern int bioset_integrity_create(struct bio_set *, int); | ||
| 654 | extern void bioset_integrity_free(struct bio_set *); | ||
| 655 | extern void bio_integrity_init(void); | ||
| 649 | 656 | ||
| 650 | #else /* CONFIG_BLK_DEV_INTEGRITY */ | 657 | #else /* CONFIG_BLK_DEV_INTEGRITY */ |
| 651 | 658 | ||
| 652 | #define bio_integrity(a) (0) | 659 | #define bio_integrity(a) (0) |
| 660 | #define bioset_integrity_create(a, b) (0) | ||
| 653 | #define bio_integrity_prep(a) (0) | 661 | #define bio_integrity_prep(a) (0) |
| 654 | #define bio_integrity_enabled(a) (0) | 662 | #define bio_integrity_enabled(a) (0) |
| 655 | #define bio_integrity_clone(a, b, c) (0) | 663 | #define bio_integrity_clone(a, b, c, d) (0) |
| 656 | #define bio_integrity_free(a) do { } while (0) | 664 | #define bioset_integrity_free(a) do { } while (0) |
| 665 | #define bio_integrity_free(a, b) do { } while (0) | ||
| 657 | #define bio_integrity_endio(a, b) do { } while (0) | 666 | #define bio_integrity_endio(a, b) do { } while (0) |
| 658 | #define bio_integrity_advance(a, b) do { } while (0) | 667 | #define bio_integrity_advance(a, b) do { } while (0) |
| 659 | #define bio_integrity_trim(a, b, c) do { } while (0) | 668 | #define bio_integrity_trim(a, b, c) do { } while (0) |
| 660 | #define bio_integrity_split(a, b, c) do { } while (0) | 669 | #define bio_integrity_split(a, b, c) do { } while (0) |
| 661 | #define bio_integrity_set_tag(a, b, c) do { } while (0) | 670 | #define bio_integrity_set_tag(a, b, c) do { } while (0) |
| 662 | #define bio_integrity_get_tag(a, b, c) do { } while (0) | 671 | #define bio_integrity_get_tag(a, b, c) do { } while (0) |
| 672 | #define bio_integrity_init(a) do { } while (0) | ||
| 663 | 673 | ||
| 664 | #endif /* CONFIG_BLK_DEV_INTEGRITY */ | 674 | #endif /* CONFIG_BLK_DEV_INTEGRITY */ |
| 665 | 675 | ||
diff --git a/include/linux/blkdev.h b/include/linux/blkdev.h index 8963d9149b5f..49ae07951d55 100644 --- a/include/linux/blkdev.h +++ b/include/linux/blkdev.h | |||
| @@ -301,12 +301,6 @@ struct blk_queue_tag { | |||
| 301 | #define BLK_SCSI_MAX_CMDS (256) | 301 | #define BLK_SCSI_MAX_CMDS (256) |
| 302 | #define BLK_SCSI_CMD_PER_LONG (BLK_SCSI_MAX_CMDS / (sizeof(long) * 8)) | 302 | #define BLK_SCSI_CMD_PER_LONG (BLK_SCSI_MAX_CMDS / (sizeof(long) * 8)) |
| 303 | 303 | ||
| 304 | struct blk_cmd_filter { | ||
| 305 | unsigned long read_ok[BLK_SCSI_CMD_PER_LONG]; | ||
| 306 | unsigned long write_ok[BLK_SCSI_CMD_PER_LONG]; | ||
| 307 | struct kobject kobj; | ||
| 308 | }; | ||
| 309 | |||
| 310 | struct queue_limits { | 304 | struct queue_limits { |
| 311 | unsigned long bounce_pfn; | 305 | unsigned long bounce_pfn; |
| 312 | unsigned long seg_boundary_mask; | 306 | unsigned long seg_boundary_mask; |
| @@ -445,7 +439,6 @@ struct request_queue | |||
| 445 | #if defined(CONFIG_BLK_DEV_BSG) | 439 | #if defined(CONFIG_BLK_DEV_BSG) |
| 446 | struct bsg_class_device bsg_dev; | 440 | struct bsg_class_device bsg_dev; |
| 447 | #endif | 441 | #endif |
| 448 | struct blk_cmd_filter cmd_filter; | ||
| 449 | }; | 442 | }; |
| 450 | 443 | ||
| 451 | #define QUEUE_FLAG_CLUSTER 0 /* cluster several segments into 1 */ | 444 | #define QUEUE_FLAG_CLUSTER 0 /* cluster several segments into 1 */ |
| @@ -998,13 +991,7 @@ static inline int sb_issue_discard(struct super_block *sb, | |||
| 998 | return blkdev_issue_discard(sb->s_bdev, block, nr_blocks, GFP_KERNEL); | 991 | return blkdev_issue_discard(sb->s_bdev, block, nr_blocks, GFP_KERNEL); |
| 999 | } | 992 | } |
| 1000 | 993 | ||
| 1001 | /* | 994 | extern int blk_verify_command(unsigned char *cmd, fmode_t has_write_perm); |
| 1002 | * command filter functions | ||
| 1003 | */ | ||
| 1004 | extern int blk_verify_command(struct blk_cmd_filter *filter, | ||
| 1005 | unsigned char *cmd, fmode_t has_write_perm); | ||
| 1006 | extern void blk_unregister_filter(struct gendisk *disk); | ||
| 1007 | extern void blk_set_cmd_filter_defaults(struct blk_cmd_filter *filter); | ||
| 1008 | 995 | ||
| 1009 | #define MAX_PHYS_SEGMENTS 128 | 996 | #define MAX_PHYS_SEGMENTS 128 |
| 1010 | #define MAX_HW_SEGMENTS 128 | 997 | #define MAX_HW_SEGMENTS 128 |
diff --git a/include/linux/elfcore.h b/include/linux/elfcore.h index 7605c5e9589f..03ec16779802 100644 --- a/include/linux/elfcore.h +++ b/include/linux/elfcore.h | |||
| @@ -125,6 +125,8 @@ static inline int elf_core_copy_task_regs(struct task_struct *t, elf_gregset_t* | |||
| 125 | #ifdef ELF_CORE_COPY_TASK_REGS | 125 | #ifdef ELF_CORE_COPY_TASK_REGS |
| 126 | 126 | ||
| 127 | return ELF_CORE_COPY_TASK_REGS(t, elfregs); | 127 | return ELF_CORE_COPY_TASK_REGS(t, elfregs); |
| 128 | #else | ||
| 129 | elf_core_copy_regs(elfregs, task_pt_regs(t)); | ||
| 128 | #endif | 130 | #endif |
| 129 | return 0; | 131 | return 0; |
| 130 | } | 132 | } |
diff --git a/include/linux/eventfd.h b/include/linux/eventfd.h index f45a8ae5f828..3b85ba6479f4 100644 --- a/include/linux/eventfd.h +++ b/include/linux/eventfd.h | |||
| @@ -8,10 +8,8 @@ | |||
| 8 | #ifndef _LINUX_EVENTFD_H | 8 | #ifndef _LINUX_EVENTFD_H |
| 9 | #define _LINUX_EVENTFD_H | 9 | #define _LINUX_EVENTFD_H |
| 10 | 10 | ||
| 11 | #ifdef CONFIG_EVENTFD | ||
| 12 | |||
| 13 | /* For O_CLOEXEC and O_NONBLOCK */ | ||
| 14 | #include <linux/fcntl.h> | 11 | #include <linux/fcntl.h> |
| 12 | #include <linux/file.h> | ||
| 15 | 13 | ||
| 16 | /* | 14 | /* |
| 17 | * CAREFUL: Check include/asm-generic/fcntl.h when defining | 15 | * CAREFUL: Check include/asm-generic/fcntl.h when defining |
| @@ -27,16 +25,37 @@ | |||
| 27 | #define EFD_SHARED_FCNTL_FLAGS (O_CLOEXEC | O_NONBLOCK) | 25 | #define EFD_SHARED_FCNTL_FLAGS (O_CLOEXEC | O_NONBLOCK) |
| 28 | #define EFD_FLAGS_SET (EFD_SHARED_FCNTL_FLAGS | EFD_SEMAPHORE) | 26 | #define EFD_FLAGS_SET (EFD_SHARED_FCNTL_FLAGS | EFD_SEMAPHORE) |
| 29 | 27 | ||
| 28 | #ifdef CONFIG_EVENTFD | ||
| 29 | |||
| 30 | struct eventfd_ctx *eventfd_ctx_get(struct eventfd_ctx *ctx); | ||
| 31 | void eventfd_ctx_put(struct eventfd_ctx *ctx); | ||
| 30 | struct file *eventfd_fget(int fd); | 32 | struct file *eventfd_fget(int fd); |
| 31 | int eventfd_signal(struct file *file, int n); | 33 | struct eventfd_ctx *eventfd_ctx_fdget(int fd); |
| 34 | struct eventfd_ctx *eventfd_ctx_fileget(struct file *file); | ||
| 35 | int eventfd_signal(struct eventfd_ctx *ctx, int n); | ||
| 32 | 36 | ||
| 33 | #else /* CONFIG_EVENTFD */ | 37 | #else /* CONFIG_EVENTFD */ |
| 34 | 38 | ||
| 35 | #define eventfd_fget(fd) ERR_PTR(-ENOSYS) | 39 | /* |
| 36 | static inline int eventfd_signal(struct file *file, int n) | 40 | * Ugly ugly ugly error layer to support modules that uses eventfd but |
| 37 | { return 0; } | 41 | * pretend to work in !CONFIG_EVENTFD configurations. Namely, AIO. |
| 42 | */ | ||
| 43 | static inline struct eventfd_ctx *eventfd_ctx_fdget(int fd) | ||
| 44 | { | ||
| 45 | return ERR_PTR(-ENOSYS); | ||
| 46 | } | ||
| 47 | |||
| 48 | static inline int eventfd_signal(struct eventfd_ctx *ctx, int n) | ||
| 49 | { | ||
| 50 | return -ENOSYS; | ||
| 51 | } | ||
| 52 | |||
| 53 | static inline void eventfd_ctx_put(struct eventfd_ctx *ctx) | ||
| 54 | { | ||
| 55 | |||
| 56 | } | ||
| 38 | 57 | ||
| 39 | #endif /* CONFIG_EVENTFD */ | 58 | #endif |
| 40 | 59 | ||
| 41 | #endif /* _LINUX_EVENTFD_H */ | 60 | #endif /* _LINUX_EVENTFD_H */ |
| 42 | 61 | ||
diff --git a/include/linux/fb.h b/include/linux/fb.h index dd68358996b7..f847df9e99b6 100644 --- a/include/linux/fb.h +++ b/include/linux/fb.h | |||
| @@ -819,6 +819,7 @@ struct fb_info { | |||
| 819 | int node; | 819 | int node; |
| 820 | int flags; | 820 | int flags; |
| 821 | struct mutex lock; /* Lock for open/release/ioctl funcs */ | 821 | struct mutex lock; /* Lock for open/release/ioctl funcs */ |
| 822 | struct mutex mm_lock; /* Lock for fb_mmap and smem_* fields */ | ||
| 822 | struct fb_var_screeninfo var; /* Current var */ | 823 | struct fb_var_screeninfo var; /* Current var */ |
| 823 | struct fb_fix_screeninfo fix; /* Current fix */ | 824 | struct fb_fix_screeninfo fix; /* Current fix */ |
| 824 | struct fb_monspecs monspecs; /* Current Monitor specs */ | 825 | struct fb_monspecs monspecs; /* Current Monitor specs */ |
diff --git a/include/linux/firewire.h b/include/linux/firewire.h index 9823946adbc5..192d1e43c43c 100644 --- a/include/linux/firewire.h +++ b/include/linux/firewire.h | |||
| @@ -127,6 +127,7 @@ struct fw_card { | |||
| 127 | struct delayed_work work; | 127 | struct delayed_work work; |
| 128 | int bm_retries; | 128 | int bm_retries; |
| 129 | int bm_generation; | 129 | int bm_generation; |
| 130 | __be32 bm_transaction_data[2]; | ||
| 130 | 131 | ||
| 131 | bool broadcast_channel_allocated; | 132 | bool broadcast_channel_allocated; |
| 132 | u32 broadcast_channel; | 133 | u32 broadcast_channel; |
diff --git a/include/linux/fuse.h b/include/linux/fuse.h index d41ed593f79f..cf593bf9fd32 100644 --- a/include/linux/fuse.h +++ b/include/linux/fuse.h | |||
| @@ -25,6 +25,11 @@ | |||
| 25 | * - add IOCTL message | 25 | * - add IOCTL message |
| 26 | * - add unsolicited notification support | 26 | * - add unsolicited notification support |
| 27 | * - add POLL message and NOTIFY_POLL notification | 27 | * - add POLL message and NOTIFY_POLL notification |
| 28 | * | ||
| 29 | * 7.12 | ||
| 30 | * - add umask flag to input argument of open, mknod and mkdir | ||
| 31 | * - add notification messages for invalidation of inodes and | ||
| 32 | * directory entries | ||
| 28 | */ | 33 | */ |
| 29 | 34 | ||
| 30 | #ifndef _LINUX_FUSE_H | 35 | #ifndef _LINUX_FUSE_H |
| @@ -36,7 +41,7 @@ | |||
| 36 | #define FUSE_KERNEL_VERSION 7 | 41 | #define FUSE_KERNEL_VERSION 7 |
| 37 | 42 | ||
| 38 | /** Minor version number of this interface */ | 43 | /** Minor version number of this interface */ |
| 39 | #define FUSE_KERNEL_MINOR_VERSION 11 | 44 | #define FUSE_KERNEL_MINOR_VERSION 12 |
| 40 | 45 | ||
| 41 | /** The node ID of the root inode */ | 46 | /** The node ID of the root inode */ |
| 42 | #define FUSE_ROOT_ID 1 | 47 | #define FUSE_ROOT_ID 1 |
| @@ -112,6 +117,7 @@ struct fuse_file_lock { | |||
| 112 | * INIT request/reply flags | 117 | * INIT request/reply flags |
| 113 | * | 118 | * |
| 114 | * FUSE_EXPORT_SUPPORT: filesystem handles lookups of "." and ".." | 119 | * FUSE_EXPORT_SUPPORT: filesystem handles lookups of "." and ".." |
| 120 | * FUSE_DONT_MASK: don't apply umask to file mode on create operations | ||
| 115 | */ | 121 | */ |
| 116 | #define FUSE_ASYNC_READ (1 << 0) | 122 | #define FUSE_ASYNC_READ (1 << 0) |
| 117 | #define FUSE_POSIX_LOCKS (1 << 1) | 123 | #define FUSE_POSIX_LOCKS (1 << 1) |
| @@ -119,6 +125,7 @@ struct fuse_file_lock { | |||
| 119 | #define FUSE_ATOMIC_O_TRUNC (1 << 3) | 125 | #define FUSE_ATOMIC_O_TRUNC (1 << 3) |
| 120 | #define FUSE_EXPORT_SUPPORT (1 << 4) | 126 | #define FUSE_EXPORT_SUPPORT (1 << 4) |
| 121 | #define FUSE_BIG_WRITES (1 << 5) | 127 | #define FUSE_BIG_WRITES (1 << 5) |
| 128 | #define FUSE_DONT_MASK (1 << 6) | ||
| 122 | 129 | ||
| 123 | /** | 130 | /** |
| 124 | * CUSE INIT request/reply flags | 131 | * CUSE INIT request/reply flags |
| @@ -224,6 +231,8 @@ enum fuse_opcode { | |||
| 224 | 231 | ||
| 225 | enum fuse_notify_code { | 232 | enum fuse_notify_code { |
| 226 | FUSE_NOTIFY_POLL = 1, | 233 | FUSE_NOTIFY_POLL = 1, |
| 234 | FUSE_NOTIFY_INVAL_INODE = 2, | ||
| 235 | FUSE_NOTIFY_INVAL_ENTRY = 3, | ||
| 227 | FUSE_NOTIFY_CODE_MAX, | 236 | FUSE_NOTIFY_CODE_MAX, |
| 228 | }; | 237 | }; |
| 229 | 238 | ||
| @@ -262,14 +271,18 @@ struct fuse_attr_out { | |||
| 262 | struct fuse_attr attr; | 271 | struct fuse_attr attr; |
| 263 | }; | 272 | }; |
| 264 | 273 | ||
| 274 | #define FUSE_COMPAT_MKNOD_IN_SIZE 8 | ||
| 275 | |||
| 265 | struct fuse_mknod_in { | 276 | struct fuse_mknod_in { |
| 266 | __u32 mode; | 277 | __u32 mode; |
| 267 | __u32 rdev; | 278 | __u32 rdev; |
| 279 | __u32 umask; | ||
| 280 | __u32 padding; | ||
| 268 | }; | 281 | }; |
| 269 | 282 | ||
| 270 | struct fuse_mkdir_in { | 283 | struct fuse_mkdir_in { |
| 271 | __u32 mode; | 284 | __u32 mode; |
| 272 | __u32 padding; | 285 | __u32 umask; |
| 273 | }; | 286 | }; |
| 274 | 287 | ||
| 275 | struct fuse_rename_in { | 288 | struct fuse_rename_in { |
| @@ -301,7 +314,14 @@ struct fuse_setattr_in { | |||
| 301 | 314 | ||
| 302 | struct fuse_open_in { | 315 | struct fuse_open_in { |
| 303 | __u32 flags; | 316 | __u32 flags; |
| 317 | __u32 unused; | ||
| 318 | }; | ||
| 319 | |||
| 320 | struct fuse_create_in { | ||
| 321 | __u32 flags; | ||
| 304 | __u32 mode; | 322 | __u32 mode; |
| 323 | __u32 umask; | ||
| 324 | __u32 padding; | ||
| 305 | }; | 325 | }; |
| 306 | 326 | ||
| 307 | struct fuse_open_out { | 327 | struct fuse_open_out { |
| @@ -508,4 +528,16 @@ struct fuse_dirent { | |||
| 508 | #define FUSE_DIRENT_SIZE(d) \ | 528 | #define FUSE_DIRENT_SIZE(d) \ |
| 509 | FUSE_DIRENT_ALIGN(FUSE_NAME_OFFSET + (d)->namelen) | 529 | FUSE_DIRENT_ALIGN(FUSE_NAME_OFFSET + (d)->namelen) |
| 510 | 530 | ||
| 531 | struct fuse_notify_inval_inode_out { | ||
| 532 | __u64 ino; | ||
| 533 | __s64 off; | ||
| 534 | __s64 len; | ||
| 535 | }; | ||
| 536 | |||
| 537 | struct fuse_notify_inval_entry_out { | ||
| 538 | __u64 parent; | ||
| 539 | __u32 namelen; | ||
| 540 | __u32 padding; | ||
| 541 | }; | ||
| 542 | |||
| 511 | #endif /* _LINUX_FUSE_H */ | 543 | #endif /* _LINUX_FUSE_H */ |
diff --git a/include/linux/if_ether.h b/include/linux/if_ether.h index ae3a1871413d..70fdba2bbf71 100644 --- a/include/linux/if_ether.h +++ b/include/linux/if_ether.h | |||
| @@ -78,6 +78,7 @@ | |||
| 78 | #define ETH_P_PAE 0x888E /* Port Access Entity (IEEE 802.1X) */ | 78 | #define ETH_P_PAE 0x888E /* Port Access Entity (IEEE 802.1X) */ |
| 79 | #define ETH_P_AOE 0x88A2 /* ATA over Ethernet */ | 79 | #define ETH_P_AOE 0x88A2 /* ATA over Ethernet */ |
| 80 | #define ETH_P_TIPC 0x88CA /* TIPC */ | 80 | #define ETH_P_TIPC 0x88CA /* TIPC */ |
| 81 | #define ETH_P_1588 0x88F7 /* IEEE 1588 Timesync */ | ||
| 81 | #define ETH_P_FCOE 0x8906 /* Fibre Channel over Ethernet */ | 82 | #define ETH_P_FCOE 0x8906 /* Fibre Channel over Ethernet */ |
| 82 | #define ETH_P_FIP 0x8914 /* FCoE Initialization Protocol */ | 83 | #define ETH_P_FIP 0x8914 /* FCoE Initialization Protocol */ |
| 83 | #define ETH_P_EDSA 0xDADA /* Ethertype DSA [ NOT AN OFFICIALLY REGISTERED ID ] */ | 84 | #define ETH_P_EDSA 0xDADA /* Ethertype DSA [ NOT AN OFFICIALLY REGISTERED ID ] */ |
diff --git a/include/linux/init_task.h b/include/linux/init_task.h index 5368fbdc7801..7fc01b13be43 100644 --- a/include/linux/init_task.h +++ b/include/linux/init_task.h | |||
| @@ -183,5 +183,8 @@ extern struct cred init_cred; | |||
| 183 | LIST_HEAD_INIT(cpu_timers[2]), \ | 183 | LIST_HEAD_INIT(cpu_timers[2]), \ |
| 184 | } | 184 | } |
| 185 | 185 | ||
| 186 | /* Attach to the init_task data structure for proper alignment */ | ||
| 187 | #define __init_task_data __attribute__((__section__(".data.init_task"))) | ||
| 188 | |||
| 186 | 189 | ||
| 187 | #endif | 190 | #endif |
diff --git a/include/linux/linkage.h b/include/linux/linkage.h index fee9e59649c1..691f59171c6c 100644 --- a/include/linux/linkage.h +++ b/include/linux/linkage.h | |||
| @@ -22,6 +22,15 @@ | |||
| 22 | #define __page_aligned_bss __section(.bss.page_aligned) __aligned(PAGE_SIZE) | 22 | #define __page_aligned_bss __section(.bss.page_aligned) __aligned(PAGE_SIZE) |
| 23 | 23 | ||
| 24 | /* | 24 | /* |
| 25 | * For assembly routines. | ||
| 26 | * | ||
| 27 | * Note when using these that you must specify the appropriate | ||
| 28 | * alignment directives yourself | ||
| 29 | */ | ||
| 30 | #define __PAGE_ALIGNED_DATA .section ".data.page_aligned", "aw" | ||
| 31 | #define __PAGE_ALIGNED_BSS .section ".bss.page_aligned", "aw" | ||
| 32 | |||
| 33 | /* | ||
| 25 | * This is used by architectures to keep arguments on the stack | 34 | * This is used by architectures to keep arguments on the stack |
| 26 | * untouched by the compiler by keeping them live until the end. | 35 | * untouched by the compiler by keeping them live until the end. |
| 27 | * The argument stack may be owned by the assembly-language | 36 | * The argument stack may be owned by the assembly-language |
diff --git a/include/linux/netfilter/xt_conntrack.h b/include/linux/netfilter/xt_conntrack.h index 3430c7751948..7ae05338e94c 100644 --- a/include/linux/netfilter/xt_conntrack.h +++ b/include/linux/netfilter/xt_conntrack.h | |||
| @@ -81,4 +81,17 @@ struct xt_conntrack_mtinfo1 { | |||
| 81 | __u8 state_mask, status_mask; | 81 | __u8 state_mask, status_mask; |
| 82 | }; | 82 | }; |
| 83 | 83 | ||
| 84 | struct xt_conntrack_mtinfo2 { | ||
| 85 | union nf_inet_addr origsrc_addr, origsrc_mask; | ||
| 86 | union nf_inet_addr origdst_addr, origdst_mask; | ||
| 87 | union nf_inet_addr replsrc_addr, replsrc_mask; | ||
| 88 | union nf_inet_addr repldst_addr, repldst_mask; | ||
| 89 | __u32 expires_min, expires_max; | ||
| 90 | __u16 l4proto; | ||
| 91 | __be16 origsrc_port, origdst_port; | ||
| 92 | __be16 replsrc_port, repldst_port; | ||
| 93 | __u16 match_flags, invert_flags; | ||
| 94 | __u16 state_mask, status_mask; | ||
| 95 | }; | ||
| 96 | |||
| 84 | #endif /*_XT_CONNTRACK_H*/ | 97 | #endif /*_XT_CONNTRACK_H*/ |
diff --git a/include/linux/netfilter/xt_osf.h b/include/linux/netfilter/xt_osf.h index fd2272e0959a..18afa495f973 100644 --- a/include/linux/netfilter/xt_osf.h +++ b/include/linux/netfilter/xt_osf.h | |||
| @@ -20,6 +20,8 @@ | |||
| 20 | #ifndef _XT_OSF_H | 20 | #ifndef _XT_OSF_H |
| 21 | #define _XT_OSF_H | 21 | #define _XT_OSF_H |
| 22 | 22 | ||
| 23 | #include <linux/types.h> | ||
| 24 | |||
| 23 | #define MAXGENRELEN 32 | 25 | #define MAXGENRELEN 32 |
| 24 | 26 | ||
| 25 | #define XT_OSF_GENRE (1<<0) | 27 | #define XT_OSF_GENRE (1<<0) |
diff --git a/include/linux/pci.h b/include/linux/pci.h index d304ddf412d0..115fb7ba5089 100644 --- a/include/linux/pci.h +++ b/include/linux/pci.h | |||
| @@ -1145,7 +1145,7 @@ static inline void pci_set_drvdata(struct pci_dev *pdev, void *data) | |||
| 1145 | /* If you want to know what to call your pci_dev, ask this function. | 1145 | /* If you want to know what to call your pci_dev, ask this function. |
| 1146 | * Again, it's a wrapper around the generic device. | 1146 | * Again, it's a wrapper around the generic device. |
| 1147 | */ | 1147 | */ |
| 1148 | static inline const char *pci_name(struct pci_dev *pdev) | 1148 | static inline const char *pci_name(const struct pci_dev *pdev) |
| 1149 | { | 1149 | { |
| 1150 | return dev_name(&pdev->dev); | 1150 | return dev_name(&pdev->dev); |
| 1151 | } | 1151 | } |
diff --git a/include/linux/pci_ids.h b/include/linux/pci_ids.h index a3b000365795..73b46b6b904f 100644 --- a/include/linux/pci_ids.h +++ b/include/linux/pci_ids.h | |||
| @@ -2645,6 +2645,7 @@ | |||
| 2645 | #define PCI_DEVICE_ID_NETMOS_9835 0x9835 | 2645 | #define PCI_DEVICE_ID_NETMOS_9835 0x9835 |
| 2646 | #define PCI_DEVICE_ID_NETMOS_9845 0x9845 | 2646 | #define PCI_DEVICE_ID_NETMOS_9845 0x9845 |
| 2647 | #define PCI_DEVICE_ID_NETMOS_9855 0x9855 | 2647 | #define PCI_DEVICE_ID_NETMOS_9855 0x9855 |
| 2648 | #define PCI_DEVICE_ID_NETMOS_9901 0x9901 | ||
| 2648 | 2649 | ||
| 2649 | #define PCI_VENDOR_ID_3COM_2 0xa727 | 2650 | #define PCI_VENDOR_ID_3COM_2 0xa727 |
| 2650 | 2651 | ||
diff --git a/include/linux/percpu-defs.h b/include/linux/percpu-defs.h index 8f921d74f49f..68438e18fff4 100644 --- a/include/linux/percpu-defs.h +++ b/include/linux/percpu-defs.h | |||
| @@ -24,7 +24,8 @@ | |||
| 24 | 24 | ||
| 25 | #define DEFINE_PER_CPU_SECTION(type, name, section) \ | 25 | #define DEFINE_PER_CPU_SECTION(type, name, section) \ |
| 26 | __attribute__((__section__(PER_CPU_BASE_SECTION section))) \ | 26 | __attribute__((__section__(PER_CPU_BASE_SECTION section))) \ |
| 27 | PER_CPU_ATTRIBUTES __typeof__(type) per_cpu__##name | 27 | PER_CPU_ATTRIBUTES PER_CPU_DEF_ATTRIBUTES \ |
| 28 | __typeof__(type) per_cpu__##name | ||
| 28 | 29 | ||
| 29 | /* | 30 | /* |
| 30 | * Variant on the per-CPU variable declaration/definition theme used for | 31 | * Variant on the per-CPU variable declaration/definition theme used for |
diff --git a/include/linux/perf_counter.h b/include/linux/perf_counter.h index 89698d8aba5c..5e970c7d3fd5 100644 --- a/include/linux/perf_counter.h +++ b/include/linux/perf_counter.h | |||
| @@ -178,8 +178,10 @@ struct perf_counter_attr { | |||
| 178 | mmap : 1, /* include mmap data */ | 178 | mmap : 1, /* include mmap data */ |
| 179 | comm : 1, /* include comm data */ | 179 | comm : 1, /* include comm data */ |
| 180 | freq : 1, /* use freq, not period */ | 180 | freq : 1, /* use freq, not period */ |
| 181 | inherit_stat : 1, /* per task counts */ | ||
| 182 | enable_on_exec : 1, /* next exec enables */ | ||
| 181 | 183 | ||
| 182 | __reserved_1 : 53; | 184 | __reserved_1 : 51; |
| 183 | 185 | ||
| 184 | __u32 wakeup_events; /* wakeup every n events */ | 186 | __u32 wakeup_events; /* wakeup every n events */ |
| 185 | __u32 __reserved_2; | 187 | __u32 __reserved_2; |
| @@ -232,6 +234,14 @@ struct perf_counter_mmap_page { | |||
| 232 | __u32 lock; /* seqlock for synchronization */ | 234 | __u32 lock; /* seqlock for synchronization */ |
| 233 | __u32 index; /* hardware counter identifier */ | 235 | __u32 index; /* hardware counter identifier */ |
| 234 | __s64 offset; /* add to hardware counter value */ | 236 | __s64 offset; /* add to hardware counter value */ |
| 237 | __u64 time_enabled; /* time counter active */ | ||
| 238 | __u64 time_running; /* time counter on cpu */ | ||
| 239 | |||
| 240 | /* | ||
| 241 | * Hole for extension of the self monitor capabilities | ||
| 242 | */ | ||
| 243 | |||
| 244 | __u64 __reserved[123]; /* align to 1k */ | ||
| 235 | 245 | ||
| 236 | /* | 246 | /* |
| 237 | * Control data for the mmap() data buffer. | 247 | * Control data for the mmap() data buffer. |
| @@ -253,7 +263,6 @@ struct perf_counter_mmap_page { | |||
| 253 | #define PERF_EVENT_MISC_KERNEL (1 << 0) | 263 | #define PERF_EVENT_MISC_KERNEL (1 << 0) |
| 254 | #define PERF_EVENT_MISC_USER (2 << 0) | 264 | #define PERF_EVENT_MISC_USER (2 << 0) |
| 255 | #define PERF_EVENT_MISC_HYPERVISOR (3 << 0) | 265 | #define PERF_EVENT_MISC_HYPERVISOR (3 << 0) |
| 256 | #define PERF_EVENT_MISC_OVERFLOW (1 << 2) | ||
| 257 | 266 | ||
| 258 | struct perf_event_header { | 267 | struct perf_event_header { |
| 259 | __u32 type; | 268 | __u32 type; |
| @@ -327,9 +336,18 @@ enum perf_event_type { | |||
| 327 | PERF_EVENT_FORK = 7, | 336 | PERF_EVENT_FORK = 7, |
| 328 | 337 | ||
| 329 | /* | 338 | /* |
| 330 | * When header.misc & PERF_EVENT_MISC_OVERFLOW the event_type field | 339 | * struct { |
| 331 | * will be PERF_SAMPLE_* | 340 | * struct perf_event_header header; |
| 332 | * | 341 | * u32 pid, tid; |
| 342 | * u64 value; | ||
| 343 | * { u64 time_enabled; } && PERF_FORMAT_ENABLED | ||
| 344 | * { u64 time_running; } && PERF_FORMAT_RUNNING | ||
| 345 | * { u64 parent_id; } && PERF_FORMAT_ID | ||
| 346 | * }; | ||
| 347 | */ | ||
| 348 | PERF_EVENT_READ = 8, | ||
| 349 | |||
| 350 | /* | ||
| 333 | * struct { | 351 | * struct { |
| 334 | * struct perf_event_header header; | 352 | * struct perf_event_header header; |
| 335 | * | 353 | * |
| @@ -337,8 +355,9 @@ enum perf_event_type { | |||
| 337 | * { u32 pid, tid; } && PERF_SAMPLE_TID | 355 | * { u32 pid, tid; } && PERF_SAMPLE_TID |
| 338 | * { u64 time; } && PERF_SAMPLE_TIME | 356 | * { u64 time; } && PERF_SAMPLE_TIME |
| 339 | * { u64 addr; } && PERF_SAMPLE_ADDR | 357 | * { u64 addr; } && PERF_SAMPLE_ADDR |
| 340 | * { u64 config; } && PERF_SAMPLE_CONFIG | 358 | * { u64 id; } && PERF_SAMPLE_ID |
| 341 | * { u32 cpu, res; } && PERF_SAMPLE_CPU | 359 | * { u32 cpu, res; } && PERF_SAMPLE_CPU |
| 360 | * { u64 period; } && PERF_SAMPLE_PERIOD | ||
| 342 | * | 361 | * |
| 343 | * { u64 nr; | 362 | * { u64 nr; |
| 344 | * { u64 id, val; } cnt[nr]; } && PERF_SAMPLE_GROUP | 363 | * { u64 id, val; } cnt[nr]; } && PERF_SAMPLE_GROUP |
| @@ -347,6 +366,9 @@ enum perf_event_type { | |||
| 347 | * u64 ips[nr]; } && PERF_SAMPLE_CALLCHAIN | 366 | * u64 ips[nr]; } && PERF_SAMPLE_CALLCHAIN |
| 348 | * }; | 367 | * }; |
| 349 | */ | 368 | */ |
| 369 | PERF_EVENT_SAMPLE = 9, | ||
| 370 | |||
| 371 | PERF_EVENT_MAX, /* non-ABI */ | ||
| 350 | }; | 372 | }; |
| 351 | 373 | ||
| 352 | enum perf_callchain_context { | 374 | enum perf_callchain_context { |
| @@ -582,6 +604,7 @@ struct perf_counter_context { | |||
| 582 | int nr_counters; | 604 | int nr_counters; |
| 583 | int nr_active; | 605 | int nr_active; |
| 584 | int is_active; | 606 | int is_active; |
| 607 | int nr_stat; | ||
| 585 | atomic_t refcount; | 608 | atomic_t refcount; |
| 586 | struct task_struct *task; | 609 | struct task_struct *task; |
| 587 | 610 | ||
| @@ -669,7 +692,16 @@ static inline int is_software_counter(struct perf_counter *counter) | |||
| 669 | (counter->attr.type != PERF_TYPE_HW_CACHE); | 692 | (counter->attr.type != PERF_TYPE_HW_CACHE); |
| 670 | } | 693 | } |
| 671 | 694 | ||
| 672 | extern void perf_swcounter_event(u32, u64, int, struct pt_regs *, u64); | 695 | extern atomic_t perf_swcounter_enabled[PERF_COUNT_SW_MAX]; |
| 696 | |||
| 697 | extern void __perf_swcounter_event(u32, u64, int, struct pt_regs *, u64); | ||
| 698 | |||
| 699 | static inline void | ||
| 700 | perf_swcounter_event(u32 event, u64 nr, int nmi, struct pt_regs *regs, u64 addr) | ||
| 701 | { | ||
| 702 | if (atomic_read(&perf_swcounter_enabled[event])) | ||
| 703 | __perf_swcounter_event(event, nr, nmi, regs, addr); | ||
| 704 | } | ||
| 673 | 705 | ||
| 674 | extern void __perf_counter_mmap(struct vm_area_struct *vma); | 706 | extern void __perf_counter_mmap(struct vm_area_struct *vma); |
| 675 | 707 | ||
diff --git a/include/linux/sched.h b/include/linux/sched.h index 4d0754269884..0085d758d645 100644 --- a/include/linux/sched.h +++ b/include/linux/sched.h | |||
| @@ -349,8 +349,20 @@ extern int mutex_spin_on_owner(struct mutex *lock, struct thread_info *owner); | |||
| 349 | struct nsproxy; | 349 | struct nsproxy; |
| 350 | struct user_namespace; | 350 | struct user_namespace; |
| 351 | 351 | ||
| 352 | /* Maximum number of active map areas.. This is a random (large) number */ | 352 | /* |
| 353 | #define DEFAULT_MAX_MAP_COUNT 65536 | 353 | * Default maximum number of active map areas, this limits the number of vmas |
| 354 | * per mm struct. Users can overwrite this number by sysctl but there is a | ||
| 355 | * problem. | ||
| 356 | * | ||
| 357 | * When a program's coredump is generated as ELF format, a section is created | ||
| 358 | * per a vma. In ELF, the number of sections is represented in unsigned short. | ||
| 359 | * This means the number of sections should be smaller than 65535 at coredump. | ||
| 360 | * Because the kernel adds some informative sections to a image of program at | ||
| 361 | * generating coredump, we need some margin. The number of extra sections is | ||
| 362 | * 1-3 now and depends on arch. We use "5" as safe margin, here. | ||
| 363 | */ | ||
| 364 | #define MAPCOUNT_ELF_CORE_MARGIN (5) | ||
| 365 | #define DEFAULT_MAX_MAP_COUNT (USHORT_MAX - MAPCOUNT_ELF_CORE_MARGIN) | ||
| 354 | 366 | ||
| 355 | extern int sysctl_max_map_count; | 367 | extern int sysctl_max_map_count; |
| 356 | 368 | ||
diff --git a/include/linux/spi/spi.h b/include/linux/spi/spi.h index 9c4cd27f4685..c47c4b4da97e 100644 --- a/include/linux/spi/spi.h +++ b/include/linux/spi/spi.h | |||
| @@ -80,6 +80,8 @@ struct spi_device { | |||
| 80 | #define SPI_LSB_FIRST 0x08 /* per-word bits-on-wire */ | 80 | #define SPI_LSB_FIRST 0x08 /* per-word bits-on-wire */ |
| 81 | #define SPI_3WIRE 0x10 /* SI/SO signals shared */ | 81 | #define SPI_3WIRE 0x10 /* SI/SO signals shared */ |
| 82 | #define SPI_LOOP 0x20 /* loopback mode */ | 82 | #define SPI_LOOP 0x20 /* loopback mode */ |
| 83 | #define SPI_NO_CS 0x40 /* 1 dev/bus, no chipselect */ | ||
| 84 | #define SPI_READY 0x80 /* slave pulls low to pause */ | ||
| 83 | u8 bits_per_word; | 85 | u8 bits_per_word; |
| 84 | int irq; | 86 | int irq; |
| 85 | void *controller_state; | 87 | void *controller_state; |
| @@ -248,6 +250,10 @@ struct spi_master { | |||
| 248 | /* spi_device.mode flags understood by this controller driver */ | 250 | /* spi_device.mode flags understood by this controller driver */ |
| 249 | u16 mode_bits; | 251 | u16 mode_bits; |
| 250 | 252 | ||
| 253 | /* other constraints relevant to this driver */ | ||
| 254 | u16 flags; | ||
| 255 | #define SPI_MASTER_HALF_DUPLEX BIT(0) /* can't do full duplex */ | ||
| 256 | |||
| 251 | /* Setup mode and clock, etc (spi driver may call many times). | 257 | /* Setup mode and clock, etc (spi driver may call many times). |
| 252 | * | 258 | * |
| 253 | * IMPORTANT: this may be called when transfers to another | 259 | * IMPORTANT: this may be called when transfers to another |
diff --git a/include/linux/spi/spidev.h b/include/linux/spi/spidev.h index 95251ccd5a07..bf0570a84f7a 100644 --- a/include/linux/spi/spidev.h +++ b/include/linux/spi/spidev.h | |||
| @@ -40,6 +40,8 @@ | |||
| 40 | #define SPI_LSB_FIRST 0x08 | 40 | #define SPI_LSB_FIRST 0x08 |
| 41 | #define SPI_3WIRE 0x10 | 41 | #define SPI_3WIRE 0x10 |
| 42 | #define SPI_LOOP 0x20 | 42 | #define SPI_LOOP 0x20 |
| 43 | #define SPI_NO_CS 0x40 | ||
| 44 | #define SPI_READY 0x80 | ||
| 43 | 45 | ||
| 44 | /*---------------------------------------------------------------------------*/ | 46 | /*---------------------------------------------------------------------------*/ |
| 45 | 47 | ||
diff --git a/include/linux/sysrq.h b/include/linux/sysrq.h index 98a1d8cfb73d..99adcdc0d3ca 100644 --- a/include/linux/sysrq.h +++ b/include/linux/sysrq.h | |||
| @@ -14,6 +14,8 @@ | |||
| 14 | #ifndef _LINUX_SYSRQ_H | 14 | #ifndef _LINUX_SYSRQ_H |
| 15 | #define _LINUX_SYSRQ_H | 15 | #define _LINUX_SYSRQ_H |
| 16 | 16 | ||
| 17 | #include <linux/errno.h> | ||
| 18 | |||
| 17 | struct pt_regs; | 19 | struct pt_regs; |
| 18 | struct tty_struct; | 20 | struct tty_struct; |
| 19 | 21 | ||
diff --git a/include/linux/usb/usbnet.h b/include/linux/usb/usbnet.h index 5d44059f6d63..310e18a880ff 100644 --- a/include/linux/usb/usbnet.h +++ b/include/linux/usb/usbnet.h | |||
| @@ -42,7 +42,6 @@ struct usbnet { | |||
| 42 | 42 | ||
| 43 | /* protocol/interface state */ | 43 | /* protocol/interface state */ |
| 44 | struct net_device *net; | 44 | struct net_device *net; |
| 45 | struct net_device_stats stats; | ||
| 46 | int msg_enable; | 45 | int msg_enable; |
| 47 | unsigned long data [5]; | 46 | unsigned long data [5]; |
| 48 | u32 xid; | 47 | u32 xid; |
diff --git a/include/linux/videodev2.h b/include/linux/videodev2.h index 8a025d510904..95846d988011 100644 --- a/include/linux/videodev2.h +++ b/include/linux/videodev2.h | |||
| @@ -318,6 +318,8 @@ struct v4l2_pix_format { | |||
| 318 | /* see http://www.siliconimaging.com/RGB%20Bayer.htm */ | 318 | /* see http://www.siliconimaging.com/RGB%20Bayer.htm */ |
| 319 | #define V4L2_PIX_FMT_SBGGR8 v4l2_fourcc('B', 'A', '8', '1') /* 8 BGBG.. GRGR.. */ | 319 | #define V4L2_PIX_FMT_SBGGR8 v4l2_fourcc('B', 'A', '8', '1') /* 8 BGBG.. GRGR.. */ |
| 320 | #define V4L2_PIX_FMT_SGBRG8 v4l2_fourcc('G', 'B', 'R', 'G') /* 8 GBGB.. RGRG.. */ | 320 | #define V4L2_PIX_FMT_SGBRG8 v4l2_fourcc('G', 'B', 'R', 'G') /* 8 GBGB.. RGRG.. */ |
| 321 | #define V4L2_PIX_FMT_SGRBG8 v4l2_fourcc('G', 'R', 'B', 'G') /* 8 GRGR.. BGBG.. */ | ||
| 322 | |||
| 321 | /* | 323 | /* |
| 322 | * 10bit raw bayer, expanded to 16 bits | 324 | * 10bit raw bayer, expanded to 16 bits |
| 323 | * xxxxrrrrrrrrrrxxxxgggggggggg xxxxggggggggggxxxxbbbbbbbbbb... | 325 | * xxxxrrrrrrrrrrxxxxgggggggggg xxxxggggggggggxxxxbbbbbbbbbb... |
diff --git a/include/media/v4l2-chip-ident.h b/include/media/v4l2-chip-ident.h index 4d7e2272c42f..11a4a2d3e364 100644 --- a/include/media/v4l2-chip-ident.h +++ b/include/media/v4l2-chip-ident.h | |||
| @@ -155,6 +155,9 @@ enum { | |||
| 155 | /* module cafe_ccic, just ident 8801 */ | 155 | /* module cafe_ccic, just ident 8801 */ |
| 156 | V4L2_IDENT_CAFE = 8801, | 156 | V4L2_IDENT_CAFE = 8801, |
| 157 | 157 | ||
| 158 | /* module mt9v011, just ident 8243 */ | ||
| 159 | V4L2_IDENT_MT9V011 = 8243, | ||
| 160 | |||
| 158 | /* module tw9910: just ident 9910 */ | 161 | /* module tw9910: just ident 9910 */ |
| 159 | V4L2_IDENT_TW9910 = 9910, | 162 | V4L2_IDENT_TW9910 = 9910, |
| 160 | 163 | ||
diff --git a/include/net/netfilter/nf_conntrack.h b/include/net/netfilter/nf_conntrack.h index a632689b61b4..cbdd6284996d 100644 --- a/include/net/netfilter/nf_conntrack.h +++ b/include/net/netfilter/nf_conntrack.h | |||
| @@ -258,8 +258,8 @@ static inline bool nf_ct_kill(struct nf_conn *ct) | |||
| 258 | /* Update TCP window tracking data when NAT mangles the packet */ | 258 | /* Update TCP window tracking data when NAT mangles the packet */ |
| 259 | extern void nf_conntrack_tcp_update(const struct sk_buff *skb, | 259 | extern void nf_conntrack_tcp_update(const struct sk_buff *skb, |
| 260 | unsigned int dataoff, | 260 | unsigned int dataoff, |
| 261 | struct nf_conn *ct, | 261 | struct nf_conn *ct, int dir, |
| 262 | int dir); | 262 | s16 offset); |
| 263 | 263 | ||
| 264 | /* Fake conntrack entry for untracked connections */ | 264 | /* Fake conntrack entry for untracked connections */ |
| 265 | extern struct nf_conn nf_conntrack_untracked; | 265 | extern struct nf_conn nf_conntrack_untracked; |
