diff options
Diffstat (limited to 'include/linux')
-rw-r--r-- | include/linux/genetlink.h | 4 | ||||
-rw-r--r-- | include/linux/libata.h | 2 | ||||
-rw-r--r-- | include/linux/module.h | 2 | ||||
-rw-r--r-- | include/linux/moduleloader.h | 4 | ||||
-rw-r--r-- | include/linux/pci.h | 3 | ||||
-rw-r--r-- | include/linux/time.h | 13 |
6 files changed, 26 insertions, 2 deletions
diff --git a/include/linux/genetlink.h b/include/linux/genetlink.h index 55b685719d52..09460d6d6682 100644 --- a/include/linux/genetlink.h +++ b/include/linux/genetlink.h | |||
@@ -11,6 +11,10 @@ extern void genl_unlock(void); | |||
11 | extern int lockdep_genl_is_held(void); | 11 | extern int lockdep_genl_is_held(void); |
12 | #endif | 12 | #endif |
13 | 13 | ||
14 | /* for synchronisation between af_netlink and genetlink */ | ||
15 | extern atomic_t genl_sk_destructing_cnt; | ||
16 | extern wait_queue_head_t genl_sk_destructing_waitq; | ||
17 | |||
14 | /** | 18 | /** |
15 | * rcu_dereference_genl - rcu_dereference with debug checking | 19 | * rcu_dereference_genl - rcu_dereference with debug checking |
16 | * @p: The pointer to read, prior to dereferencing | 20 | * @p: The pointer to read, prior to dereferencing |
diff --git a/include/linux/libata.h b/include/linux/libata.h index 2d182413b1db..91f705de2c0b 100644 --- a/include/linux/libata.h +++ b/include/linux/libata.h | |||
@@ -231,6 +231,7 @@ enum { | |||
231 | ATA_FLAG_SW_ACTIVITY = (1 << 22), /* driver supports sw activity | 231 | ATA_FLAG_SW_ACTIVITY = (1 << 22), /* driver supports sw activity |
232 | * led */ | 232 | * led */ |
233 | ATA_FLAG_NO_DIPM = (1 << 23), /* host not happy with DIPM */ | 233 | ATA_FLAG_NO_DIPM = (1 << 23), /* host not happy with DIPM */ |
234 | ATA_FLAG_LOWTAG = (1 << 24), /* host wants lowest available tag */ | ||
234 | 235 | ||
235 | /* bits 24:31 of ap->flags are reserved for LLD specific flags */ | 236 | /* bits 24:31 of ap->flags are reserved for LLD specific flags */ |
236 | 237 | ||
@@ -422,6 +423,7 @@ enum { | |||
422 | ATA_HORKAGE_NO_NCQ_TRIM = (1 << 19), /* don't use queued TRIM */ | 423 | ATA_HORKAGE_NO_NCQ_TRIM = (1 << 19), /* don't use queued TRIM */ |
423 | ATA_HORKAGE_NOLPM = (1 << 20), /* don't use LPM */ | 424 | ATA_HORKAGE_NOLPM = (1 << 20), /* don't use LPM */ |
424 | ATA_HORKAGE_WD_BROKEN_LPM = (1 << 21), /* some WDs have broken LPM */ | 425 | ATA_HORKAGE_WD_BROKEN_LPM = (1 << 21), /* some WDs have broken LPM */ |
426 | ATA_HORKAGE_ZERO_AFTER_TRIM = (1 << 22),/* guarantees zero after trim */ | ||
425 | 427 | ||
426 | /* DMA mask for user DMA control: User visible values; DO NOT | 428 | /* DMA mask for user DMA control: User visible values; DO NOT |
427 | renumber */ | 429 | renumber */ |
diff --git a/include/linux/module.h b/include/linux/module.h index ebfb0e153c6a..b653d7c0a05a 100644 --- a/include/linux/module.h +++ b/include/linux/module.h | |||
@@ -444,7 +444,7 @@ extern void __module_put_and_exit(struct module *mod, long code) | |||
444 | #define module_put_and_exit(code) __module_put_and_exit(THIS_MODULE, code) | 444 | #define module_put_and_exit(code) __module_put_and_exit(THIS_MODULE, code) |
445 | 445 | ||
446 | #ifdef CONFIG_MODULE_UNLOAD | 446 | #ifdef CONFIG_MODULE_UNLOAD |
447 | unsigned long module_refcount(struct module *mod); | 447 | int module_refcount(struct module *mod); |
448 | void __symbol_put(const char *symbol); | 448 | void __symbol_put(const char *symbol); |
449 | #define symbol_put(x) __symbol_put(VMLINUX_SYMBOL_STR(x)) | 449 | #define symbol_put(x) __symbol_put(VMLINUX_SYMBOL_STR(x)) |
450 | void symbol_put_addr(void *addr); | 450 | void symbol_put_addr(void *addr); |
diff --git a/include/linux/moduleloader.h b/include/linux/moduleloader.h index 7eeb9bbfb816..f7556261fe3c 100644 --- a/include/linux/moduleloader.h +++ b/include/linux/moduleloader.h | |||
@@ -26,7 +26,7 @@ unsigned int arch_mod_section_prepend(struct module *mod, unsigned int section); | |||
26 | void *module_alloc(unsigned long size); | 26 | void *module_alloc(unsigned long size); |
27 | 27 | ||
28 | /* Free memory returned from module_alloc. */ | 28 | /* Free memory returned from module_alloc. */ |
29 | void module_free(struct module *mod, void *module_region); | 29 | void module_memfree(void *module_region); |
30 | 30 | ||
31 | /* | 31 | /* |
32 | * Apply the given relocation to the (simplified) ELF. Return -error | 32 | * Apply the given relocation to the (simplified) ELF. Return -error |
@@ -82,4 +82,6 @@ int module_finalize(const Elf_Ehdr *hdr, | |||
82 | /* Any cleanup needed when module leaves. */ | 82 | /* Any cleanup needed when module leaves. */ |
83 | void module_arch_cleanup(struct module *mod); | 83 | void module_arch_cleanup(struct module *mod); |
84 | 84 | ||
85 | /* Any cleanup before freeing mod->module_init */ | ||
86 | void module_arch_freeing_init(struct module *mod); | ||
85 | #endif | 87 | #endif |
diff --git a/include/linux/pci.h b/include/linux/pci.h index 360a966a97a5..9603094ed59b 100644 --- a/include/linux/pci.h +++ b/include/linux/pci.h | |||
@@ -175,6 +175,8 @@ enum pci_dev_flags { | |||
175 | PCI_DEV_FLAGS_DMA_ALIAS_DEVFN = (__force pci_dev_flags_t) (1 << 4), | 175 | PCI_DEV_FLAGS_DMA_ALIAS_DEVFN = (__force pci_dev_flags_t) (1 << 4), |
176 | /* Use a PCIe-to-PCI bridge alias even if !pci_is_pcie */ | 176 | /* Use a PCIe-to-PCI bridge alias even if !pci_is_pcie */ |
177 | PCI_DEV_FLAG_PCIE_BRIDGE_ALIAS = (__force pci_dev_flags_t) (1 << 5), | 177 | PCI_DEV_FLAG_PCIE_BRIDGE_ALIAS = (__force pci_dev_flags_t) (1 << 5), |
178 | /* Do not use bus resets for device */ | ||
179 | PCI_DEV_FLAGS_NO_BUS_RESET = (__force pci_dev_flags_t) (1 << 6), | ||
178 | }; | 180 | }; |
179 | 181 | ||
180 | enum pci_irq_reroute_variant { | 182 | enum pci_irq_reroute_variant { |
@@ -1065,6 +1067,7 @@ resource_size_t pcibios_retrieve_fw_addr(struct pci_dev *dev, int idx); | |||
1065 | void pci_bus_assign_resources(const struct pci_bus *bus); | 1067 | void pci_bus_assign_resources(const struct pci_bus *bus); |
1066 | void pci_bus_size_bridges(struct pci_bus *bus); | 1068 | void pci_bus_size_bridges(struct pci_bus *bus); |
1067 | int pci_claim_resource(struct pci_dev *, int); | 1069 | int pci_claim_resource(struct pci_dev *, int); |
1070 | int pci_claim_bridge_resource(struct pci_dev *bridge, int i); | ||
1068 | void pci_assign_unassigned_resources(void); | 1071 | void pci_assign_unassigned_resources(void); |
1069 | void pci_assign_unassigned_bridge_resources(struct pci_dev *bridge); | 1072 | void pci_assign_unassigned_bridge_resources(struct pci_dev *bridge); |
1070 | void pci_assign_unassigned_bus_resources(struct pci_bus *bus); | 1073 | void pci_assign_unassigned_bus_resources(struct pci_bus *bus); |
diff --git a/include/linux/time.h b/include/linux/time.h index 203c2ad40d71..beebe3a02d43 100644 --- a/include/linux/time.h +++ b/include/linux/time.h | |||
@@ -110,6 +110,19 @@ static inline bool timespec_valid_strict(const struct timespec *ts) | |||
110 | return true; | 110 | return true; |
111 | } | 111 | } |
112 | 112 | ||
113 | static inline bool timeval_valid(const struct timeval *tv) | ||
114 | { | ||
115 | /* Dates before 1970 are bogus */ | ||
116 | if (tv->tv_sec < 0) | ||
117 | return false; | ||
118 | |||
119 | /* Can't have more microseconds then a second */ | ||
120 | if (tv->tv_usec < 0 || tv->tv_usec >= USEC_PER_SEC) | ||
121 | return false; | ||
122 | |||
123 | return true; | ||
124 | } | ||
125 | |||
113 | extern struct timespec timespec_trunc(struct timespec t, unsigned gran); | 126 | extern struct timespec timespec_trunc(struct timespec t, unsigned gran); |
114 | 127 | ||
115 | #define CURRENT_TIME (current_kernel_time()) | 128 | #define CURRENT_TIME (current_kernel_time()) |