diff options
| author | Steve French <sfrench@us.ibm.com> | 2008-04-15 14:38:29 -0400 |
|---|---|---|
| committer | Steve French <sfrench@us.ibm.com> | 2008-04-15 14:38:29 -0400 |
| commit | e48d199ba10bb8267f491a3a585ca4a833e950a4 (patch) | |
| tree | c7d308a42479c8f21aaef889abfa004b0f1bb482 /include/linux | |
| parent | cce246ee5f3c7f4d3539ea41d13feb7a07859145 (diff) | |
| parent | 0de19a456cb59106420864927fdec152310f70b6 (diff) | |
Merge branch 'master' of /pub/scm/linux/kernel/git/torvalds/linux-2.6
Diffstat (limited to 'include/linux')
| -rw-r--r-- | include/linux/Kbuild | 2 | ||||
| -rw-r--r-- | include/linux/cgroup.h | 1 | ||||
| -rw-r--r-- | include/linux/hpet.h | 2 | ||||
| -rw-r--r-- | include/linux/if_tun.h | 39 | ||||
| -rw-r--r-- | include/linux/ipv6.h | 2 | ||||
| -rw-r--r-- | include/linux/libata.h | 25 | ||||
| -rw-r--r-- | include/linux/linkage.h | 20 | ||||
| -rw-r--r-- | include/linux/pnp.h | 2 | ||||
| -rw-r--r-- | include/linux/spinlock.h | 3 | ||||
| -rw-r--r-- | include/linux/virtio.h | 5 |
10 files changed, 33 insertions, 68 deletions
diff --git a/include/linux/Kbuild b/include/linux/Kbuild index 9cdd12a9e843..cedbbd806bf6 100644 --- a/include/linux/Kbuild +++ b/include/linux/Kbuild | |||
| @@ -86,6 +86,7 @@ header-y += if_plip.h | |||
| 86 | header-y += if_ppp.h | 86 | header-y += if_ppp.h |
| 87 | header-y += if_slip.h | 87 | header-y += if_slip.h |
| 88 | header-y += if_strip.h | 88 | header-y += if_strip.h |
| 89 | header-y += if_tun.h | ||
| 89 | header-y += if_tunnel.h | 90 | header-y += if_tunnel.h |
| 90 | header-y += in6.h | 91 | header-y += in6.h |
| 91 | header-y += in_route.h | 92 | header-y += in_route.h |
| @@ -229,7 +230,6 @@ unifdef-y += if_link.h | |||
| 229 | unifdef-y += if_pppol2tp.h | 230 | unifdef-y += if_pppol2tp.h |
| 230 | unifdef-y += if_pppox.h | 231 | unifdef-y += if_pppox.h |
| 231 | unifdef-y += if_tr.h | 232 | unifdef-y += if_tr.h |
| 232 | unifdef-y += if_tun.h | ||
| 233 | unifdef-y += if_vlan.h | 233 | unifdef-y += if_vlan.h |
| 234 | unifdef-y += if_wanpipe.h | 234 | unifdef-y += if_wanpipe.h |
| 235 | unifdef-y += igmp.h | 235 | unifdef-y += igmp.h |
diff --git a/include/linux/cgroup.h b/include/linux/cgroup.h index 028ba3b523b1..a6a6035a4e1e 100644 --- a/include/linux/cgroup.h +++ b/include/linux/cgroup.h | |||
| @@ -256,6 +256,7 @@ struct cgroup_subsys { | |||
| 256 | void (*bind)(struct cgroup_subsys *ss, struct cgroup *root); | 256 | void (*bind)(struct cgroup_subsys *ss, struct cgroup *root); |
| 257 | int subsys_id; | 257 | int subsys_id; |
| 258 | int active; | 258 | int active; |
| 259 | int disabled; | ||
| 259 | int early_init; | 260 | int early_init; |
| 260 | #define MAX_CGROUP_TYPE_NAMELEN 32 | 261 | #define MAX_CGROUP_TYPE_NAMELEN 32 |
| 261 | const char *name; | 262 | const char *name; |
diff --git a/include/linux/hpet.h b/include/linux/hpet.h index 9cd94bfd07e5..2dc29ce6c8e4 100644 --- a/include/linux/hpet.h +++ b/include/linux/hpet.h | |||
| @@ -64,7 +64,7 @@ struct hpet { | |||
| 64 | */ | 64 | */ |
| 65 | 65 | ||
| 66 | #define Tn_INT_ROUTE_CAP_MASK (0xffffffff00000000ULL) | 66 | #define Tn_INT_ROUTE_CAP_MASK (0xffffffff00000000ULL) |
| 67 | #define Tn_INT_ROUTE_CAP_SHIFT (32UL) | 67 | #define Tn_INI_ROUTE_CAP_SHIFT (32UL) |
| 68 | #define Tn_FSB_INT_DELCAP_MASK (0x8000UL) | 68 | #define Tn_FSB_INT_DELCAP_MASK (0x8000UL) |
| 69 | #define Tn_FSB_INT_DELCAP_SHIFT (15) | 69 | #define Tn_FSB_INT_DELCAP_SHIFT (15) |
| 70 | #define Tn_FSB_EN_CNF_MASK (0x4000UL) | 70 | #define Tn_FSB_EN_CNF_MASK (0x4000UL) |
diff --git a/include/linux/if_tun.h b/include/linux/if_tun.h index 72f1c5f47be3..8c71fe2fb1f5 100644 --- a/include/linux/if_tun.h +++ b/include/linux/if_tun.h | |||
| @@ -18,47 +18,8 @@ | |||
| 18 | #ifndef __IF_TUN_H | 18 | #ifndef __IF_TUN_H |
| 19 | #define __IF_TUN_H | 19 | #define __IF_TUN_H |
| 20 | 20 | ||
| 21 | /* Uncomment to enable debugging */ | ||
| 22 | /* #define TUN_DEBUG 1 */ | ||
| 23 | |||
| 24 | #include <linux/types.h> | 21 | #include <linux/types.h> |
| 25 | 22 | ||
| 26 | #ifdef __KERNEL__ | ||
| 27 | |||
| 28 | #ifdef TUN_DEBUG | ||
| 29 | #define DBG if(tun->debug)printk | ||
| 30 | #define DBG1 if(debug==2)printk | ||
| 31 | #else | ||
| 32 | #define DBG( a... ) | ||
| 33 | #define DBG1( a... ) | ||
| 34 | #endif | ||
| 35 | |||
| 36 | struct tun_struct { | ||
| 37 | struct list_head list; | ||
| 38 | unsigned long flags; | ||
| 39 | int attached; | ||
| 40 | uid_t owner; | ||
| 41 | gid_t group; | ||
| 42 | |||
| 43 | wait_queue_head_t read_wait; | ||
| 44 | struct sk_buff_head readq; | ||
| 45 | |||
| 46 | struct net_device *dev; | ||
| 47 | |||
| 48 | struct fasync_struct *fasync; | ||
| 49 | |||
| 50 | unsigned long if_flags; | ||
| 51 | u8 dev_addr[ETH_ALEN]; | ||
| 52 | u32 chr_filter[2]; | ||
| 53 | u32 net_filter[2]; | ||
| 54 | |||
| 55 | #ifdef TUN_DEBUG | ||
| 56 | int debug; | ||
| 57 | #endif | ||
| 58 | }; | ||
| 59 | |||
| 60 | #endif /* __KERNEL__ */ | ||
| 61 | |||
| 62 | /* Read queue size */ | 23 | /* Read queue size */ |
| 63 | #define TUN_READQ_SIZE 500 | 24 | #define TUN_READQ_SIZE 500 |
| 64 | 25 | ||
diff --git a/include/linux/ipv6.h b/include/linux/ipv6.h index 4aaefc349a4b..134c8e5cf07c 100644 --- a/include/linux/ipv6.h +++ b/include/linux/ipv6.h | |||
| @@ -53,7 +53,7 @@ struct ipv6_opt_hdr { | |||
| 53 | /* | 53 | /* |
| 54 | * TLV encoded option data follows. | 54 | * TLV encoded option data follows. |
| 55 | */ | 55 | */ |
| 56 | }; | 56 | } __attribute__ ((packed)); /* required for some archs */ |
| 57 | 57 | ||
| 58 | #define ipv6_destopt_hdr ipv6_opt_hdr | 58 | #define ipv6_destopt_hdr ipv6_opt_hdr |
| 59 | #define ipv6_hopopt_hdr ipv6_opt_hdr | 59 | #define ipv6_hopopt_hdr ipv6_opt_hdr |
diff --git a/include/linux/libata.h b/include/linux/libata.h index b064bfeb69ee..37ee881c42ac 100644 --- a/include/linux/libata.h +++ b/include/linux/libata.h | |||
| @@ -350,7 +350,8 @@ enum { | |||
| 350 | ATAPI_READ = 0, /* READs */ | 350 | ATAPI_READ = 0, /* READs */ |
| 351 | ATAPI_WRITE = 1, /* WRITEs */ | 351 | ATAPI_WRITE = 1, /* WRITEs */ |
| 352 | ATAPI_READ_CD = 2, /* READ CD [MSF] */ | 352 | ATAPI_READ_CD = 2, /* READ CD [MSF] */ |
| 353 | ATAPI_MISC = 3, /* the rest */ | 353 | ATAPI_PASS_THRU = 3, /* SAT pass-thru */ |
| 354 | ATAPI_MISC = 4, /* the rest */ | ||
| 354 | }; | 355 | }; |
| 355 | 356 | ||
| 356 | enum ata_xfer_mask { | 357 | enum ata_xfer_mask { |
| @@ -849,6 +850,7 @@ extern unsigned int ata_dev_try_classify(struct ata_device *dev, int present, | |||
| 849 | */ | 850 | */ |
| 850 | extern void ata_tf_load(struct ata_port *ap, const struct ata_taskfile *tf); | 851 | extern void ata_tf_load(struct ata_port *ap, const struct ata_taskfile *tf); |
| 851 | extern void ata_tf_read(struct ata_port *ap, struct ata_taskfile *tf); | 852 | extern void ata_tf_read(struct ata_port *ap, struct ata_taskfile *tf); |
| 853 | extern int atapi_cmd_type(u8 opcode); | ||
| 852 | extern void ata_tf_to_fis(const struct ata_taskfile *tf, | 854 | extern void ata_tf_to_fis(const struct ata_taskfile *tf, |
| 853 | u8 pmp, int is_cmd, u8 *fis); | 855 | u8 pmp, int is_cmd, u8 *fis); |
| 854 | extern void ata_tf_from_fis(const u8 *fis, struct ata_taskfile *tf); | 856 | extern void ata_tf_from_fis(const u8 *fis, struct ata_taskfile *tf); |
| @@ -1379,27 +1381,6 @@ static inline int ata_try_flush_cache(const struct ata_device *dev) | |||
| 1379 | ata_id_has_flush_ext(dev->id); | 1381 | ata_id_has_flush_ext(dev->id); |
| 1380 | } | 1382 | } |
| 1381 | 1383 | ||
| 1382 | static inline int atapi_cmd_type(u8 opcode) | ||
| 1383 | { | ||
| 1384 | switch (opcode) { | ||
| 1385 | case GPCMD_READ_10: | ||
| 1386 | case GPCMD_READ_12: | ||
| 1387 | return ATAPI_READ; | ||
| 1388 | |||
| 1389 | case GPCMD_WRITE_10: | ||
| 1390 | case GPCMD_WRITE_12: | ||
| 1391 | case GPCMD_WRITE_AND_VERIFY_10: | ||
| 1392 | return ATAPI_WRITE; | ||
| 1393 | |||
| 1394 | case GPCMD_READ_CD: | ||
| 1395 | case GPCMD_READ_CD_MSF: | ||
| 1396 | return ATAPI_READ_CD; | ||
| 1397 | |||
| 1398 | default: | ||
| 1399 | return ATAPI_MISC; | ||
| 1400 | } | ||
| 1401 | } | ||
| 1402 | |||
| 1403 | static inline unsigned int ac_err_mask(u8 status) | 1384 | static inline unsigned int ac_err_mask(u8 status) |
| 1404 | { | 1385 | { |
| 1405 | if (status & (ATA_BUSY | ATA_DRQ)) | 1386 | if (status & (ATA_BUSY | ATA_DRQ)) |
diff --git a/include/linux/linkage.h b/include/linux/linkage.h index 0592936344c4..2119610b24f8 100644 --- a/include/linux/linkage.h +++ b/include/linux/linkage.h | |||
| @@ -17,8 +17,24 @@ | |||
| 17 | # define asmregparm | 17 | # define asmregparm |
| 18 | #endif | 18 | #endif |
| 19 | 19 | ||
| 20 | #ifndef prevent_tail_call | 20 | /* |
| 21 | # define prevent_tail_call(ret) do { } while (0) | 21 | * This is used by architectures to keep arguments on the stack |
| 22 | * untouched by the compiler by keeping them live until the end. | ||
| 23 | * The argument stack may be owned by the assembly-language | ||
| 24 | * caller, not the callee, and gcc doesn't always understand | ||
| 25 | * that. | ||
| 26 | * | ||
| 27 | * We have the return value, and a maximum of six arguments. | ||
| 28 | * | ||
| 29 | * This should always be followed by a "return ret" for the | ||
| 30 | * protection to work (ie no more work that the compiler might | ||
| 31 | * end up needing stack temporaries for). | ||
| 32 | */ | ||
| 33 | /* Assembly files may be compiled with -traditional .. */ | ||
| 34 | #ifndef __ASSEMBLY__ | ||
| 35 | #ifndef asmlinkage_protect | ||
| 36 | # define asmlinkage_protect(n, ret, args...) do { } while (0) | ||
| 37 | #endif | ||
| 22 | #endif | 38 | #endif |
| 23 | 39 | ||
| 24 | #ifndef __ALIGN | 40 | #ifndef __ALIGN |
diff --git a/include/linux/pnp.h b/include/linux/pnp.h index 29dd55838e84..b2f05c230f4b 100644 --- a/include/linux/pnp.h +++ b/include/linux/pnp.h | |||
| @@ -175,7 +175,7 @@ static inline void pnp_set_card_drvdata(struct pnp_card_link *pcard, void *data) | |||
| 175 | struct pnp_dev { | 175 | struct pnp_dev { |
| 176 | struct device dev; /* Driver Model device interface */ | 176 | struct device dev; /* Driver Model device interface */ |
| 177 | u64 dma_mask; | 177 | u64 dma_mask; |
| 178 | unsigned char number; /* used as an index, must be unique */ | 178 | unsigned int number; /* used as an index, must be unique */ |
| 179 | int status; | 179 | int status; |
| 180 | 180 | ||
| 181 | struct list_head global_list; /* node in global list of devices */ | 181 | struct list_head global_list; /* node in global list of devices */ |
diff --git a/include/linux/spinlock.h b/include/linux/spinlock.h index 576a5f77d3bd..1129ee0a7180 100644 --- a/include/linux/spinlock.h +++ b/include/linux/spinlock.h | |||
| @@ -341,6 +341,9 @@ static inline void double_spin_unlock(spinlock_t *l1, spinlock_t *l2, | |||
| 341 | * atomic_dec_and_lock - lock on reaching reference count zero | 341 | * atomic_dec_and_lock - lock on reaching reference count zero |
| 342 | * @atomic: the atomic counter | 342 | * @atomic: the atomic counter |
| 343 | * @lock: the spinlock in question | 343 | * @lock: the spinlock in question |
| 344 | * | ||
| 345 | * Decrements @atomic by 1. If the result is 0, returns true and locks | ||
| 346 | * @lock. Returns false for all other cases. | ||
| 344 | */ | 347 | */ |
| 345 | extern int _atomic_dec_and_lock(atomic_t *atomic, spinlock_t *lock); | 348 | extern int _atomic_dec_and_lock(atomic_t *atomic, spinlock_t *lock); |
| 346 | #define atomic_dec_and_lock(atomic, lock) \ | 349 | #define atomic_dec_and_lock(atomic, lock) \ |
diff --git a/include/linux/virtio.h b/include/linux/virtio.h index 12c18ac1b973..e7d10845b3c1 100644 --- a/include/linux/virtio.h +++ b/include/linux/virtio.h | |||
| @@ -41,6 +41,8 @@ struct virtqueue | |||
| 41 | * Returns NULL or the "data" token handed to add_buf. | 41 | * Returns NULL or the "data" token handed to add_buf. |
| 42 | * @disable_cb: disable callbacks | 42 | * @disable_cb: disable callbacks |
| 43 | * vq: the struct virtqueue we're talking about. | 43 | * vq: the struct virtqueue we're talking about. |
| 44 | * Note that this is not necessarily synchronous, hence unreliable and only | ||
| 45 | * useful as an optimization. | ||
| 44 | * @enable_cb: restart callbacks after disable_cb. | 46 | * @enable_cb: restart callbacks after disable_cb. |
| 45 | * vq: the struct virtqueue we're talking about. | 47 | * vq: the struct virtqueue we're talking about. |
| 46 | * This re-enables callbacks; it returns "false" if there are pending | 48 | * This re-enables callbacks; it returns "false" if there are pending |
| @@ -48,7 +50,8 @@ struct virtqueue | |||
| 48 | * checking for more work, and enabling callbacks. | 50 | * checking for more work, and enabling callbacks. |
| 49 | * | 51 | * |
| 50 | * Locking rules are straightforward: the driver is responsible for | 52 | * Locking rules are straightforward: the driver is responsible for |
| 51 | * locking. No two operations may be invoked simultaneously. | 53 | * locking. No two operations may be invoked simultaneously, with the exception |
| 54 | * of @disable_cb. | ||
| 52 | * | 55 | * |
| 53 | * All operations can be called in any context. | 56 | * All operations can be called in any context. |
| 54 | */ | 57 | */ |
