return format_flags(buf, end, flags, names);
}
+#ifdef CONFIG_KMSG_IDS
+
+unsigned long long __jhash_string(const char *str);
+
+static noinline_for_stack
+char *jhash_string(char *buf, char *end, const char *str, const char *fmt)
+{
+ struct printf_spec spec;
+ unsigned long long num;
+
+ num = __jhash_string(str);
+
+ spec.type = FORMAT_TYPE_PTR;
+ spec.field_width = 6;
+ spec.flags = SMALL | ZEROPAD;
+ spec.base = 16;
+ spec.precision = -1;
+
+ return number(buf, end, num, spec);
+}
+
+#endif
+
int kptr_restrict __read_mostly;
/*
* p page flags (see struct page) given as pointer to unsigned long
* g gfp flags (GFP_* and __GFP_*) given as pointer to gfp_t
* v vma flags (VM_*) given as pointer to unsigned long
+ * - 'j' Kernel message catalog jhash for System z
*
* ** Please update also Documentation/printk-formats.txt when making changes **
*
case 'G':
return flags_string(buf, end, ptr, fmt);
+#ifdef CONFIG_KMSG_IDS
+ case 'j':
+ return jhash_string(buf, end, ptr, fmt);
+#endif
}
spec.flags |= SMALL;
if (spec.field_width == -1) {