diff options
Diffstat (limited to 'include/linux')
-rw-r--r-- | include/linux/ac97_codec.h | 2 | ||||
-rw-r--r-- | include/linux/affs_fs.h | 1 | ||||
-rw-r--r-- | include/linux/in6.h | 14 | ||||
-rw-r--r-- | include/linux/input.h | 14 | ||||
-rw-r--r-- | include/linux/ioport.h | 1 | ||||
-rw-r--r-- | include/linux/irq.h | 23 | ||||
-rw-r--r-- | include/linux/mm.h | 1 | ||||
-rw-r--r-- | include/linux/netdevice.h | 39 | ||||
-rw-r--r-- | include/linux/netfilter.h | 66 | ||||
-rw-r--r-- | include/linux/netfilter_decnet.h | 6 | ||||
-rw-r--r-- | include/linux/netfilter_ipv4.h | 1 | ||||
-rw-r--r-- | include/linux/nfsd/nfsd.h | 5 | ||||
-rw-r--r-- | include/linux/nfsd/nfsfh.h | 62 | ||||
-rw-r--r-- | include/linux/pkt_sched.h | 10 | ||||
-rw-r--r-- | include/linux/pm.h | 6 | ||||
-rw-r--r-- | include/linux/udf_167.h | 3 | ||||
-rw-r--r-- | include/linux/udf_fs.h | 17 | ||||
-rw-r--r-- | include/linux/udf_fs_i.h | 3 | ||||
-rw-r--r-- | include/linux/udf_fs_sb.h | 3 |
19 files changed, 138 insertions, 139 deletions
diff --git a/include/linux/ac97_codec.h b/include/linux/ac97_codec.h index 68989d76d..7090e0625 100644 --- a/include/linux/ac97_codec.h +++ b/include/linux/ac97_codec.h @@ -1,6 +1,8 @@ #ifndef _AC97_CODEC_H_ #define _AC97_CODEC_H_ +#include <linux/types.h> +#include <linux/soundcard.h> /* AC97 1.0 */ #define AC97_RESET 0x0000 // diff --git a/include/linux/affs_fs.h b/include/linux/affs_fs.h index 10cd77b8d..ab3b8c078 100644 --- a/include/linux/affs_fs.h +++ b/include/linux/affs_fs.h @@ -104,6 +104,7 @@ extern void affs_dir_truncate(struct inode *); extern struct inode_operations affs_file_inode_operations; extern struct inode_operations affs_dir_inode_operations; +extern struct inode_operations affs_symlink_inode_operations; extern struct file_operations affs_file_operations; extern struct file_operations affs_file_operations_ofs; extern struct file_operations affs_dir_operations; diff --git a/include/linux/in6.h b/include/linux/in6.h index ca5e768ba..13eed62d6 100644 --- a/include/linux/in6.h +++ b/include/linux/in6.h @@ -56,9 +56,9 @@ struct sockaddr_in6 { __u16 sin6_port; /* Transport layer port # */ __u32 sin6_flowinfo; /* IPv6 flow information */ struct in6_addr sin6_addr; /* IPv6 address */ + __u32 sin6_scope_id; /* scope id (new in RFC2553) */ }; - struct ipv6_mreq { /* IPv6 multicast address of group */ struct in6_addr ipv6mr_multiaddr; @@ -157,18 +157,6 @@ struct in6_flowlabel_req #define IPV6_AUTHHDR 10 #define IPV6_FLOWINFO 11 -#if 0 -/* Aliases for obsolete names */ -#define IPV6_RXHOPOPTS IPV6_HOPOPTS -#define IPV6_RXDSTOPTS IPV6_DSTOPTS -#define IPV6_RXSRCRT IPV6_RTHDR -#endif - -/* - * Alternative names - */ -#define SCM_SRCRT IPV6_RXSRCRT - #define IPV6_UNICAST_HOPS 16 #define IPV6_MULTICAST_IF 17 #define IPV6_MULTICAST_HOPS 18 diff --git a/include/linux/input.h b/include/linux/input.h index e65ce8f45..d5b75700a 100644 --- a/include/linux/input.h +++ b/include/linux/input.h @@ -234,11 +234,15 @@ struct input_event { #define KEY_RECORD 167 #define KEY_REWIND 168 #define KEY_PHONE 169 + #define KEY_CONFIG 171 #define KEY_HOMEPAGE 172 #define KEY_REFRESH 173 #define KEY_EXIT 174 #define KEY_MOVE 175 +#define KEY_EDIT 176 +#define KEY_SCROLLUP 177 +#define KEY_SCROLLDOWN 178 #define KEY_UNKNOWN 180 @@ -339,7 +343,9 @@ struct input_event { #define ABS_HAT3Y 0x17 #define ABS_PRESSURE 0x18 #define ABS_DISTANCE 0x19 -#define ABS_MISC 0x1a +#define ABS_TILT_X 0x1a +#define ABS_TILT_Y 0x1b +#define ABS_MISC 0x1c #define ABS_MAX 0x1f /* @@ -442,11 +448,6 @@ struct input_handle { struct input_handle *hnext; }; -int keybdev_init(void); -int mousedev_init(void); -int joydev_init(void); -int evdev_init(void); - void input_register_device(struct input_dev *); void input_unregister_device(struct input_dev *); @@ -459,6 +460,7 @@ void input_close_device(struct input_handle *); void input_event(struct input_dev *dev, unsigned int type, unsigned int code, int value); #define input_report_key(a,b,c) input_event(a, EV_KEY, b, c) +#define input_report_btn(a,b,c) input_event(a, EV_KEY, b, !!(c)) #define input_report_rel(a,b,c) input_event(a, EV_REL, b, c) #define input_report_abs(a,b,c) input_event(a, EV_ABS, b, c) diff --git a/include/linux/ioport.h b/include/linux/ioport.h index 6c5349546..a24e7770a 100644 --- a/include/linux/ioport.h +++ b/include/linux/ioport.h @@ -78,6 +78,7 @@ extern struct resource iomem_resource; extern int get_resource_list(struct resource *, char *buf, int size); +extern int check_resource(struct resource *root, unsigned long, unsigned long); extern int request_resource(struct resource *root, struct resource *new); extern int release_resource(struct resource *new); extern int allocate_resource(struct resource *root, struct resource *new, diff --git a/include/linux/irq.h b/include/linux/irq.h index 4a6df60ae..7407d39db 100644 --- a/include/linux/irq.h +++ b/include/linux/irq.h @@ -26,7 +26,7 @@ struct hw_interrupt_type { void (*disable)(unsigned int irq); void (*ack)(unsigned int irq); void (*end)(unsigned int irq); - void (*set_affinity)(unsigned int irq, unsigned int mask); + void (*set_affinity)(unsigned int irq, unsigned long mask); }; typedef struct hw_interrupt_type hw_irq_controller; @@ -44,34 +44,19 @@ typedef struct { struct irqaction *action; /* IRQ action list */ unsigned int depth; /* nested irq disables */ spinlock_t lock; - unsigned int __pad[3]; } ____cacheline_aligned irq_desc_t; extern irq_desc_t irq_desc [NR_IRQS]; -typedef struct { - unsigned int __local_irq_count; - unsigned int __local_bh_count; - atomic_t __nmi_counter; - unsigned int __pad[5]; -} ____cacheline_aligned irq_cpustat_t; - -extern irq_cpustat_t irq_stat [NR_CPUS]; - -/* - * Simple wrappers reducing source bloat - */ -#define local_irq_count(cpu) (irq_stat[(cpu)].__local_irq_count) -#define local_bh_count(cpu) (irq_stat[(cpu)].__local_bh_count) -#define nmi_counter(cpu) (irq_stat[(cpu)].__nmi_counter) - #include <asm/hw_irq.h> /* the arch dependent stuff */ extern int handle_IRQ_event(unsigned int, struct pt_regs *, struct irqaction *); -extern spinlock_t irq_controller_lock; extern int setup_irq(unsigned int , struct irqaction * ); extern hw_irq_controller no_irq_type; /* needed in every arch ? */ +extern void no_action(int cpl, void *dev_id, struct pt_regs *regs); + +extern volatile unsigned long irq_err_count; #endif /* __asm_h */ diff --git a/include/linux/mm.h b/include/linux/mm.h index a01877f10..bcf872ade 100644 --- a/include/linux/mm.h +++ b/include/linux/mm.h @@ -400,7 +400,6 @@ extern void free_area_init_node(int nid, pg_data_t *pgdat, unsigned long * zones_size, unsigned long zone_start_paddr); extern void mem_init(void); extern void show_mem(void); -extern void oom(struct task_struct * tsk); extern void si_meminfo(struct sysinfo * val); extern void swapin_readahead(swp_entry_t); diff --git a/include/linux/netdevice.h b/include/linux/netdevice.h index 2c7103040..13d09502b 100644 --- a/include/linux/netdevice.h +++ b/include/linux/netdevice.h @@ -184,7 +184,8 @@ enum netdev_state_t __LINK_STATE_XOFF=0, __LINK_STATE_START, __LINK_STATE_PRESENT, - __LINK_STATE_SCHED + __LINK_STATE_SCHED, + __LINK_STATE_NOCARRIER }; @@ -287,6 +288,7 @@ struct net_device void *ip_ptr; /* IPv4 specific data */ void *dn_ptr; /* DECnet specific data */ void *ip6_ptr; /* IPv6 specific data */ + void *ec_ptr; /* Econet specific data */ struct Qdisc *qdisc; struct Qdisc *qdisc_sleeping; @@ -533,6 +535,30 @@ extern __inline__ void dev_put(struct net_device *dev) #define __dev_put(dev) atomic_dec(&(dev)->refcnt) #define dev_hold(dev) atomic_inc(&(dev)->refcnt) +/* Carrier loss detection, dial on demand. The functions netif_carrier_on + * and _off may be called from IRQ context, but it is caller + * who is responsible for serialization of these calls. + */ + +extern __inline__ int netif_carrier_ok(struct net_device *dev) +{ + return !test_bit(__LINK_STATE_NOCARRIER, &dev->state); +} + +extern void __netdev_watchdog_up(struct net_device *dev); + +extern __inline__ void netif_carrier_on(struct net_device *dev) +{ + clear_bit(__LINK_STATE_NOCARRIER, &dev->state); + if (netif_running(dev)) + __netdev_watchdog_up(dev); +} + +extern __inline__ void netif_carrier_off(struct net_device *dev) +{ + set_bit(__LINK_STATE_NOCARRIER, &dev->state); +} + /* Hot-plugging. */ extern __inline__ int netif_device_present(struct net_device *dev) { @@ -544,22 +570,15 @@ extern __inline__ void netif_device_detach(struct net_device *dev) if (test_and_clear_bit(__LINK_STATE_PRESENT, &dev->state) && netif_running(dev)) { netif_stop_queue(dev); - if (dev->tx_timeout && - del_timer(&dev->watchdog_timer)) - __dev_put(dev); } } extern __inline__ void netif_device_attach(struct net_device *dev) { - if (test_and_set_bit(__LINK_STATE_PRESENT, &dev->state) && + if (!test_and_set_bit(__LINK_STATE_PRESENT, &dev->state) && netif_running(dev)) { netif_wake_queue(dev); - if (dev->tx_timeout) { - dev->watchdog_timer.expires = jiffies + dev->watchdog_timeo; - add_timer(&dev->watchdog_timer); - dev_hold(dev); - } + __netdev_watchdog_up(dev); } } diff --git a/include/linux/netfilter.h b/include/linux/netfilter.h index dd55f2376..954229d6c 100644 --- a/include/linux/netfilter.h +++ b/include/linux/netfilter.h @@ -6,6 +6,7 @@ #include <linux/types.h> #include <linux/skbuff.h> #include <linux/net.h> +#include <linux/if.h> #include <linux/wait.h> #include <linux/list.h> #endif @@ -28,7 +29,7 @@ extern void netfilter_init(void); /* Largest hook number + 1 */ -#define NF_MAX_HOOKS 5 +#define NF_MAX_HOOKS 8 struct sk_buff; struct net_device; @@ -39,19 +40,12 @@ typedef unsigned int nf_hookfn(unsigned int hooknum, const struct net_device *out, int (*okfn)(struct sk_buff *)); -typedef unsigned int nf_cacheflushfn(const void *packet, - const struct net_device *in, - const struct net_device *out, - u_int32_t packetcount, - u_int32_t bytecount); - struct nf_hook_ops { struct list_head list; /* User fills in from here down. */ nf_hookfn *hook; - nf_cacheflushfn *flush; int pf; int hooknum; /* Hooks are ordered in ascending priority. */ @@ -74,6 +68,19 @@ struct nf_sockopt_ops int (*get)(struct sock *sk, int optval, void *user, int *len); }; +/* Each queued (to userspace) skbuff has one of these. */ +struct nf_info +{ + /* The ops struct which sent us to userspace. */ + struct nf_hook_ops *elem; + + /* If we're sent to userspace, this keeps housekeeping info */ + int pf; + unsigned int hook; + struct net_device *indev, *outdev; + int (*okfn)(struct sk_buff *); +}; + /* Function to register/unregister hook points. */ int nf_register_hook(struct nf_hook_ops *reg); void nf_unregister_hook(struct nf_hook_ops *reg); @@ -85,7 +92,7 @@ void nf_unregister_sockopt(struct nf_sockopt_ops *reg); extern struct list_head nf_hooks[NPROTO][NF_MAX_HOOKS]; -/* Activate hook/flush; either okfn or kfree_skb called, unless a hook +/* Activate hook; either okfn or kfree_skb called, unless a hook returns NF_STOLEN (in which case, it's up to the hook to deal with the consequences). @@ -117,47 +124,20 @@ int nf_hook_slow(int pf, unsigned int hook, struct sk_buff *skb, struct net_device *indev, struct net_device *outdev, int (*okfn)(struct sk_buff *)); -void nf_cacheflush(int pf, unsigned int hook, const void *packet, - const struct net_device *indev, const struct net_device *outdev, - __u32 packetcount, __u32 bytecount); - /* Call setsockopt() */ int nf_setsockopt(struct sock *sk, int pf, int optval, char *opt, int len); int nf_getsockopt(struct sock *sk, int pf, int optval, char *opt, int *len); -struct nf_wakeme -{ - wait_queue_head_t sleep; - struct sk_buff_head skbq; -}; - -/* For netfilter device. */ -struct nf_interest -{ - struct list_head list; - - int pf; - /* Bitmask of hook numbers to match (1 << hooknum). */ - unsigned int hookmask; - /* If non-zero, only catch packets with this mark. */ - unsigned int mark; - /* If non-zero, only catch packets of this reason. */ - unsigned int reason; - - struct nf_wakeme *wake; -}; - -/* For asynchronous packet handling. */ -extern void nf_register_interest(struct nf_interest *interest); -extern void nf_unregister_interest(struct nf_interest *interest); -extern void nf_getinfo(const struct sk_buff *skb, - struct net_device **indev, - struct net_device **outdev, - unsigned long *mark); +/* Packet queuing */ +typedef int (*nf_queue_outfn_t)(struct sk_buff *skb, + struct nf_info *info, void *data); +extern int nf_register_queue_handler(int pf, + nf_queue_outfn_t outfn, void *data); +extern int nf_unregister_queue_handler(int pf); extern void nf_reinject(struct sk_buff *skb, - unsigned long mark, + struct nf_info *info, unsigned int verdict); #ifdef CONFIG_NETFILTER_DEBUG diff --git a/include/linux/netfilter_decnet.h b/include/linux/netfilter_decnet.h index 04b122441..2f8704f02 100644 --- a/include/linux/netfilter_decnet.h +++ b/include/linux/netfilter_decnet.h @@ -30,6 +30,10 @@ #define NF_DN_LOCAL_OUT 3 /* Packets about to hit the wire. */ #define NF_DN_POST_ROUTING 4 -#define NF_DN_NUMHOOKS 5 +/* Input Hello Packets */ +#define NF_DN_HELLO 5 +/* Input Routing Packets */ +#define NF_DN_ROUTE 6 +#define NF_DN_NUMHOOKS 7 #endif /*__LINUX_DECNET_NETFILTER_H*/ diff --git a/include/linux/netfilter_ipv4.h b/include/linux/netfilter_ipv4.h index 12996c14d..6111c47d8 100644 --- a/include/linux/netfilter_ipv4.h +++ b/include/linux/netfilter_ipv4.h @@ -51,7 +51,6 @@ #ifdef CONFIG_NETFILTER_DEBUG #ifdef __KERNEL__ -void debug_print_hooks_ip(unsigned int nf_debug); void nf_debug_ip_local_deliver(struct sk_buff *skb); void nf_debug_ip_loopback_xmit(struct sk_buff *newskb); void nf_debug_ip_finish_output2(struct sk_buff *skb); diff --git a/include/linux/nfsd/nfsd.h b/include/linux/nfsd/nfsd.h index 5b3c3860c..d71a6923b 100644 --- a/include/linux/nfsd/nfsd.h +++ b/include/linux/nfsd/nfsd.h @@ -36,8 +36,9 @@ #define MAY_SATTR 8 #define MAY_TRUNC 16 #define MAY_LOCK 32 -#if (MAY_SATTR | MAY_TRUNC | MAY_LOCK) & (MAY_READ | MAY_WRITE | MAY_EXEC) -# error "please use a different value for MAY_SATTR or MAY_TRUNC or MAY_LOCK." +#define MAY_OWNER_OVERRIDE 64 +#if (MAY_SATTR | MAY_TRUNC | MAY_LOCK | MAX_OWNER_OVERRIDE) & (MAY_READ | MAY_WRITE | MAY_EXEC | MAY_OWNER_OVERRIDE) +# error "please use a different value for MAY_SATTR or MAY_TRUNC or MAY_LOCK or MAY_OWNER_OVERRIDE." #endif #define MAY_CREATE (MAY_EXEC|MAY_WRITE) #define MAY_REMOVE (MAY_EXEC|MAY_WRITE|MAY_TRUNC) diff --git a/include/linux/nfsd/nfsfh.h b/include/linux/nfsd/nfsfh.h index ac73ca409..20e850ec5 100644 --- a/include/linux/nfsd/nfsfh.h +++ b/include/linux/nfsd/nfsfh.h @@ -161,16 +161,16 @@ fh_init(struct svc_fh *fhp) static inline void fill_pre_wcc(struct svc_fh *fhp) { - struct inode *inode; - - inode = fhp->fh_dentry->d_inode; - if (!fhp->fh_pre_saved) { - fhp->fh_pre_mtime = inode->i_mtime; - fhp->fh_pre_ctime = inode->i_ctime; - fhp->fh_pre_size = inode->i_size; - fhp->fh_pre_saved = 1; - } - fhp->fh_locked = 1; + struct inode *inode; + + inode = fhp->fh_dentry->d_inode; + if (!fhp->fh_pre_saved) { + fhp->fh_pre_mtime = inode->i_mtime; + fhp->fh_pre_ctime = inode->i_ctime; + fhp->fh_pre_size = inode->i_size; + fhp->fh_pre_saved = 1; + } + fhp->fh_locked = 1; } /* @@ -179,24 +179,30 @@ fill_pre_wcc(struct svc_fh *fhp) static inline void fill_post_wcc(struct svc_fh *fhp) { - struct inode *inode = fhp->fh_dentry->d_inode; - - if (fhp->fh_post_saved) - printk("nfsd: inode locked twice during operation.\n"); - - fhp->fh_post_mode = inode->i_mode; - fhp->fh_post_nlink = inode->i_nlink; - fhp->fh_post_uid = inode->i_uid; - fhp->fh_post_gid = inode->i_gid; - fhp->fh_post_size = inode->i_size; - fhp->fh_post_blksize = inode->i_blksize; - fhp->fh_post_blocks = inode->i_blocks; - fhp->fh_post_rdev = inode->i_rdev; - fhp->fh_post_atime = inode->i_atime; - fhp->fh_post_mtime = inode->i_mtime; - fhp->fh_post_ctime = inode->i_ctime; - fhp->fh_post_saved = 1; - fhp->fh_locked = 0; + struct inode *inode = fhp->fh_dentry->d_inode; + + if (fhp->fh_post_saved) + printk("nfsd: inode locked twice during operation.\n"); + + fhp->fh_post_mode = inode->i_mode; + fhp->fh_post_nlink = inode->i_nlink; + fhp->fh_post_uid = inode->i_uid; + fhp->fh_post_gid = inode->i_gid; + fhp->fh_post_size = inode->i_size; + if (inode->i_blksize) { + fhp->fh_post_blksize = inode->i_blksize; + fhp->fh_post_blocks = inode->i_blocks; + } else { + fhp->fh_post_blksize = BLOCK_SIZE; + /* how much do we care for accuracy with MinixFS? */ + fhp->fh_post_blocks = (inode->i_size+511) >> 9; + } + fhp->fh_post_rdev = inode->i_rdev; + fhp->fh_post_atime = inode->i_atime; + fhp->fh_post_mtime = inode->i_mtime; + fhp->fh_post_ctime = inode->i_ctime; + fhp->fh_post_saved = 1; + fhp->fh_locked = 0; } #endif /* CONFIG_NFSD_V3 */ diff --git a/include/linux/pkt_sched.h b/include/linux/pkt_sched.h index 6b9fcbc47..06a263d94 100644 --- a/include/linux/pkt_sched.h +++ b/include/linux/pkt_sched.h @@ -192,6 +192,16 @@ struct tc_red_qopt unsigned char Wlog; /* log(W) */ unsigned char Plog; /* log(P_max/(qth_max-qth_min)) */ unsigned char Scell_log; /* cell size for idle damping */ + unsigned char flags; +#define TC_RED_ECN 1 +}; + +struct tc_red_xstats +{ + __u32 early; /* Early drops */ + __u32 pdrop; /* Drops due to queue limits */ + __u32 other; /* Drops due to drop() calls */ + __u32 marked; /* Marked packets */ }; /* GRED section */ diff --git a/include/linux/pm.h b/include/linux/pm.h index 4d0a950a9..1a4205a9d 100644 --- a/include/linux/pm.h +++ b/include/linux/pm.h @@ -106,7 +106,7 @@ struct pm_dev struct list_head entry; }; -#if defined(CONFIG_ACPI) || defined(CONFIG_APM) || defined(CONFIG_APM_MODULE) +#ifdef CONFIG_PM extern int pm_active; @@ -147,7 +147,7 @@ struct pm_dev *pm_find(pm_dev_t type, struct pm_dev *from); extern inline void pm_access(struct pm_dev *dev) {} extern inline void pm_dev_idle(struct pm_dev *dev) {} -#else /* CONFIG_ACPI || CONFIG_APM || CONFIG_APM_MODULE */ +#else /* CONFIG_PM */ #define PM_IS_ACTIVE() 0 @@ -180,7 +180,7 @@ extern inline struct pm_dev *pm_find(pm_dev_t type, struct pm_dev *from) extern inline void pm_access(struct pm_dev *dev) {} extern inline void pm_dev_idle(struct pm_dev *dev) {} -#endif /* CONFIG_ACPI || CONFIG_APM || CONFIG_APM_MODULE */ +#endif /* CONFIG_PM */ extern void (*pm_idle)(void); extern void (*pm_power_off)(void); diff --git a/include/linux/udf_167.h b/include/linux/udf_167.h index 19b3aa8e2..ee09bd9ad 100644 --- a/include/linux/udf_167.h +++ b/include/linux/udf_167.h @@ -390,13 +390,10 @@ struct LogicalVolIntegrityDesc { #define INTEGRITY_TYPE_CLOSE 1 /* Recorded Address (ECMA 167 4/7.1) */ -#ifndef _LINUX_UDF_FS_I_H -/* Declared in udf_fs_i.h */ typedef struct { Uint32 logicalBlockNum; Uint16 partitionReferenceNum; } lb_addr; -#endif /* Extent interpretation (ECMA 167 4/14.14.1.1) */ #define EXTENT_RECORDED_ALLOCATED 0x00 diff --git a/include/linux/udf_fs.h b/include/linux/udf_fs.h index 162823404..47980eaaf 100644 --- a/include/linux/udf_fs.h +++ b/include/linux/udf_fs.h @@ -29,10 +29,6 @@ * * HISTORY * - * 10/02/98 dgb rearranged all headers - * 11/26/98 blf added byte order macros - * 12/05/98 dgb removed other includes to reduce kernel namespace pollution. - * This should only be included by the kernel now! */ #if !defined(_LINUX_UDF_FS_H) @@ -40,10 +36,10 @@ #define UDF_PREALLOCATE #define UDF_DEFAULT_PREALLOC_BLOCKS 8 -#define UDF_DEFAULT_PREALLOC_DIR_BLOCKS 0 -#define UDFFS_DATE "2000/01/17" -#define UDFFS_VERSION "0.9.0" +#define UDFFS_DATE "2000/02/29" +#define UDFFS_VERSION "0.9.1" + #define UDFFS_DEBUG #ifdef UDFFS_DEBUG @@ -60,7 +56,12 @@ #define udf_info(f, a...) \ printk (KERN_INFO "UDF-fs INFO " ## f, ## a); -/* Prototype for fs/filesystem.c (the only thing really required in this file) */ +#ifdef __KERNEL__ +/* + * Function prototypes (all other prototypes included in udfdecl.h) + */ extern int init_udf_fs(void); +#endif /* __KERNEL__ */ + #endif /* !defined(_LINUX_UDF_FS_H) */ diff --git a/include/linux/udf_fs_i.h b/include/linux/udf_fs_i.h index a4bf4ba34..cd816d56b 100644 --- a/include/linux/udf_fs_i.h +++ b/include/linux/udf_fs_i.h @@ -43,7 +43,8 @@ struct udf_inode_info unsigned i_alloc_type : 3; unsigned i_extended_fe : 1; unsigned i_strat_4096 : 1; - unsigned reserved : 27; + unsigned i_new_inode : 1; + unsigned reserved : 26; }; #endif diff --git a/include/linux/udf_fs_sb.h b/include/linux/udf_fs_sb.h index d160eed0a..15696cf33 100644 --- a/include/linux/udf_fs_sb.h +++ b/include/linux/udf_fs_sb.h @@ -96,6 +96,9 @@ struct udf_sb_info /* Fileset Info */ __u16 s_serialnum; + /* highest UDF revision we have recorded to this media */ + __u16 s_udfrev; + /* Miscellaneous flags */ __u32 s_flags; |