aboutsummaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
Diffstat (limited to 'include')
-rw-r--r--include/asm-generic/hardirq.h2
-rw-r--r--include/linux/ata.h9
-rw-r--r--include/linux/blkdev.h4
-rw-r--r--include/linux/elf.h1
-rw-r--r--include/linux/genhd.h21
-rw-r--r--include/linux/i2c/twl4030.h6
-rw-r--r--include/linux/interrupt.h2
-rw-r--r--include/linux/kernel.h6
-rw-r--r--include/linux/libata.h12
-rw-r--r--include/linux/mmc/host.h1
-rw-r--r--include/linux/pci_ids.h1
-rw-r--r--include/linux/usb/serial.h1
-rw-r--r--include/linux/workqueue.h1
-rw-r--r--include/scsi/libiscsi.h3
-rw-r--r--include/scsi/scsi.h3
-rw-r--r--include/scsi/scsi_cmnd.h4
-rw-r--r--include/scsi/scsi_host.h15
17 files changed, 64 insertions, 28 deletions
diff --git a/include/asm-generic/hardirq.h b/include/asm-generic/hardirq.h
index 23bb4dad4962..62f59080e5cc 100644
--- a/include/asm-generic/hardirq.h
+++ b/include/asm-generic/hardirq.h
@@ -6,7 +6,7 @@
6#include <linux/irq.h> 6#include <linux/irq.h>
7 7
8typedef struct { 8typedef struct {
9 unsigned long __softirq_pending; 9 unsigned int __softirq_pending;
10} ____cacheline_aligned irq_cpustat_t; 10} ____cacheline_aligned irq_cpustat_t;
11 11
12#include <linux/irq_cpustat.h> /* Standard mappings for irq_cpustat_t above */ 12#include <linux/irq_cpustat.h> /* Standard mappings for irq_cpustat_t above */
diff --git a/include/linux/ata.h b/include/linux/ata.h
index 6299a259ed19..4fb357312b3b 100644
--- a/include/linux/ata.h
+++ b/include/linux/ata.h
@@ -334,9 +334,12 @@ enum {
334 SETFEATURES_SATA_DISABLE = 0x90, /* Disable use of SATA feature */ 334 SETFEATURES_SATA_DISABLE = 0x90, /* Disable use of SATA feature */
335 335
336 /* SETFEATURE Sector counts for SATA features */ 336 /* SETFEATURE Sector counts for SATA features */
337 SATA_AN = 0x05, /* Asynchronous Notification */ 337 SATA_FPDMA_OFFSET = 0x01, /* FPDMA non-zero buffer offsets */
338 SATA_DIPM = 0x03, /* Device Initiated Power Management */ 338 SATA_FPDMA_AA = 0x02, /* FPDMA Setup FIS Auto-Activate */
339 SATA_FPDMA_AA = 0x02, /* DMA Setup FIS Auto-Activate */ 339 SATA_DIPM = 0x03, /* Device Initiated Power Management */
340 SATA_FPDMA_IN_ORDER = 0x04, /* FPDMA in-order data delivery */
341 SATA_AN = 0x05, /* Asynchronous Notification */
342 SATA_SSP = 0x06, /* Software Settings Preservation */
340 343
341 /* feature values for SET_MAX */ 344 /* feature values for SET_MAX */
342 ATA_SET_MAX_ADDR = 0x00, 345 ATA_SET_MAX_ADDR = 0x00,
diff --git a/include/linux/blkdev.h b/include/linux/blkdev.h
index 25119041e034..221cecd86bd3 100644
--- a/include/linux/blkdev.h
+++ b/include/linux/blkdev.h
@@ -1172,11 +1172,7 @@ static inline void put_dev_sector(Sector p)
1172} 1172}
1173 1173
1174struct work_struct; 1174struct work_struct;
1175struct delayed_work;
1176int kblockd_schedule_work(struct request_queue *q, struct work_struct *work); 1175int kblockd_schedule_work(struct request_queue *q, struct work_struct *work);
1177int kblockd_schedule_delayed_work(struct request_queue *q,
1178 struct delayed_work *work,
1179 unsigned long delay);
1180 1176
1181#define MODULE_ALIAS_BLOCKDEV(major,minor) \ 1177#define MODULE_ALIAS_BLOCKDEV(major,minor) \
1182 MODULE_ALIAS("block-major-" __stringify(major) "-" __stringify(minor)) 1178 MODULE_ALIAS("block-major-" __stringify(major) "-" __stringify(minor))
diff --git a/include/linux/elf.h b/include/linux/elf.h
index 45a937be6d38..90a4ed0ea0e5 100644
--- a/include/linux/elf.h
+++ b/include/linux/elf.h
@@ -361,6 +361,7 @@ typedef struct elf64_shdr {
361#define NT_PPC_VSX 0x102 /* PowerPC VSX registers */ 361#define NT_PPC_VSX 0x102 /* PowerPC VSX registers */
362#define NT_386_TLS 0x200 /* i386 TLS slots (struct user_desc) */ 362#define NT_386_TLS 0x200 /* i386 TLS slots (struct user_desc) */
363#define NT_386_IOPERM 0x201 /* x86 io permission bitmap (1=deny) */ 363#define NT_386_IOPERM 0x201 /* x86 io permission bitmap (1=deny) */
364#define NT_PRXSTATUS 0x300 /* s390 upper register halves */
364 365
365 366
366/* Note header in a PT_NOTE section */ 367/* Note header in a PT_NOTE section */
diff --git a/include/linux/genhd.h b/include/linux/genhd.h
index 7beaa21b3880..297df45ffd0a 100644
--- a/include/linux/genhd.h
+++ b/include/linux/genhd.h
@@ -98,7 +98,7 @@ struct hd_struct {
98 int make_it_fail; 98 int make_it_fail;
99#endif 99#endif
100 unsigned long stamp; 100 unsigned long stamp;
101 int in_flight; 101 int in_flight[2];
102#ifdef CONFIG_SMP 102#ifdef CONFIG_SMP
103 struct disk_stats *dkstats; 103 struct disk_stats *dkstats;
104#else 104#else
@@ -322,18 +322,23 @@ static inline void free_part_stats(struct hd_struct *part)
322#define part_stat_sub(cpu, gendiskp, field, subnd) \ 322#define part_stat_sub(cpu, gendiskp, field, subnd) \
323 part_stat_add(cpu, gendiskp, field, -subnd) 323 part_stat_add(cpu, gendiskp, field, -subnd)
324 324
325static inline void part_inc_in_flight(struct hd_struct *part) 325static inline void part_inc_in_flight(struct hd_struct *part, int rw)
326{ 326{
327 part->in_flight++; 327 part->in_flight[rw]++;
328 if (part->partno) 328 if (part->partno)
329 part_to_disk(part)->part0.in_flight++; 329 part_to_disk(part)->part0.in_flight[rw]++;
330} 330}
331 331
332static inline void part_dec_in_flight(struct hd_struct *part) 332static inline void part_dec_in_flight(struct hd_struct *part, int rw)
333{ 333{
334 part->in_flight--; 334 part->in_flight[rw]--;
335 if (part->partno) 335 if (part->partno)
336 part_to_disk(part)->part0.in_flight--; 336 part_to_disk(part)->part0.in_flight[rw]--;
337}
338
339static inline int part_in_flight(struct hd_struct *part)
340{
341 return part->in_flight[0] + part->in_flight[1];
337} 342}
338 343
339/* block/blk-core.c */ 344/* block/blk-core.c */
@@ -546,6 +551,8 @@ extern ssize_t part_size_show(struct device *dev,
546 struct device_attribute *attr, char *buf); 551 struct device_attribute *attr, char *buf);
547extern ssize_t part_stat_show(struct device *dev, 552extern ssize_t part_stat_show(struct device *dev,
548 struct device_attribute *attr, char *buf); 553 struct device_attribute *attr, char *buf);
554extern ssize_t part_inflight_show(struct device *dev,
555 struct device_attribute *attr, char *buf);
549#ifdef CONFIG_FAIL_MAKE_REQUEST 556#ifdef CONFIG_FAIL_MAKE_REQUEST
550extern ssize_t part_fail_show(struct device *dev, 557extern ssize_t part_fail_show(struct device *dev,
551 struct device_attribute *attr, char *buf); 558 struct device_attribute *attr, char *buf);
diff --git a/include/linux/i2c/twl4030.h b/include/linux/i2c/twl4030.h
index 2d02dfd7076c..508824ee35e6 100644
--- a/include/linux/i2c/twl4030.h
+++ b/include/linux/i2c/twl4030.h
@@ -349,11 +349,11 @@ struct twl4030_madc_platform_data {
349 int irq_line; 349 int irq_line;
350}; 350};
351 351
352/* Boards have uniqe mappings of {col, row} --> keycode. 352/* Boards have uniqe mappings of {row, col} --> keycode.
353 * Column and row are 4 bits, but range only from 0..7. 353 * Column and row are 8 bits each, but range only from 0..7.
354 * a PERSISTENT_KEY is "always on" and never reported. 354 * a PERSISTENT_KEY is "always on" and never reported.
355 */ 355 */
356#define PERSISTENT_KEY(c, r) KEY((c), (r), KEY_RESERVED) 356#define PERSISTENT_KEY(r, c) KEY((r), (c), KEY_RESERVED)
357 357
358struct twl4030_keypad_data { 358struct twl4030_keypad_data {
359 const struct matrix_keymap_data *keymap_data; 359 const struct matrix_keymap_data *keymap_data;
diff --git a/include/linux/interrupt.h b/include/linux/interrupt.h
index b78cf8194957..7ca72b74eec7 100644
--- a/include/linux/interrupt.h
+++ b/include/linux/interrupt.h
@@ -10,7 +10,6 @@
10#include <linux/irqreturn.h> 10#include <linux/irqreturn.h>
11#include <linux/irqnr.h> 11#include <linux/irqnr.h>
12#include <linux/hardirq.h> 12#include <linux/hardirq.h>
13#include <linux/sched.h>
14#include <linux/irqflags.h> 13#include <linux/irqflags.h>
15#include <linux/smp.h> 14#include <linux/smp.h>
16#include <linux/percpu.h> 15#include <linux/percpu.h>
@@ -610,6 +609,7 @@ extern void debug_poll_all_shared_irqs(void);
610static inline void debug_poll_all_shared_irqs(void) { } 609static inline void debug_poll_all_shared_irqs(void) { }
611#endif 610#endif
612 611
612struct seq_file;
613int show_interrupts(struct seq_file *p, void *v); 613int show_interrupts(struct seq_file *p, void *v);
614 614
615struct irq_desc; 615struct irq_desc;
diff --git a/include/linux/kernel.h b/include/linux/kernel.h
index d3cd23f30039..f4e3184fa054 100644
--- a/include/linux/kernel.h
+++ b/include/linux/kernel.h
@@ -659,6 +659,12 @@ extern int do_sysinfo(struct sysinfo *info);
659 659
660#endif /* __KERNEL__ */ 660#endif /* __KERNEL__ */
661 661
662#ifndef __EXPORTED_HEADERS__
663#ifndef __KERNEL__
664#warning Attempt to use kernel headers from user space, see http://kernelnewbies.org/KernelHeaders
665#endif /* __KERNEL__ */
666#endif /* __EXPORTED_HEADERS__ */
667
662#define SI_LOAD_SHIFT 16 668#define SI_LOAD_SHIFT 16
663struct sysinfo { 669struct sysinfo {
664 long uptime; /* Seconds since boot */ 670 long uptime; /* Seconds since boot */
diff --git a/include/linux/libata.h b/include/linux/libata.h
index 76319bf03e37..87698640c091 100644
--- a/include/linux/libata.h
+++ b/include/linux/libata.h
@@ -418,6 +418,17 @@ enum {
418 ATA_TIMING_ACTIVE | ATA_TIMING_RECOVER | 418 ATA_TIMING_ACTIVE | ATA_TIMING_RECOVER |
419 ATA_TIMING_DMACK_HOLD | ATA_TIMING_CYCLE | 419 ATA_TIMING_DMACK_HOLD | ATA_TIMING_CYCLE |
420 ATA_TIMING_UDMA, 420 ATA_TIMING_UDMA,
421
422 /* ACPI constants */
423 ATA_ACPI_FILTER_SETXFER = 1 << 0,
424 ATA_ACPI_FILTER_LOCK = 1 << 1,
425 ATA_ACPI_FILTER_DIPM = 1 << 2,
426 ATA_ACPI_FILTER_FPDMA_OFFSET = 1 << 3, /* FPDMA non-zero offset */
427 ATA_ACPI_FILTER_FPDMA_AA = 1 << 4, /* FPDMA auto activate */
428
429 ATA_ACPI_FILTER_DEFAULT = ATA_ACPI_FILTER_SETXFER |
430 ATA_ACPI_FILTER_LOCK |
431 ATA_ACPI_FILTER_DIPM,
421}; 432};
422 433
423enum ata_xfer_mask { 434enum ata_xfer_mask {
@@ -587,6 +598,7 @@ struct ata_device {
587#ifdef CONFIG_ATA_ACPI 598#ifdef CONFIG_ATA_ACPI
588 acpi_handle acpi_handle; 599 acpi_handle acpi_handle;
589 union acpi_object *gtf_cache; 600 union acpi_object *gtf_cache;
601 unsigned int gtf_filter;
590#endif 602#endif
591 /* n_sector is CLEAR_BEGIN, read comment above CLEAR_BEGIN */ 603 /* n_sector is CLEAR_BEGIN, read comment above CLEAR_BEGIN */
592 u64 n_sectors; /* size of device, if ATA */ 604 u64 n_sectors; /* size of device, if ATA */
diff --git a/include/linux/mmc/host.h b/include/linux/mmc/host.h
index 81bb42358595..eaf36364b7d4 100644
--- a/include/linux/mmc/host.h
+++ b/include/linux/mmc/host.h
@@ -11,6 +11,7 @@
11#define LINUX_MMC_HOST_H 11#define LINUX_MMC_HOST_H
12 12
13#include <linux/leds.h> 13#include <linux/leds.h>
14#include <linux/sched.h>
14 15
15#include <linux/mmc/core.h> 16#include <linux/mmc/core.h>
16 17
diff --git a/include/linux/pci_ids.h b/include/linux/pci_ids.h
index da1fda8623e0..f490e7a7307a 100644
--- a/include/linux/pci_ids.h
+++ b/include/linux/pci_ids.h
@@ -776,6 +776,7 @@
776#define PCI_DEVICE_ID_TI_X515 0x8036 776#define PCI_DEVICE_ID_TI_X515 0x8036
777#define PCI_DEVICE_ID_TI_XX12 0x8039 777#define PCI_DEVICE_ID_TI_XX12 0x8039
778#define PCI_DEVICE_ID_TI_XX12_FM 0x803b 778#define PCI_DEVICE_ID_TI_XX12_FM 0x803b
779#define PCI_DEVICE_ID_TI_XIO2000A 0x8231
779#define PCI_DEVICE_ID_TI_1130 0xac12 780#define PCI_DEVICE_ID_TI_1130 0xac12
780#define PCI_DEVICE_ID_TI_1031 0xac13 781#define PCI_DEVICE_ID_TI_1031 0xac13
781#define PCI_DEVICE_ID_TI_1131 0xac15 782#define PCI_DEVICE_ID_TI_1131 0xac15
diff --git a/include/linux/usb/serial.h b/include/linux/usb/serial.h
index c17eb64d7213..ce911ebf91e8 100644
--- a/include/linux/usb/serial.h
+++ b/include/linux/usb/serial.h
@@ -150,6 +150,7 @@ struct usb_serial {
150 struct usb_interface *interface; 150 struct usb_interface *interface;
151 unsigned char disconnected:1; 151 unsigned char disconnected:1;
152 unsigned char suspending:1; 152 unsigned char suspending:1;
153 unsigned char attached:1;
153 unsigned char minor; 154 unsigned char minor;
154 unsigned char num_ports; 155 unsigned char num_ports;
155 unsigned char num_port_pointers; 156 unsigned char num_port_pointers;
diff --git a/include/linux/workqueue.h b/include/linux/workqueue.h
index 7ef0c7b94f31..cf24c20de9e4 100644
--- a/include/linux/workqueue.h
+++ b/include/linux/workqueue.h
@@ -207,6 +207,7 @@ extern int queue_delayed_work_on(int cpu, struct workqueue_struct *wq,
207 207
208extern void flush_workqueue(struct workqueue_struct *wq); 208extern void flush_workqueue(struct workqueue_struct *wq);
209extern void flush_scheduled_work(void); 209extern void flush_scheduled_work(void);
210extern void flush_delayed_work(struct delayed_work *work);
210 211
211extern int schedule_work(struct work_struct *work); 212extern int schedule_work(struct work_struct *work);
212extern int schedule_work_on(int cpu, struct work_struct *work); 213extern int schedule_work_on(int cpu, struct work_struct *work);
diff --git a/include/scsi/libiscsi.h b/include/scsi/libiscsi.h
index 887e57e3e223..a72edd4eceec 100644
--- a/include/scsi/libiscsi.h
+++ b/include/scsi/libiscsi.h
@@ -303,6 +303,7 @@ struct iscsi_session {
303 int cmds_max; /* size of cmds array */ 303 int cmds_max; /* size of cmds array */
304 struct iscsi_task **cmds; /* Original Cmds arr */ 304 struct iscsi_task **cmds; /* Original Cmds arr */
305 struct iscsi_pool cmdpool; /* PDU's pool */ 305 struct iscsi_pool cmdpool; /* PDU's pool */
306 void *dd_data; /* LLD private data */
306}; 307};
307 308
308enum { 309enum {
@@ -363,7 +364,7 @@ extern int iscsi_target_alloc(struct scsi_target *starget);
363 */ 364 */
364extern struct iscsi_cls_session * 365extern struct iscsi_cls_session *
365iscsi_session_setup(struct iscsi_transport *, struct Scsi_Host *shost, 366iscsi_session_setup(struct iscsi_transport *, struct Scsi_Host *shost,
366 uint16_t, int, uint32_t, unsigned int); 367 uint16_t, int, int, uint32_t, unsigned int);
367extern void iscsi_session_teardown(struct iscsi_cls_session *); 368extern void iscsi_session_teardown(struct iscsi_cls_session *);
368extern void iscsi_session_recovery_timedout(struct iscsi_cls_session *); 369extern void iscsi_session_recovery_timedout(struct iscsi_cls_session *);
369extern int iscsi_set_param(struct iscsi_cls_conn *cls_conn, 370extern int iscsi_set_param(struct iscsi_cls_conn *cls_conn,
diff --git a/include/scsi/scsi.h b/include/scsi/scsi.h
index 084478e14d24..34c46ab5c31b 100644
--- a/include/scsi/scsi.h
+++ b/include/scsi/scsi.h
@@ -129,6 +129,9 @@ struct scsi_cmnd;
129#define MI_REPORT_TARGET_PGS 0x0a 129#define MI_REPORT_TARGET_PGS 0x0a
130/* values for maintenance out */ 130/* values for maintenance out */
131#define MO_SET_TARGET_PGS 0x0a 131#define MO_SET_TARGET_PGS 0x0a
132/* values for variable length command */
133#define READ_32 0x09
134#define WRITE_32 0x0b
132 135
133/* Values for T10/04-262r7 */ 136/* Values for T10/04-262r7 */
134#define ATA_16 0x85 /* 16-byte pass-thru */ 137#define ATA_16 0x85 /* 16-byte pass-thru */
diff --git a/include/scsi/scsi_cmnd.h b/include/scsi/scsi_cmnd.h
index 3878d1dc7f59..a5e885a111df 100644
--- a/include/scsi/scsi_cmnd.h
+++ b/include/scsi/scsi_cmnd.h
@@ -229,10 +229,6 @@ enum scsi_prot_operations {
229 /* OS-HBA: Protected, HBA-Target: Protected */ 229 /* OS-HBA: Protected, HBA-Target: Protected */
230 SCSI_PROT_READ_PASS, 230 SCSI_PROT_READ_PASS,
231 SCSI_PROT_WRITE_PASS, 231 SCSI_PROT_WRITE_PASS,
232
233 /* OS-HBA: Protected, HBA-Target: Protected, checksum conversion */
234 SCSI_PROT_READ_CONVERT,
235 SCSI_PROT_WRITE_CONVERT,
236}; 232};
237 233
238static inline void scsi_set_prot_op(struct scsi_cmnd *scmd, unsigned char op) 234static inline void scsi_set_prot_op(struct scsi_cmnd *scmd, unsigned char op)
diff --git a/include/scsi/scsi_host.h b/include/scsi/scsi_host.h
index b62a097b3ecb..6e728b176904 100644
--- a/include/scsi/scsi_host.h
+++ b/include/scsi/scsi_host.h
@@ -798,9 +798,15 @@ static inline unsigned int scsi_host_get_prot(struct Scsi_Host *shost)
798static inline unsigned int scsi_host_dif_capable(struct Scsi_Host *shost, unsigned int target_type) 798static inline unsigned int scsi_host_dif_capable(struct Scsi_Host *shost, unsigned int target_type)
799{ 799{
800 switch (target_type) { 800 switch (target_type) {
801 case 1: return shost->prot_capabilities & SHOST_DIF_TYPE1_PROTECTION; 801 case 1:
802 case 2: return shost->prot_capabilities & SHOST_DIF_TYPE2_PROTECTION; 802 if (shost->prot_capabilities & SHOST_DIF_TYPE1_PROTECTION)
803 case 3: return shost->prot_capabilities & SHOST_DIF_TYPE3_PROTECTION; 803 return target_type;
804 case 2:
805 if (shost->prot_capabilities & SHOST_DIF_TYPE2_PROTECTION)
806 return target_type;
807 case 3:
808 if (shost->prot_capabilities & SHOST_DIF_TYPE3_PROTECTION)
809 return target_type;
804 } 810 }
805 811
806 return 0; 812 return 0;
@@ -808,13 +814,14 @@ static inline unsigned int scsi_host_dif_capable(struct Scsi_Host *shost, unsign
808 814
809static inline unsigned int scsi_host_dix_capable(struct Scsi_Host *shost, unsigned int target_type) 815static inline unsigned int scsi_host_dix_capable(struct Scsi_Host *shost, unsigned int target_type)
810{ 816{
817#if defined(CONFIG_BLK_DEV_INTEGRITY)
811 switch (target_type) { 818 switch (target_type) {
812 case 0: return shost->prot_capabilities & SHOST_DIX_TYPE0_PROTECTION; 819 case 0: return shost->prot_capabilities & SHOST_DIX_TYPE0_PROTECTION;
813 case 1: return shost->prot_capabilities & SHOST_DIX_TYPE1_PROTECTION; 820 case 1: return shost->prot_capabilities & SHOST_DIX_TYPE1_PROTECTION;
814 case 2: return shost->prot_capabilities & SHOST_DIX_TYPE2_PROTECTION; 821 case 2: return shost->prot_capabilities & SHOST_DIX_TYPE2_PROTECTION;
815 case 3: return shost->prot_capabilities & SHOST_DIX_TYPE3_PROTECTION; 822 case 3: return shost->prot_capabilities & SHOST_DIX_TYPE3_PROTECTION;
816 } 823 }
817 824#endif
818 return 0; 825 return 0;
819} 826}
820 827