#include #include "ncp_fs_i.h" #include "ncp_fs_sb.h" #undef NCPFS_PARANOIA #ifdef NCPFS_PARANOIA #define ncp_vdbg(fmt, ...) \ pr_debug(fmt, ##__VA_ARGS__) #else #define ncp_vdbg(fmt, ...) \ do { \ if (0) \ pr_debug(fmt, ##__VA_ARGS__); \ } while (0) #endif #ifndef DEBUG_NCP #define DEBUG_NCP 0 #endif #if DEBUG_NCP > 0 && !defined(DEBUG) #define DEBUG #endif #define ncp_dbg(level, fmt, ...) \ do { \ if (level <= DEBUG_NCP) \ pr_debug(fmt, ##__VA_ARGS__); \ } while (0) #define NCP_MAX_RPC_TIMEOUT (6*HZ) struct ncp_entry_info { struct nw_info_struct i; ino_t ino; int opened; int access; unsigned int volume; __u8 file_handle[6]; }; static inline struct ncp_server *NCP_SBP(const struct super_block *sb) { return sb->s_fs_info; } #define NCP_SERVER(inode) NCP_SBP((inode)->i_sb) static inline struct ncp_inode_info *NCP_FINFO(const struct inode *inode) { return container_of(inode, struct ncp_inode_info, vfs_inode); } /* linux/fs/ncpfs/inode.c */ int ncp_notify_change(struct dentry *, struct iattr *); struct inode *ncp_iget(struct super_block *, struct ncp_entry_info *); void ncp_update_inode(struct inode *, struct ncp_entry_info *); void ncp_update_inode2(struct inode *, struct ncp_entry_info *); /* linux/fs/ncpfs/dir.c */ extern const struct inode_operations ncp_dir_inode_operations; extern const struct file_operations ncp_dir_operations; extern const struct dentry_operations ncp_dentry_operations; int ncp_conn_logged_in(struct super_block *); int ncp_date_dos2unix(__le16 time, __le16 date); void ncp_date_unix2dos(int unix_date, __le16 * time, __le16 * date); /* linux/fs/ncpfs/ioctl.c */ long ncp_ioctl(struct file *, unsigned int, unsigned long); long ncp_compat_ioctl(struct file *, unsigned int, unsigned long); /* linux/fs/ncpfs/sock.c */ int ncp_request2(struct ncp_server *server, int function, void* reply, int max_reply_size); static inline int ncp_request(struct ncp_server *server, int function) { return ncp_request2(server, function, server->packet, server->packet_size); } int ncp_connect(struct ncp_server *server); int ncp_disconnect(struct ncp_server *server); void ncp_lock_server(struct ncp_server *server); void ncp_unlock_server(struct ncp_server *server); /* linux/fs/ncpfs/symlink.c */ #if defined(CONFIG_NCPFS_EXTRAS) || defined(CONFIG_NCPFS_NFS_NS) extern const struct address_space_operations ncp_symlink_aops; int ncp_symlink(struct inode*, struct dentry*, const char*); #endif /* linux/fs/ncpfs/file.c */ extern const struct inode_operations ncp_file_inode_operations; extern const struct file_operations ncp_file_operations; int ncp_make_open(struct inode *, int); /* linux/fs/ncpfs/mmap.c */ int ncp_mmap(struct file *, struct vm_area_struct *); /* linux/fs/ncpfs/ncplib_kernel.c */ int ncp_make_closed(struct inode *); #include "ncplib_kernel.h" clude/dt-bindings/clock
diff options
context:
space:
mode:
authorRuslan Ruslichenko <rruslich@cisco.com>2017-01-17 16:13:52 +0200
committerThomas Gleixner <tglx@linutronix.de>2017-01-18 15:37:28 +0100
commit020eb3daaba2857b32c4cf4c82f503d6a00a67de (patch)
tree329a05b424d783db675a4c711bd7633575e8181b /include/dt-bindings/clock
parent49def1853334396f948dcb4cedb9347abb318df5 (diff)
x86/ioapic: Restore IO-APIC irq_chip retrigger callback
commit d32932d02e18 removed the irq_retrigger callback from the IO-APIC chip and did not add it to the new IO-APIC-IR irq chip. Unfortunately the software resend fallback is not enabled on X86, so edge interrupts which are received during the lazy disabled state of the interrupt line are not retriggered and therefor lost. Restore the callbacks. [ tglx: Massaged changelog ] Fixes: d32932d02e18 ("x86/irq: Convert IOAPIC to use hierarchical irqdomain interfaces") Signed-off-by: Ruslan Ruslichenko <rruslich@cisco.com> Cc: xe-linux-external@cisco.com Cc: stable@vger.kernel.org Link: http://lkml.kernel.org/r/1484662432-13580-1-git-send-email-rruslich@cisco.com Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Diffstat (limited to 'include/dt-bindings/clock')