diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2013-09-07 17:31:18 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2013-09-07 17:31:18 -0400 |
commit | 6be48f2940af9ea8d93c23a0dd8e322672c92efd (patch) | |
tree | 1bdc85a9d3fd0c19e108ea27a29a83ef2b44f5d0 /kernel | |
parent | 0ffb01d9def22f1954e99529b7e4ded497b2e88b (diff) | |
parent | 68411521cc6055edc6274e03ab3210a5893533ba (diff) |
Merge git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6
Pull crypto update from Herbert Xu:
"Here is the crypto update for 3.12:
- Added MODULE_SOFTDEP to allow pre-loading of modules.
- Reinstated crct10dif driver using the module softdep feature.
- Allow via rng driver to be auto-loaded.
- Split large input data when necessary in nx.
- Handle zero length messages correctly for GCM/XCBC in nx.
- Handle SHA-2 chunks bigger than block size properly in nx.
- Handle unaligned lengths in omap-aes.
- Added SHA384/SHA512 to omap-sham.
- Added OMAP5/AM43XX SHAM support.
- Added OMAP4 TRNG support.
- Misc fixes"
* git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6: (66 commits)
Reinstate "crypto: crct10dif - Wrap crc_t10dif function all to use crypto transform framework"
hwrng: via - Add MODULE_DEVICE_TABLE
crypto: fcrypt - Fix bitoperation for compilation with clang
crypto: nx - fix SHA-2 for chunks bigger than block size
crypto: nx - fix GCM for zero length messages
crypto: nx - fix XCBC for zero length messages
crypto: nx - fix limits to sg lists for AES-CCM
crypto: nx - fix limits to sg lists for AES-XCBC
crypto: nx - fix limits to sg lists for AES-GCM
crypto: nx - fix limits to sg lists for AES-CTR
crypto: nx - fix limits to sg lists for AES-CBC
crypto: nx - fix limits to sg lists for AES-ECB
crypto: nx - add offset to nx_build_sg_lists()
padata - Register hotcpu notifier after initialization
padata - share code between CPU_ONLINE and CPU_DOWN_FAILED, same to CPU_DOWN_PREPARE and CPU_UP_CANCELED
hwrng: omap - reorder OMAP TRNG driver code
crypto: omap-sham - correct dma burst size
crypto: omap-sham - Enable Polling mode if DMA fails
crypto: tegra-aes - bitwise vs logical and
crypto: sahara - checking the wrong variable
...
Diffstat (limited to 'kernel')
-rw-r--r-- | kernel/padata.c | 32 |
1 files changed, 10 insertions, 22 deletions
diff --git a/kernel/padata.c b/kernel/padata.c index 072f4ee4eb89..07af2c95dcfe 100644 --- a/kernel/padata.c +++ b/kernel/padata.c | |||
@@ -846,6 +846,8 @@ static int padata_cpu_callback(struct notifier_block *nfb, | |||
846 | switch (action) { | 846 | switch (action) { |
847 | case CPU_ONLINE: | 847 | case CPU_ONLINE: |
848 | case CPU_ONLINE_FROZEN: | 848 | case CPU_ONLINE_FROZEN: |
849 | case CPU_DOWN_FAILED: | ||
850 | case CPU_DOWN_FAILED_FROZEN: | ||
849 | if (!pinst_has_cpu(pinst, cpu)) | 851 | if (!pinst_has_cpu(pinst, cpu)) |
850 | break; | 852 | break; |
851 | mutex_lock(&pinst->lock); | 853 | mutex_lock(&pinst->lock); |
@@ -857,6 +859,8 @@ static int padata_cpu_callback(struct notifier_block *nfb, | |||
857 | 859 | ||
858 | case CPU_DOWN_PREPARE: | 860 | case CPU_DOWN_PREPARE: |
859 | case CPU_DOWN_PREPARE_FROZEN: | 861 | case CPU_DOWN_PREPARE_FROZEN: |
862 | case CPU_UP_CANCELED: | ||
863 | case CPU_UP_CANCELED_FROZEN: | ||
860 | if (!pinst_has_cpu(pinst, cpu)) | 864 | if (!pinst_has_cpu(pinst, cpu)) |
861 | break; | 865 | break; |
862 | mutex_lock(&pinst->lock); | 866 | mutex_lock(&pinst->lock); |
@@ -865,22 +869,6 @@ static int padata_cpu_callback(struct notifier_block *nfb, | |||
865 | if (err) | 869 | if (err) |
866 | return notifier_from_errno(err); | 870 | return notifier_from_errno(err); |
867 | break; | 871 | break; |
868 | |||
869 | case CPU_UP_CANCELED: | ||
870 | case CPU_UP_CANCELED_FROZEN: | ||
871 | if (!pinst_has_cpu(pinst, cpu)) | ||
872 | break; | ||
873 | mutex_lock(&pinst->lock); | ||
874 | __padata_remove_cpu(pinst, cpu); | ||
875 | mutex_unlock(&pinst->lock); | ||
876 | |||
877 | case CPU_DOWN_FAILED: | ||
878 | case CPU_DOWN_FAILED_FROZEN: | ||
879 | if (!pinst_has_cpu(pinst, cpu)) | ||
880 | break; | ||
881 | mutex_lock(&pinst->lock); | ||
882 | __padata_add_cpu(pinst, cpu); | ||
883 | mutex_unlock(&pinst->lock); | ||
884 | } | 872 | } |
885 | 873 | ||
886 | return NOTIFY_OK; | 874 | return NOTIFY_OK; |
@@ -1086,18 +1074,18 @@ struct padata_instance *padata_alloc(struct workqueue_struct *wq, | |||
1086 | 1074 | ||
1087 | pinst->flags = 0; | 1075 | pinst->flags = 0; |
1088 | 1076 | ||
1089 | #ifdef CONFIG_HOTPLUG_CPU | ||
1090 | pinst->cpu_notifier.notifier_call = padata_cpu_callback; | ||
1091 | pinst->cpu_notifier.priority = 0; | ||
1092 | register_hotcpu_notifier(&pinst->cpu_notifier); | ||
1093 | #endif | ||
1094 | |||
1095 | put_online_cpus(); | 1077 | put_online_cpus(); |
1096 | 1078 | ||
1097 | BLOCKING_INIT_NOTIFIER_HEAD(&pinst->cpumask_change_notifier); | 1079 | BLOCKING_INIT_NOTIFIER_HEAD(&pinst->cpumask_change_notifier); |
1098 | kobject_init(&pinst->kobj, &padata_attr_type); | 1080 | kobject_init(&pinst->kobj, &padata_attr_type); |
1099 | mutex_init(&pinst->lock); | 1081 | mutex_init(&pinst->lock); |
1100 | 1082 | ||
1083 | #ifdef CONFIG_HOTPLUG_CPU | ||
1084 | pinst->cpu_notifier.notifier_call = padata_cpu_callback; | ||
1085 | pinst->cpu_notifier.priority = 0; | ||
1086 | register_hotcpu_notifier(&pinst->cpu_notifier); | ||
1087 | #endif | ||
1088 | |||
1101 | return pinst; | 1089 | return pinst; |
1102 | 1090 | ||
1103 | err_free_masks: | 1091 | err_free_masks: |