Thread (21 messages) read the whole thread 21 messages, 5 authors, 2020-01-16

Re: [RFC 4/4] ARC: uaccess: use optimized generic __strnlen_user/__strncpy_from_user

From: Arnd Bergmann <arnd@arndb.de>
Date: 2020-01-14 20:42:36
Also in: lkml

On Tue, Jan 14, 2020 at 9:08 PM Vineet Gupta [off-list ref] wrote:
quoted hunk ↗ jump to hunk
diff --git a/arch/arc/include/asm/word-at-a-time.h b/arch/arc/include/asm/word-at-a-time.h
new file mode 100644
index 000000000000..00e92be70987
--- /dev/null
+++ b/arch/arc/include/asm/word-at-a-time.h
@@ -0,0 +1,49 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+/*
+ * Copyright (C) 2020 Synopsys Inc.
+ */
+#ifndef __ASM_ARC_WORD_AT_A_TIME_H
+#define __ASM_ARC_WORD_AT_A_TIME_H
+
+#ifdef __LITTLE_ENDIAN__
+
+#include <linux/kernel.h>
+
+struct word_at_a_time {
+       const unsigned long one_bits, high_bits;
+};
What's wrong with the generic version on little-endian? Any
chance you can find a way to make it work as well for you as
this copy?
+static inline unsigned long find_zero(unsigned long mask)
+{
+#ifdef CONFIG_64BIT
+       return fls64(mask) >> 3;
+#else
+       return fls(mask) >> 3;
+#endif
The CONFIG_64BIT check not be needed, unless you are adding
support for 64-bit ARC really soon.

       Arnd
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help