|
@@ -27,42 +27,42 @@ static void s390_arch_random_generate(u8 *buf, unsigned int nbytes)
|
|
|
|
|
|
static inline bool arch_has_random(void)
|
|
static inline bool arch_has_random(void)
|
|
{
|
|
{
|
|
- if (static_branch_likely(&s390_arch_random_available))
|
|
|
|
- return true;
|
|
|
|
return false;
|
|
return false;
|
|
}
|
|
}
|
|
|
|
|
|
static inline bool arch_has_random_seed(void)
|
|
static inline bool arch_has_random_seed(void)
|
|
{
|
|
{
|
|
- return arch_has_random();
|
|
|
|
|
|
+ if (static_branch_likely(&s390_arch_random_available))
|
|
|
|
+ return true;
|
|
|
|
+ return false;
|
|
}
|
|
}
|
|
|
|
|
|
static inline bool arch_get_random_long(unsigned long *v)
|
|
static inline bool arch_get_random_long(unsigned long *v)
|
|
{
|
|
{
|
|
- if (static_branch_likely(&s390_arch_random_available)) {
|
|
|
|
- s390_arch_random_generate((u8 *)v, sizeof(*v));
|
|
|
|
- return true;
|
|
|
|
- }
|
|
|
|
return false;
|
|
return false;
|
|
}
|
|
}
|
|
|
|
|
|
static inline bool arch_get_random_int(unsigned int *v)
|
|
static inline bool arch_get_random_int(unsigned int *v)
|
|
{
|
|
{
|
|
- if (static_branch_likely(&s390_arch_random_available)) {
|
|
|
|
- s390_arch_random_generate((u8 *)v, sizeof(*v));
|
|
|
|
- return true;
|
|
|
|
- }
|
|
|
|
return false;
|
|
return false;
|
|
}
|
|
}
|
|
|
|
|
|
static inline bool arch_get_random_seed_long(unsigned long *v)
|
|
static inline bool arch_get_random_seed_long(unsigned long *v)
|
|
{
|
|
{
|
|
- return arch_get_random_long(v);
|
|
|
|
|
|
+ if (static_branch_likely(&s390_arch_random_available)) {
|
|
|
|
+ s390_arch_random_generate((u8 *)v, sizeof(*v));
|
|
|
|
+ return true;
|
|
|
|
+ }
|
|
|
|
+ return false;
|
|
}
|
|
}
|
|
|
|
|
|
static inline bool arch_get_random_seed_int(unsigned int *v)
|
|
static inline bool arch_get_random_seed_int(unsigned int *v)
|
|
{
|
|
{
|
|
- return arch_get_random_int(v);
|
|
|
|
|
|
+ if (static_branch_likely(&s390_arch_random_available)) {
|
|
|
|
+ s390_arch_random_generate((u8 *)v, sizeof(*v));
|
|
|
|
+ return true;
|
|
|
|
+ }
|
|
|
|
+ return false;
|
|
}
|
|
}
|
|
|
|
|
|
#endif /* CONFIG_ARCH_RANDOM */
|
|
#endif /* CONFIG_ARCH_RANDOM */
|