Message ID | 03d1f57f73c74748829994f8026cb274065c1d8d.1614275314.git.christophe.leroy@csgroup.eu (mailing list archive) |
---|---|
State | Superseded |
Headers | show |
Series | powerpc: Cleanup of uaccess.h | expand |
Context | Check | Description |
---|---|---|
snowpatch_ozlabs/apply_patch | warning | Failed to apply on branch powerpc/merge (626a6c3d2e20da80aaa710104f34ea6037b28b33) |
snowpatch_ozlabs/apply_patch | warning | Failed to apply on branch powerpc/next (6895c5ba7bdcc55eacad03cf309ab23be63b9cac) |
snowpatch_ozlabs/apply_patch | warning | Failed to apply on branch linus/master (92bf22614b21a2706f4993b278017e437f7785b3) |
snowpatch_ozlabs/apply_patch | warning | Failed to apply on branch powerpc/fixes (24321ac668e452a4942598533d267805f291fdc9) |
snowpatch_ozlabs/apply_patch | warning | Failed to apply on branch linux-next (1e0d27fce010b0a4a9e595506b6ede75934c31be) |
snowpatch_ozlabs/apply_patch | fail | Failed to apply to any branch |
Hi Christophe, > +#else /* !CONFIG_PPC64 */ > +#define ___get_user_instr(gu_op, dest, ptr) \ > + gu_op((dest).val, (u32 __user *)(ptr)) > +#endif /* CONFIG_PPC64 */ > > #define get_user_instr(x, ptr) \ > ___get_user_instr(get_user, x, ptr) > @@ -91,18 +95,6 @@ static inline bool __access_ok(unsigned long addr, unsigned long size) > #define __get_user_instr_inatomic(x, ptr) \ > ___get_user_instr(__get_user_inatomic, x, ptr) > > -#else /* !CONFIG_PPC64 */ > -#define get_user_instr(x, ptr) \ > - get_user((x).val, (u32 __user *)(ptr)) > - > -#define __get_user_instr(x, ptr) \ > - __get_user_nocheck((x).val, (u32 __user *)(ptr), sizeof(u32), true) > - > -#define __get_user_instr_inatomic(x, ptr) \ > - __get_user_nosleep((x).val, (u32 __user *)(ptr), sizeof(u32)) > - > -#endif /* CONFIG_PPC64 */ The previous version of __get_user_instr called __get_user_nocheck, this version calls __get_user. Likewise __get_user_instr_inatomic called __get_user_nosleep and now it calls __get_user_inatomic. I was confused by this until I chased the macro definitions and realised that both names refer to the same thing: #define __get_user(x, ptr) \ __get_user_nocheck((x), (ptr), sizeof(*(ptr)), true) #define __get_user_inatomic(x, ptr) \ __get_user_nosleep((x), (ptr), sizeof(*(ptr))) (I don't think you need to do anything here, I'm just documenting what I considered while reviewing your patch.) As such: Reviewed-by: Daniel Axtens <dja@axtens.net> Kind regards, Daniel > - > extern long __put_user_bad(void); > > #define __put_user_size(x, ptr, size, retval) \ > -- > 2.25.0
diff --git a/arch/powerpc/include/asm/uaccess.h b/arch/powerpc/include/asm/uaccess.h index 8cbf3e3874f1..a08c482b1315 100644 --- a/arch/powerpc/include/asm/uaccess.h +++ b/arch/powerpc/include/asm/uaccess.h @@ -81,6 +81,10 @@ static inline bool __access_ok(unsigned long addr, unsigned long size) } \ __gui_ret; \ }) +#else /* !CONFIG_PPC64 */ +#define ___get_user_instr(gu_op, dest, ptr) \ + gu_op((dest).val, (u32 __user *)(ptr)) +#endif /* CONFIG_PPC64 */ #define get_user_instr(x, ptr) \ ___get_user_instr(get_user, x, ptr) @@ -91,18 +95,6 @@ static inline bool __access_ok(unsigned long addr, unsigned long size) #define __get_user_instr_inatomic(x, ptr) \ ___get_user_instr(__get_user_inatomic, x, ptr) -#else /* !CONFIG_PPC64 */ -#define get_user_instr(x, ptr) \ - get_user((x).val, (u32 __user *)(ptr)) - -#define __get_user_instr(x, ptr) \ - __get_user_nocheck((x).val, (u32 __user *)(ptr), sizeof(u32), true) - -#define __get_user_instr_inatomic(x, ptr) \ - __get_user_nosleep((x).val, (u32 __user *)(ptr), sizeof(u32)) - -#endif /* CONFIG_PPC64 */ - extern long __put_user_bad(void); #define __put_user_size(x, ptr, size, retval) \
Define simple ___get_user_instr() for ppc32 instead of defining ppc32 versions of the three get_user_instr() helpers. Signed-off-by: Christophe Leroy <christophe.leroy@csgroup.eu> --- arch/powerpc/include/asm/uaccess.h | 16 ++++------------ 1 file changed, 4 insertions(+), 12 deletions(-)