* [tglx-devel:x86/fpu 31/67] arch/x86/math-emu/fpu_proto.h:147:13: error: conflicting types for 'frstor'
@ 2021-06-23 8:21 kernel test robot
2021-06-23 9:53 ` Borislav Petkov
2021-06-23 15:28 ` Thomas Gleixner
0 siblings, 2 replies; 3+ messages in thread
From: kernel test robot @ 2021-06-23 8:21 UTC (permalink / raw)
To: kbuild-all
[-- Attachment #1: Type: text/plain, Size: 19937 bytes --]
tree: https://git.kernel.org/pub/scm/linux/kernel/git/tglx/devel.git x86/fpu
head: b408a673a7086acb9f3b4ab3084e67652f94f7a6
commit: 54a8a528861610b4227a5933f2b298bc21a11596 [31/67] x86/fpu: Rename fregs related copy functions
config: i386-randconfig-r023-20210622 (attached as .config)
compiler: gcc-9 (Debian 9.3.0-22) 9.3.0
reproduce (this is a W=1 build):
# https://git.kernel.org/pub/scm/linux/kernel/git/tglx/devel.git/commit/?id=54a8a528861610b4227a5933f2b298bc21a11596
git remote add tglx-devel https://git.kernel.org/pub/scm/linux/kernel/git/tglx/devel.git
git fetch --no-tags tglx-devel x86/fpu
git checkout 54a8a528861610b4227a5933f2b298bc21a11596
# save the attached .config to linux build tree
make W=1 ARCH=i386
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>
All errors (new ones prefixed by >>):
In file included from arch/x86/math-emu/fpu_emu.h:213,
from arch/x86/math-emu/fpu_entry.c:37:
>> arch/x86/math-emu/fpu_proto.h:147:13: error: conflicting types for 'frstor'
147 | extern void frstor(fpu_addr_modes addr_modes, u_char __user *data_address);
| ^~~~~~
In file included from arch/x86/math-emu/fpu_entry.c:34:
arch/x86/include/asm/fpu/internal.h:165:20: note: previous definition of 'frstor' was here
165 | static inline void frstor(struct fregs_state *fx)
| ^~~~~~
arch/x86/math-emu/fpu_entry.c:638:5: warning: no previous prototype for 'fpregs_soft_set' [-Wmissing-prototypes]
638 | int fpregs_soft_set(struct task_struct *target,
| ^~~~~~~~~~~~~~~
arch/x86/math-emu/fpu_entry.c:690:5: warning: no previous prototype for 'fpregs_soft_get' [-Wmissing-prototypes]
690 | int fpregs_soft_get(struct task_struct *target,
| ^~~~~~~~~~~~~~~
vim +/frstor +147 arch/x86/math-emu/fpu_proto.h
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 4
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 5 /* errors.c */
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 6 extern void FPU_illegal(void);
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 7 extern void FPU_printall(void);
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 8 asmlinkage void FPU_exception(int n);
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 9 extern int real_1op_NaN(FPU_REG *a);
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 10 extern int real_2op_NaN(FPU_REG const *b, u_char tagb, int deststnr,
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 11 FPU_REG const *defaultNaN);
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 12 asmlinkage int arith_invalid(int deststnr);
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 13 asmlinkage int FPU_divide_by_zero(int deststnr, u_char sign);
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 14 extern int set_precision_flag(int flags);
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 15 asmlinkage void set_precision_flag_up(void);
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 16 asmlinkage void set_precision_flag_down(void);
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 17 asmlinkage int denormal_operand(void);
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 18 asmlinkage int arith_overflow(FPU_REG *dest);
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 19 asmlinkage int arith_underflow(FPU_REG *dest);
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 20 extern void FPU_stack_overflow(void);
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 21 extern void FPU_stack_underflow(void);
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 22 extern void FPU_stack_underflow_i(int i);
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 23 extern void FPU_stack_underflow_pop(int i);
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 24 /* fpu_arith.c */
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 25 extern void fadd__(void);
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 26 extern void fmul__(void);
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 27 extern void fsub__(void);
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 28 extern void fsubr_(void);
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 29 extern void fdiv__(void);
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 30 extern void fdivr_(void);
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 31 extern void fadd_i(void);
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 32 extern void fmul_i(void);
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 33 extern void fsubri(void);
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 34 extern void fsub_i(void);
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 35 extern void fdivri(void);
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 36 extern void fdiv_i(void);
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 37 extern void faddp_(void);
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 38 extern void fmulp_(void);
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 39 extern void fsubrp(void);
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 40 extern void fsubp_(void);
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 41 extern void fdivrp(void);
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 42 extern void fdivp_(void);
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 43 /* fpu_aux.c */
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 44 extern void finit(void);
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 45 extern void finit_(void);
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 46 extern void fstsw_(void);
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 47 extern void fp_nop(void);
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 48 extern void fld_i_(void);
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 49 extern void fxch_i(void);
9a9d8642d03a75 arch/x86/math-emu/fpu_proto.h Denys Vlasenko 2015-09-18 50 extern void fcmovb(void);
9a9d8642d03a75 arch/x86/math-emu/fpu_proto.h Denys Vlasenko 2015-09-18 51 extern void fcmove(void);
9a9d8642d03a75 arch/x86/math-emu/fpu_proto.h Denys Vlasenko 2015-09-18 52 extern void fcmovbe(void);
9a9d8642d03a75 arch/x86/math-emu/fpu_proto.h Denys Vlasenko 2015-09-18 53 extern void fcmovu(void);
9a9d8642d03a75 arch/x86/math-emu/fpu_proto.h Denys Vlasenko 2015-09-18 54 extern void fcmovnb(void);
9a9d8642d03a75 arch/x86/math-emu/fpu_proto.h Denys Vlasenko 2015-09-18 55 extern void fcmovne(void);
9a9d8642d03a75 arch/x86/math-emu/fpu_proto.h Denys Vlasenko 2015-09-18 56 extern void fcmovnbe(void);
9a9d8642d03a75 arch/x86/math-emu/fpu_proto.h Denys Vlasenko 2015-09-18 57 extern void fcmovnu(void);
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 58 extern void ffree_(void);
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 59 extern void ffreep(void);
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 60 extern void fst_i_(void);
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 61 extern void fstp_i(void);
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 62 /* fpu_entry.c */
d315760ffa261c arch/x86/math-emu/fpu_proto.h Tejun Heo 2009-02-09 63 extern void math_emulate(struct math_emu_info *info);
ae6af41f5a4841 arch/x86/math-emu/fpu_proto.h Tejun Heo 2009-02-09 64 extern void math_abort(struct math_emu_info *info, unsigned int signal);
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 65 /* fpu_etc.c */
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 66 extern void FPU_etc(void);
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 67 /* fpu_tags.c */
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 68 extern int FPU_gettag0(void);
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 69 extern int FPU_gettagi(int stnr);
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 70 extern int FPU_gettag(int regnr);
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 71 extern void FPU_settag0(int tag);
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 72 extern void FPU_settagi(int stnr, int tag);
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 73 extern void FPU_settag(int regnr, int tag);
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 74 extern int FPU_Special(FPU_REG const *ptr);
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 75 extern int isNaN(FPU_REG const *ptr);
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 76 extern void FPU_pop(void);
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 77 extern int FPU_empty_i(int stnr);
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 78 extern int FPU_stackoverflow(FPU_REG ** st_new_ptr);
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 79 extern void FPU_copy_to_regi(FPU_REG const *r, u_char tag, int stnr);
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 80 extern void FPU_copy_to_reg1(FPU_REG const *r, u_char tag);
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 81 extern void FPU_copy_to_reg0(FPU_REG const *r, u_char tag);
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 82 /* fpu_trig.c */
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 83 extern void FPU_triga(void);
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 84 extern void FPU_trigb(void);
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 85 /* get_address.c */
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 86 extern void __user *FPU_get_address(u_char FPU_modrm, unsigned long *fpu_eip,
3d0d14f983b55a arch/x86/math-emu/fpu_proto.h Ingo Molnar 2008-01-30 87 struct address *addr,
3d0d14f983b55a arch/x86/math-emu/fpu_proto.h Ingo Molnar 2008-01-30 88 fpu_addr_modes addr_modes);
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 89 extern void __user *FPU_get_address_16(u_char FPU_modrm, unsigned long *fpu_eip,
3d0d14f983b55a arch/x86/math-emu/fpu_proto.h Ingo Molnar 2008-01-30 90 struct address *addr,
3d0d14f983b55a arch/x86/math-emu/fpu_proto.h Ingo Molnar 2008-01-30 91 fpu_addr_modes addr_modes);
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 92 /* load_store.c */
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 93 extern int FPU_load_store(u_char type, fpu_addr_modes addr_modes,
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 94 void __user * data_address);
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 95 /* poly_2xm1.c */
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 96 extern int poly_2xm1(u_char sign, FPU_REG * arg, FPU_REG *result);
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 97 /* poly_atan.c */
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 98 extern void poly_atan(FPU_REG * st0_ptr, u_char st0_tag, FPU_REG *st1_ptr,
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 99 u_char st1_tag);
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 100 /* poly_l2.c */
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 101 extern void poly_l2(FPU_REG *st0_ptr, FPU_REG *st1_ptr, u_char st1_sign);
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 102 extern int poly_l2p1(u_char s0, u_char s1, FPU_REG *r0, FPU_REG *r1,
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 103 FPU_REG * d);
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 104 /* poly_sin.c */
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 105 extern void poly_sine(FPU_REG *st0_ptr);
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 106 extern void poly_cos(FPU_REG *st0_ptr);
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 107 /* poly_tan.c */
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 108 extern void poly_tan(FPU_REG *st0_ptr);
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 109 /* reg_add_sub.c */
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 110 extern int FPU_add(FPU_REG const *b, u_char tagb, int destrnr, int control_w);
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 111 extern int FPU_sub(int flags, int rm, int control_w);
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 112 /* reg_compare.c */
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 113 extern int FPU_compare_st_data(FPU_REG const *loaded_data, u_char loaded_tag);
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 114 extern void fcom_st(void);
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 115 extern void fcompst(void);
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 116 extern void fcompp(void);
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 117 extern void fucom_(void);
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 118 extern void fucomp(void);
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 119 extern void fucompp(void);
b8e4a910e57696 arch/x86/math-emu/fpu_proto.h Denys Vlasenko 2015-09-18 120 extern void fcomi_(void);
b8e4a910e57696 arch/x86/math-emu/fpu_proto.h Denys Vlasenko 2015-09-18 121 extern void fcomip(void);
b8e4a910e57696 arch/x86/math-emu/fpu_proto.h Denys Vlasenko 2015-09-18 122 extern void fucomi_(void);
b8e4a910e57696 arch/x86/math-emu/fpu_proto.h Denys Vlasenko 2015-09-18 123 extern void fucomip(void);
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 124 /* reg_constant.c */
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 125 extern void fconst(void);
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 126 /* reg_ld_str.c */
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 127 extern int FPU_load_extended(long double __user *s, int stnr);
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 128 extern int FPU_load_double(double __user *dfloat, FPU_REG *loaded_data);
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 129 extern int FPU_load_single(float __user *single, FPU_REG *loaded_data);
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 130 extern int FPU_load_int64(long long __user *_s);
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 131 extern int FPU_load_int32(long __user *_s, FPU_REG *loaded_data);
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 132 extern int FPU_load_int16(short __user *_s, FPU_REG *loaded_data);
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 133 extern int FPU_load_bcd(u_char __user *s);
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 134 extern int FPU_store_extended(FPU_REG *st0_ptr, u_char st0_tag,
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 135 long double __user * d);
3d0d14f983b55a arch/x86/math-emu/fpu_proto.h Ingo Molnar 2008-01-30 136 extern int FPU_store_double(FPU_REG *st0_ptr, u_char st0_tag,
3d0d14f983b55a arch/x86/math-emu/fpu_proto.h Ingo Molnar 2008-01-30 137 double __user * dfloat);
3d0d14f983b55a arch/x86/math-emu/fpu_proto.h Ingo Molnar 2008-01-30 138 extern int FPU_store_single(FPU_REG *st0_ptr, u_char st0_tag,
3d0d14f983b55a arch/x86/math-emu/fpu_proto.h Ingo Molnar 2008-01-30 139 float __user * single);
3d0d14f983b55a arch/x86/math-emu/fpu_proto.h Ingo Molnar 2008-01-30 140 extern int FPU_store_int64(FPU_REG *st0_ptr, u_char st0_tag,
3d0d14f983b55a arch/x86/math-emu/fpu_proto.h Ingo Molnar 2008-01-30 141 long long __user * d);
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 142 extern int FPU_store_int32(FPU_REG *st0_ptr, u_char st0_tag, long __user *d);
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 143 extern int FPU_store_int16(FPU_REG *st0_ptr, u_char st0_tag, short __user *d);
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 144 extern int FPU_store_bcd(FPU_REG *st0_ptr, u_char st0_tag, u_char __user *d);
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 145 extern int FPU_round_to_int(FPU_REG *r, u_char tag);
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 146 extern u_char __user *fldenv(fpu_addr_modes addr_modes, u_char __user *s);
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 @147 extern void frstor(fpu_addr_modes addr_modes, u_char __user *data_address);
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 148 extern u_char __user *fstenv(fpu_addr_modes addr_modes, u_char __user *d);
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 149 extern void fsave(fpu_addr_modes addr_modes, u_char __user *data_address);
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 150 extern int FPU_tagof(FPU_REG *ptr);
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 151 /* reg_mul.c */
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 152 extern int FPU_mul(FPU_REG const *b, u_char tagb, int deststnr, int control_w);
^1da177e4c3f41 arch/i386/math-emu/fpu_proto.h Linus Torvalds 2005-04-16 153
:::::: The code at line 147 was first introduced by commit
:::::: 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 Linux-2.6.12-rc2
:::::: TO: Linus Torvalds <torvalds@ppc970.osdl.org>
:::::: CC: Linus Torvalds <torvalds@ppc970.osdl.org>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org
[-- Attachment #2: config.gz --]
[-- Type: application/gzip, Size: 43532 bytes --]
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [tglx-devel:x86/fpu 31/67] arch/x86/math-emu/fpu_proto.h:147:13: error: conflicting types for 'frstor'
2021-06-23 8:21 [tglx-devel:x86/fpu 31/67] arch/x86/math-emu/fpu_proto.h:147:13: error: conflicting types for 'frstor' kernel test robot
@ 2021-06-23 9:53 ` Borislav Petkov
2021-06-23 15:28 ` Thomas Gleixner
1 sibling, 0 replies; 3+ messages in thread
From: Borislav Petkov @ 2021-06-23 9:53 UTC (permalink / raw)
To: kbuild-all
[-- Attachment #1: Type: text/plain, Size: 4217 bytes --]
On Wed, Jun 23, 2021 at 04:21:10PM +0800, kernel test robot wrote:
> tree: https://git.kernel.org/pub/scm/linux/kernel/git/tglx/devel.git x86/fpu
> head: b408a673a7086acb9f3b4ab3084e67652f94f7a6
> commit: 54a8a528861610b4227a5933f2b298bc21a11596 [31/67] x86/fpu: Rename fregs related copy functions
> config: i386-randconfig-r023-20210622 (attached as .config)
> compiler: gcc-9 (Debian 9.3.0-22) 9.3.0
> reproduce (this is a W=1 build):
> # https://git.kernel.org/pub/scm/linux/kernel/git/tglx/devel.git/commit/?id=54a8a528861610b4227a5933f2b298bc21a11596
> git remote add tglx-devel https://git.kernel.org/pub/scm/linux/kernel/git/tglx/devel.git
> git fetch --no-tags tglx-devel x86/fpu
> git checkout 54a8a528861610b4227a5933f2b298bc21a11596
> # save the attached .config to linux build tree
> make W=1 ARCH=i386
>
> If you fix the issue, kindly add following tag as appropriate
> Reported-by: kernel test robot <lkp@intel.com>
>
> All errors (new ones prefixed by >>):
>
> In file included from arch/x86/math-emu/fpu_emu.h:213,
> from arch/x86/math-emu/fpu_entry.c:37:
> >> arch/x86/math-emu/fpu_proto.h:147:13: error: conflicting types for 'frstor'
> 147 | extern void frstor(fpu_addr_modes addr_modes, u_char __user *data_address);
> | ^~~~~~
> In file included from arch/x86/math-emu/fpu_entry.c:34:
> arch/x86/include/asm/fpu/internal.h:165:20: note: previous definition of 'frstor' was here
> 165 | static inline void frstor(struct fregs_state *fx)
> | ^~~~~~
> arch/x86/math-emu/fpu_entry.c:638:5: warning: no previous prototype for 'fpregs_soft_set' [-Wmissing-prototypes]
> 638 | int fpregs_soft_set(struct task_struct *target,
> | ^~~~~~~~~~~~~~~
> arch/x86/math-emu/fpu_entry.c:690:5: warning: no previous prototype for 'fpregs_soft_get' [-Wmissing-prototypes]
> 690 | int fpregs_soft_get(struct task_struct *target,
> | ^~~~~~~~~~~~~~~
Thanks for the report.
I guess math-emu can s**k it:
---
diff --git a/arch/x86/math-emu/fpu_proto.h b/arch/x86/math-emu/fpu_proto.h
index 70d35c200945..94c4023092f3 100644
--- a/arch/x86/math-emu/fpu_proto.h
+++ b/arch/x86/math-emu/fpu_proto.h
@@ -144,7 +144,7 @@ extern int FPU_store_int16(FPU_REG *st0_ptr, u_char st0_tag, short __user *d);
extern int FPU_store_bcd(FPU_REG *st0_ptr, u_char st0_tag, u_char __user *d);
extern int FPU_round_to_int(FPU_REG *r, u_char tag);
extern u_char __user *fldenv(fpu_addr_modes addr_modes, u_char __user *s);
-extern void frstor(fpu_addr_modes addr_modes, u_char __user *data_address);
+extern void FPU_frstor(fpu_addr_modes addr_modes, u_char __user *data_address);
extern u_char __user *fstenv(fpu_addr_modes addr_modes, u_char __user *d);
extern void fsave(fpu_addr_modes addr_modes, u_char __user *data_address);
extern int FPU_tagof(FPU_REG *ptr);
diff --git a/arch/x86/math-emu/load_store.c b/arch/x86/math-emu/load_store.c
index f15263e158e8..4092df79de4f 100644
--- a/arch/x86/math-emu/load_store.c
+++ b/arch/x86/math-emu/load_store.c
@@ -240,7 +240,7 @@ int FPU_load_store(u_char type, fpu_addr_modes addr_modes,
fix-up operations. */
return 1;
case 022: /* frstor m94/108byte */
- frstor(addr_modes, (u_char __user *) data_address);
+ FPU_frstor(addr_modes, (u_char __user *) data_address);
/* Ensure that the values just loaded are not changed by
fix-up operations. */
return 1;
diff --git a/arch/x86/math-emu/reg_ld_str.c b/arch/x86/math-emu/reg_ld_str.c
index 7ca6417c0c8d..7e4521fbe7da 100644
--- a/arch/x86/math-emu/reg_ld_str.c
+++ b/arch/x86/math-emu/reg_ld_str.c
@@ -1117,7 +1117,7 @@ u_char __user *fldenv(fpu_addr_modes addr_modes, u_char __user *s)
return s;
}
-void frstor(fpu_addr_modes addr_modes, u_char __user *data_address)
+void FPU_frstor(fpu_addr_modes addr_modes, u_char __user *data_address)
{
int i, regnr;
u_char __user *s = fldenv(addr_modes, data_address);
--
Regards/Gruss,
Boris.
SUSE Software Solutions Germany GmbH, GF: Felix Imendörffer, HRB 36809, AG Nürnberg
^ permalink raw reply related [flat|nested] 3+ messages in thread
* Re: [tglx-devel:x86/fpu 31/67] arch/x86/math-emu/fpu_proto.h:147:13: error: conflicting types for 'frstor'
2021-06-23 8:21 [tglx-devel:x86/fpu 31/67] arch/x86/math-emu/fpu_proto.h:147:13: error: conflicting types for 'frstor' kernel test robot
2021-06-23 9:53 ` Borislav Petkov
@ 2021-06-23 15:28 ` Thomas Gleixner
1 sibling, 0 replies; 3+ messages in thread
From: Thomas Gleixner @ 2021-06-23 15:28 UTC (permalink / raw)
To: kbuild-all
[-- Attachment #1: Type: text/plain, Size: 378 bytes --]
On Wed, Jun 23 2021 at 16:21, kernel test robot wrote:
> In file included from arch/x86/math-emu/fpu_emu.h:213,
> from arch/x86/math-emu/fpu_entry.c:37:
>>> arch/x86/math-emu/fpu_proto.h:147:13: error: conflicting types for 'frstor'
> 147 | extern void frstor(fpu_addr_modes addr_modes, u_char __user *data_address);
Fixed now. Tree updated.
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2021-06-23 15:28 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-06-23 8:21 [tglx-devel:x86/fpu 31/67] arch/x86/math-emu/fpu_proto.h:147:13: error: conflicting types for 'frstor' kernel test robot
2021-06-23 9:53 ` Borislav Petkov
2021-06-23 15:28 ` Thomas Gleixner
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.