[radeon-alex:amd-staging-drm-next 1019/1033] drivers/gpu/drm/amd/amdgpu/../display/dc/clk_mgr/dcn21/rn_clk_mgr_vbios_smu.c:237:5: warning: no previous prototype for 'rn_vbios_smu_is_periodic_retraining_disabled'
by kernel test robot
tree: git://people.freedesktop.org/~agd5f/linux.git amd-staging-drm-next
head: 2c6fefb23a0e94add694b04a82bf020aed1898a0
commit: 8e37efbf94c9516cbec8ac650ecae7c8647d4d7f [1019/1033] drm/amd/display: reduce sr_xxx_time by 3 us when ppt disable
config: i386-allyesconfig (attached as .config)
compiler: gcc-9 (Debian 9.3.0-14) 9.3.0
reproduce (this is a W=1 build):
git checkout 8e37efbf94c9516cbec8ac650ecae7c8647d4d7f
# 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(a)intel.com>
All warnings (new ones prefixed by >>):
drivers/gpu/drm/amd/amdgpu/../display/dc/clk_mgr/dcn21/rn_clk_mgr_vbios_smu.c:89:5: warning: no previous prototype for 'rn_vbios_smu_send_msg_with_param' [-Wmissing-prototypes]
89 | int rn_vbios_smu_send_msg_with_param(struct clk_mgr_internal *clk_mgr, unsigned int msg_id, unsigned int param)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/gpu/drm/amd/amdgpu/../display/dc/clk_mgr/dcn21/rn_clk_mgr_vbios_smu.c:110:5: warning: no previous prototype for 'rn_vbios_smu_get_smu_version' [-Wmissing-prototypes]
110 | int rn_vbios_smu_get_smu_version(struct clk_mgr_internal *clk_mgr)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/gpu/drm/amd/amdgpu/../display/dc/clk_mgr/dcn21/rn_clk_mgr_vbios_smu.c:119:5: warning: no previous prototype for 'rn_vbios_smu_set_dispclk' [-Wmissing-prototypes]
119 | int rn_vbios_smu_set_dispclk(struct clk_mgr_internal *clk_mgr, int requested_dispclk_khz)
| ^~~~~~~~~~~~~~~~~~~~~~~~
drivers/gpu/drm/amd/amdgpu/../display/dc/clk_mgr/dcn21/rn_clk_mgr_vbios_smu.c:142:5: warning: no previous prototype for 'rn_vbios_smu_set_dprefclk' [-Wmissing-prototypes]
142 | int rn_vbios_smu_set_dprefclk(struct clk_mgr_internal *clk_mgr)
| ^~~~~~~~~~~~~~~~~~~~~~~~~
drivers/gpu/drm/amd/amdgpu/../display/dc/clk_mgr/dcn21/rn_clk_mgr_vbios_smu.c:156:5: warning: no previous prototype for 'rn_vbios_smu_set_hard_min_dcfclk' [-Wmissing-prototypes]
156 | int rn_vbios_smu_set_hard_min_dcfclk(struct clk_mgr_internal *clk_mgr, int requested_dcfclk_khz)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/gpu/drm/amd/amdgpu/../display/dc/clk_mgr/dcn21/rn_clk_mgr_vbios_smu.c:171:5: warning: no previous prototype for 'rn_vbios_smu_set_min_deep_sleep_dcfclk' [-Wmissing-prototypes]
171 | int rn_vbios_smu_set_min_deep_sleep_dcfclk(struct clk_mgr_internal *clk_mgr, int requested_min_ds_dcfclk_khz)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/gpu/drm/amd/amdgpu/../display/dc/clk_mgr/dcn21/rn_clk_mgr_vbios_smu.c:186:6: warning: no previous prototype for 'rn_vbios_smu_set_phyclk' [-Wmissing-prototypes]
186 | void rn_vbios_smu_set_phyclk(struct clk_mgr_internal *clk_mgr, int requested_phyclk_khz)
| ^~~~~~~~~~~~~~~~~~~~~~~
drivers/gpu/drm/amd/amdgpu/../display/dc/clk_mgr/dcn21/rn_clk_mgr_vbios_smu.c:194:5: warning: no previous prototype for 'rn_vbios_smu_set_dppclk' [-Wmissing-prototypes]
194 | int rn_vbios_smu_set_dppclk(struct clk_mgr_internal *clk_mgr, int requested_dpp_khz)
| ^~~~~~~~~~~~~~~~~~~~~~~
drivers/gpu/drm/amd/amdgpu/../display/dc/clk_mgr/dcn21/rn_clk_mgr_vbios_smu.c:206:6: warning: no previous prototype for 'rn_vbios_smu_set_dcn_low_power_state' [-Wmissing-prototypes]
206 | void rn_vbios_smu_set_dcn_low_power_state(struct clk_mgr_internal *clk_mgr, enum dcn_pwr_state state)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/gpu/drm/amd/amdgpu/../display/dc/clk_mgr/dcn21/rn_clk_mgr_vbios_smu.c:221:6: warning: no previous prototype for 'rn_vbios_smu_enable_48mhz_tmdp_refclk_pwrdwn' [-Wmissing-prototypes]
221 | void rn_vbios_smu_enable_48mhz_tmdp_refclk_pwrdwn(struct clk_mgr_internal *clk_mgr, bool enable)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/gpu/drm/amd/amdgpu/../display/dc/clk_mgr/dcn21/rn_clk_mgr_vbios_smu.c:229:6: warning: no previous prototype for 'rn_vbios_smu_enable_pme_wa' [-Wmissing-prototypes]
229 | void rn_vbios_smu_enable_pme_wa(struct clk_mgr_internal *clk_mgr)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~
>> drivers/gpu/drm/amd/amdgpu/../display/dc/clk_mgr/dcn21/rn_clk_mgr_vbios_smu.c:237:5: warning: no previous prototype for 'rn_vbios_smu_is_periodic_retraining_disabled' [-Wmissing-prototypes]
237 | int rn_vbios_smu_is_periodic_retraining_disabled(struct clk_mgr_internal *clk_mgr)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from drivers/gpu/drm/amd/amdgpu/../display/dc/clk_mgr/dcn21/rn_clk_mgr_vbios_smu.c:31:
drivers/gpu/drm/amd/amdgpu/../include/renoir_ip_offset.h:226:29: warning: 'UVD0_BASE' defined but not used [-Wunused-const-variable=]
226 | static const struct IP_BASE UVD0_BASE ={ { { { 0x00007800, 0x00007E00, 0x02403000, 0, 0 } },
| ^~~~~~~~~
drivers/gpu/drm/amd/amdgpu/../include/renoir_ip_offset.h:219:29: warning: 'USB0_BASE' defined but not used [-Wunused-const-variable=]
219 | static const struct IP_BASE USB0_BASE ={ { { { 0x0242A800, 0x05B00000, 0, 0, 0 } },
| ^~~~~~~~~
drivers/gpu/drm/amd/amdgpu/../include/renoir_ip_offset.h:212:29: warning: 'UMC_BASE' defined but not used [-Wunused-const-variable=]
212 | static const struct IP_BASE UMC_BASE ={ { { { 0x00014000, 0x02425800, 0, 0, 0 } },
| ^~~~~~~~
drivers/gpu/drm/amd/amdgpu/../include/renoir_ip_offset.h:205:29: warning: 'THM_BASE' defined but not used [-Wunused-const-variable=]
205 | static const struct IP_BASE THM_BASE ={ { { { 0x00016600, 0x02400C00, 0, 0, 0 } },
| ^~~~~~~~
drivers/gpu/drm/amd/amdgpu/../include/renoir_ip_offset.h:198:29: warning: 'SMUIO_BASE' defined but not used [-Wunused-const-variable=]
198 | static const struct IP_BASE SMUIO_BASE ={ { { { 0x00016800, 0x00016A00, 0x02401000, 0x00440000, 0 } },
| ^~~~~~~~~~
drivers/gpu/drm/amd/amdgpu/../include/renoir_ip_offset.h:191:29: warning: 'SDMA0_BASE' defined but not used [-Wunused-const-variable=]
191 | static const struct IP_BASE SDMA0_BASE ={ { { { 0x00001260, 0x0240A800, 0, 0, 0 } },
| ^~~~~~~~~~
drivers/gpu/drm/amd/amdgpu/../include/renoir_ip_offset.h:184:29: warning: 'PCIE0_BASE' defined but not used [-Wunused-const-variable=]
184 | static const struct IP_BASE PCIE0_BASE ={ { { { 0x02411800, 0x04440000, 0, 0, 0 } },
| ^~~~~~~~~~
drivers/gpu/drm/amd/amdgpu/../include/renoir_ip_offset.h:177:29: warning: 'OSSSYS_BASE' defined but not used [-Wunused-const-variable=]
177 | static const struct IP_BASE OSSSYS_BASE ={ { { { 0x000010A0, 0x0240A000, 0, 0, 0 } },
| ^~~~~~~~~~~
drivers/gpu/drm/amd/amdgpu/../include/renoir_ip_offset.h:172:29: warning: 'DCN_BASE' defined but not used [-Wunused-const-variable=]
172 | static const struct IP_BASE DCN_BASE ={ { { { 0x00000012, 0x000000C0, 0x000034C0, 0, 0 } },
| ^~~~~~~~
drivers/gpu/drm/amd/amdgpu/../include/renoir_ip_offset.h:165:29: warning: 'NBIF0_BASE' defined but not used [-Wunused-const-variable=]
165 | static const struct IP_BASE NBIF0_BASE ={ { { { 0x00000000, 0x00000014, 0x00000D20, 0x00010400, 0x0241B000 } },
| ^~~~~~~~~~
drivers/gpu/drm/amd/amdgpu/../include/renoir_ip_offset.h:158:29: warning: 'MP1_BASE' defined but not used [-Wunused-const-variable=]
158 | static const struct IP_BASE MP1_BASE ={ { { { 0x00016000, 0x02400400, 0x00E80000, 0x00EC0000, 0x00F00000 } },
| ^~~~~~~~
drivers/gpu/drm/amd/amdgpu/../include/renoir_ip_offset.h:144:29: warning: 'MMHUB_BASE' defined but not used [-Wunused-const-variable=]
144 | static const struct IP_BASE MMHUB_BASE ={ { { { 0x0001A000, 0x02408800, 0, 0, 0 } },
| ^~~~~~~~~~
drivers/gpu/drm/amd/amdgpu/../include/renoir_ip_offset.h:137:29: warning: 'L2IMU0_BASE' defined but not used [-Wunused-const-variable=]
137 | static const struct IP_BASE L2IMU0_BASE ={ { { { 0x00007DC0, 0x02407000, 0x00900000, 0x04FC0000, 0x055C0000 } },
| ^~~~~~~~~~~
drivers/gpu/drm/amd/amdgpu/../include/renoir_ip_offset.h:130:29: warning: 'ISP_BASE' defined but not used [-Wunused-const-variable=]
130 | static const struct IP_BASE ISP_BASE ={ { { { 0x00018000, 0x0240B000, 0, 0, 0 } },
| ^~~~~~~~
drivers/gpu/drm/amd/amdgpu/../include/renoir_ip_offset.h:123:29: warning: 'IOHC0_BASE' defined but not used [-Wunused-const-variable=]
123 | static const struct IP_BASE IOHC0_BASE ={ { { { 0x00010000, 0x02406000, 0x04EC0000, 0, 0 } },
| ^~~~~~~~~~
drivers/gpu/drm/amd/amdgpu/../include/renoir_ip_offset.h:116:29: warning: 'HDP_BASE' defined but not used [-Wunused-const-variable=]
116 | static const struct IP_BASE HDP_BASE ={ { { { 0x00000F20, 0x0240A400, 0, 0, 0 } },
| ^~~~~~~~
drivers/gpu/drm/amd/amdgpu/../include/renoir_ip_offset.h:109:29: warning: 'HDA_BASE' defined but not used [-Wunused-const-variable=]
109 | static const struct IP_BASE HDA_BASE ={ { { { 0x02404800, 0x004C0000, 0, 0, 0 } },
| ^~~~~~~~
drivers/gpu/drm/amd/amdgpu/../include/renoir_ip_offset.h:102:29: warning: 'GC_BASE' defined but not used [-Wunused-const-variable=]
102 | static const struct IP_BASE GC_BASE ={ { { { 0x00002000, 0x0000A000, 0x02402C00, 0, 0 } },
| ^~~~~~~
drivers/gpu/drm/amd/amdgpu/../include/renoir_ip_offset.h:95:29: warning: 'FUSE_BASE' defined but not used [-Wunused-const-variable=]
95 | static const struct IP_BASE FUSE_BASE ={ { { { 0x00017400, 0x02401400, 0, 0, 0 } },
| ^~~~~~~~~
drivers/gpu/drm/amd/amdgpu/../include/renoir_ip_offset.h:88:29: warning: 'DPCS_BASE' defined but not used [-Wunused-const-variable=]
88 | static const struct IP_BASE DPCS_BASE ={ { { { 0x00000012, 0x000000C0, 0x000034C0, 0x00009000, 0x02403C00 } },
| ^~~~~~~~~
drivers/gpu/drm/amd/amdgpu/../include/renoir_ip_offset.h:81:29: warning: 'DMU_BASE' defined but not used [-Wunused-const-variable=]
81 | static const struct IP_BASE DMU_BASE ={ { { { 0x00000012, 0x000000C0, 0x000034C0, 0x00009000, 0x02403C00 } },
| ^~~~~~~~
drivers/gpu/drm/amd/amdgpu/../include/renoir_ip_offset.h:74:29: warning: 'DIO_BASE' defined but not used [-Wunused-const-variable=]
74 | static const struct IP_BASE DIO_BASE ={ { { { 0x02404000, 0, 0, 0, 0 } },
| ^~~~~~~~
drivers/gpu/drm/amd/amdgpu/../include/renoir_ip_offset.h:67:29: warning: 'DF_BASE' defined but not used [-Wunused-const-variable=]
67 | static const struct IP_BASE DF_BASE ={ { { { 0x00007000, 0x0240B800, 0, 0, 0 } },
| ^~~~~~~
drivers/gpu/drm/amd/amdgpu/../include/renoir_ip_offset.h:60:29: warning: 'DBGU_IO0_BASE' defined but not used [-Wunused-const-variable=]
60 | static const struct IP_BASE DBGU_IO0_BASE ={ { { { 0x000001E0, 0x0240B400, 0, 0, 0 } },
| ^~~~~~~~~~~~~
drivers/gpu/drm/amd/amdgpu/../include/renoir_ip_offset.h:53:29: warning: 'CLK_BASE' defined but not used [-Wunused-const-variable=]
53 | static const struct IP_BASE CLK_BASE ={ { { { 0x00016C00, 0x00016E00, 0x00017000, 0x00017E00, 0 } },
| ^~~~~~~~
drivers/gpu/drm/amd/amdgpu/../include/renoir_ip_offset.h:46:29: warning: 'ATHUB_BASE' defined but not used [-Wunused-const-variable=]
46 | static const struct IP_BASE ATHUB_BASE ={ { { { 0x00000C20, 0x02408C00, 0, 0, 0 } },
| ^~~~~~~~~~
drivers/gpu/drm/amd/amdgpu/../include/renoir_ip_offset.h:39:29: warning: 'ACP_BASE' defined but not used [-Wunused-const-variable=]
39 | static const struct IP_BASE ACP_BASE ={ { { { 0x02403800, 0x00480000, 0, 0, 0 } },
| ^~~~~~~~
In file included from drivers/gpu/drm/amd/amdgpu/../display/dc/inc/core_types.h:86,
from drivers/gpu/drm/amd/amdgpu/../display/dc/clk_mgr/dcn21/rn_clk_mgr_vbios_smu.c:26:
drivers/gpu/drm/amd/amdgpu/../display/dc/inc/hw/dpp.h:50:42: warning: 'dpp_input_csc_matrix' defined but not used [-Wunused-const-variable=]
50 | static const struct dpp_input_csc_matrix dpp_input_csc_matrix[] = {
| ^~~~~~~~~~~~~~~~~~~~
In file included from drivers/gpu/drm/amd/amdgpu/../display/dc/inc/core_types.h:32,
from drivers/gpu/drm/amd/amdgpu/../display/dc/clk_mgr/dcn21/rn_clk_mgr_vbios_smu.c:26:
drivers/gpu/drm/amd/amdgpu/../display/include/ddc_service_types.h:124:22: warning: 'DP_DVI_CONVERTER_ID_4' defined but not used [-Wunused-const-variable=]
124 | static const uint8_t DP_DVI_CONVERTER_ID_4[] = "m2DVIa";
| ^~~~~~~~~~~~~~~~~~~~~
drivers/gpu/drm/amd/amdgpu/../display/include/ddc_service_types.h:122:22: warning: 'DP_VGA_LVDS_CONVERTER_ID_3' defined but not used [-Wunused-const-variable=]
122 | static const uint8_t DP_VGA_LVDS_CONVERTER_ID_3[] = "dnomlA";
| ^~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/gpu/drm/amd/amdgpu/../display/include/ddc_service_types.h:120:22: warning: 'DP_VGA_LVDS_CONVERTER_ID_2' defined but not used [-Wunused-const-variable=]
120 | static const uint8_t DP_VGA_LVDS_CONVERTER_ID_2[] = "sivarT";
| ^~~~~~~~~~~~~~~~~~~~~~~~~~
vim +/rn_vbios_smu_is_periodic_retraining_disabled +237 drivers/gpu/drm/amd/amdgpu/../display/dc/clk_mgr/dcn21/rn_clk_mgr_vbios_smu.c
236
> 237 int rn_vbios_smu_is_periodic_retraining_disabled(struct clk_mgr_internal *clk_mgr)
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years, 2 months
[ti:ti-linux-5.4.y 7333/7338] drivers/net/ethernet/ti/prueth_lre.c:120:6: warning: no previous prototype for 'pru_spin_lock'
by kernel test robot
tree: git://git.ti.com/ti-linux-kernel/ti-linux-kernel.git ti-linux-5.4.y
head: 3cdbcdd591d4a26a51eba81bba6422754950f98d
commit: 0ec7a6a2598dfb3920edb0551529a803dd56c346 [7333/7338] net: ti: prueth_core: add helper functions to support lre offload
config: arm-allyesconfig (attached as .config)
compiler: arm-linux-gnueabi-gcc (GCC) 9.3.0
reproduce (this is a W=1 build):
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
git checkout 0ec7a6a2598dfb3920edb0551529a803dd56c346
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=arm
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All warnings (new ones prefixed by >>):
>> drivers/net/ethernet/ti/prueth_lre.c:120:6: warning: no previous prototype for 'pru_spin_lock' [-Wmissing-prototypes]
120 | void pru_spin_lock(struct node_tbl *nt)
| ^~~~~~~~~~~~~
>> drivers/net/ethernet/ti/prueth_lre.c:267:6: warning: no previous prototype for 'node_table_update_time' [-Wmissing-prototypes]
267 | void node_table_update_time(struct node_tbl *nt)
| ^~~~~~~~~~~~~~~~~~~~~~
>> drivers/net/ethernet/ti/prueth_lre.c:470:6: warning: no previous prototype for 'node_table_check_and_remove' [-Wmissing-prototypes]
470 | void node_table_check_and_remove(struct node_tbl *nt, u16 forget_time)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~
>> drivers/net/ethernet/ti/prueth_lre.c:530:6: warning: no previous prototype for 'pop_queue_process' [-Wmissing-prototypes]
530 | void pop_queue_process(struct prueth *prueth, spinlock_t *lock)
| ^~~~~~~~~~~~~~~~~
drivers/net/ethernet/ti/prueth_lre.c: In function 'prueth_lre_emac_rx_packets':
drivers/net/ethernet/ti/prueth_lre.c:645:36: warning: variable 'queue_desc_p' set but not used [-Wunused-but-set-variable]
645 | struct prueth_queue_desc __iomem *queue_desc_p;
| ^~~~~~~~~~~~
drivers/net/ethernet/ti/prueth_lre.c:644:43: warning: variable 'status_o' set but not used [-Wunused-but-set-variable]
644 | u8 overflow_cnt, overflow_cnt_o, status, status_o;
| ^~~~~~~~
drivers/net/ethernet/ti/prueth_lre.c:644:35: warning: variable 'status' set but not used [-Wunused-but-set-variable]
644 | u8 overflow_cnt, overflow_cnt_o, status, status_o;
| ^~~~~~
vim +/pru_spin_lock +120 drivers/net/ethernet/ti/prueth_lre.c
119
> 120 void pru_spin_lock(struct node_tbl *nt)
121 {
122 while (1) {
123 nt->nt_info->arm_lock = 1;
124 if (!nt->nt_info->fw_lock)
125 break;
126 nt->nt_info->arm_lock = 0;
127 }
128 }
129
130 static inline void pru_spin_unlock(struct node_tbl *nt)
131 {
132 nt->nt_info->arm_lock = 0;
133 }
134
135 int prueth_lre_nt_insert(struct prueth *prueth,
136 u8 *mac, int port, int sv_frame, int proto)
137 {
138 struct nt_queue_t *q = prueth->mac_queue;
139 unsigned long flags;
140 int ret = LRE_OK;
141
142 /* Will encounter a null mac_queue if we are in the middle of
143 * ndo_close. So check and return. Otherwise a kernel crash is
144 * seen when doing ifdown continuously.
145 */
146 if (!q)
147 return ret;
148
149 spin_lock_irqsave(&prueth->nt_lock, flags);
150 if (q->full) {
151 ret = LRE_ERR;
152 } else {
153 memcpy(q->nt_queue[q->wr_ind].mac, mac, ETH_ALEN);
154 q->nt_queue[q->wr_ind].sv_frame = sv_frame;
155 q->nt_queue[q->wr_ind].port_id = port;
156 q->nt_queue[q->wr_ind].proto = proto;
157
158 q->wr_ind++;
159 q->wr_ind &= (PRUETH_MAC_QUEUE_MAX - 1);
160 if (q->wr_ind == q->rd_ind)
161 q->full = true;
162 }
163 spin_unlock_irqrestore(&prueth->nt_lock, flags);
164
165 return ret;
166 }
167
168 static inline bool node_expired(struct node_tbl *nt, u16 node, u16 forget_time)
169 {
170 struct node_tbl_t nt_node = nt->nt_array->node_tbl[node];
171
172 return ((nt_node.time_last_seen_s > forget_time ||
173 nt_node.status & ICSS_LRE_NT_REM_NODE_TYPE_SANAB) &&
174 nt_node.time_last_seen_a > forget_time &&
175 nt_node.time_last_seen_b > forget_time);
176 }
177
178 #define IND_BIN_NO(x) nt->index_array->index_tbl[x].bin_no_entries
179 #define IND_BINOFS(x) nt->index_array->index_tbl[x].bin_offset
180 #define BIN_NODEOFS(x) nt->bin_array->bin_tbl[x].node_tbl_offset
181
182 static void _prueth_lre_init_node_table(struct prueth *prueth)
183 {
184 struct nt_queue_t *q = prueth->mac_queue;
185 struct node_tbl *nt = prueth->nt;
186 int j;
187
188 const struct prueth_fw_offsets *fw_offsets = prueth->fw_offsets;
189
190 nt->nt_array = prueth->mem[fw_offsets->nt_array_loc].va +
191 fw_offsets->nt_array_offset;
192 memset_io(nt->nt_array, 0, sizeof(struct node_tbl_t) *
193 fw_offsets->nt_array_max_entries);
194
195 nt->bin_array = prueth->mem[fw_offsets->bin_array_loc].va +
196 fw_offsets->bin_array_offset;
197 memset_io(nt->bin_array, 0, sizeof(struct bin_tbl_t) *
198 fw_offsets->bin_array_max_entries);
199
200 nt->index_array = prueth->mem[fw_offsets->index_array_loc].va +
201 fw_offsets->index_array_offset;
202 memset_io(nt->index_array, 0, sizeof(struct node_index_tbl_t) *
203 fw_offsets->index_array_max_entries);
204
205 nt->nt_info = prueth->mem[fw_offsets->nt_array_loc].va +
206 fw_offsets->nt_array_offset +
207 (sizeof(struct node_tbl_t) *
208 fw_offsets->nt_array_max_entries);
209 memset_io(nt->nt_info, 0, sizeof(struct node_tbl_info_t));
210
211 nt->nt_lre_cnt =
212 prueth->mem[PRUETH_MEM_SHARED_RAM].va + ICSS_LRE_CNT_NODES;
213 memset_io(nt->nt_lre_cnt, 0, sizeof(struct node_tbl_lre_cnt_t));
214
215 nt->nt_array_max_entries = fw_offsets->nt_array_max_entries;
216 nt->bin_array_max_entries = fw_offsets->bin_array_max_entries;
217 nt->index_array_max_entries = fw_offsets->index_array_max_entries;
218 nt->hash_mask = fw_offsets->hash_mask;
219
220 for (j = 0; j < fw_offsets->index_array_max_entries; j++)
221 IND_BINOFS(j) = fw_offsets->bin_array_max_entries;
222 for (j = 0; j < fw_offsets->bin_array_max_entries; j++)
223 BIN_NODEOFS(j) = fw_offsets->nt_array_max_entries;
224 for (j = 0; j < fw_offsets->nt_array_max_entries; j++)
225 nt->nt_array->node_tbl[j].entry_state = ICSS_LRE_NODE_FREE;
226
227 q->rd_ind = 0;
228 q->wr_ind = 0;
229 q->full = false;
230 }
231
232 static u16 find_free_bin(struct node_tbl *nt)
233 {
234 u16 j;
235
236 for (j = 0; j < nt->bin_array_max_entries; j++)
237 if (BIN_NODEOFS(j) == nt->nt_array_max_entries)
238 break;
239
240 return j;
241 }
242
243 /* find first free node table slot and write it to the next_free_slot */
244 static u16 next_free_slot_update(struct node_tbl *nt)
245 {
246 int j;
247
248 nt->nt_info->next_free_slot = nt->nt_array_max_entries;
249 for (j = 0; j < nt->nt_array_max_entries; j++) {
250 if (nt->nt_array->node_tbl[j].entry_state ==
251 ICSS_LRE_NODE_FREE) {
252 nt->nt_info->next_free_slot = j;
253 break;
254 }
255 }
256
257 return nt->nt_info->next_free_slot;
258 }
259
260 static void inc_time(u16 *t)
261 {
262 *t += 1;
263 if (*t > ICSS_LRE_MAX_FORGET_TIME)
264 *t = ICSS_LRE_MAX_FORGET_TIME;
265 }
266
> 267 void node_table_update_time(struct node_tbl *nt)
268 {
269 int j;
270 u16 ofs;
271 struct nt_array_t *nt_arr = nt->nt_array;
272 struct node_tbl_t *node;
273
274 for (j = 0; j < nt->bin_array_max_entries; j++) {
275 ofs = nt->bin_array->bin_tbl[j].node_tbl_offset;
276 if (ofs < nt->nt_array_max_entries) {
277 node = &nt_arr->node_tbl[ofs];
278 inc_time(&node->time_last_seen_a);
279 inc_time(&node->time_last_seen_b);
280 /* increment time_last_seen_s if nod is not SAN */
281 if ((node->status &
282 ICSS_LRE_NT_REM_NODE_TYPE_SANAB) == 0)
283 inc_time(&node->time_last_seen_s);
284 }
285 }
286 }
287
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years, 2 months
Re: [PATCH] mac80211: save he oper info in bss config for AP and mesh
by kernel test robot
Hi Pradeep,
Thank you for the patch! Yet something to improve:
[auto build test ERROR on mac80211-next/master]
[also build test ERROR on mac80211/master v5.8-rc5 next-20200714]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use as documented in
https://git-scm.com/docs/git-format-patch]
url: https://github.com/0day-ci/linux/commits/Pradeep-Kumar-Chitrapu/mac80211-...
base: https://git.kernel.org/pub/scm/linux/kernel/git/jberg/mac80211-next.git master
config: mips-malta_kvm_guest_defconfig (attached as .config)
compiler: mipsel-linux-gcc (GCC) 9.3.0
reproduce (this is a W=1 build):
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=mips
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All errors (new ones prefixed by >>):
net/mac80211/mesh.c: In function 'mesh_add_he_oper_ie':
>> net/mac80211/mesh.c:614:2: error: too few arguments to function 'ieee80211_ie_build_he_oper'
614 | ieee80211_ie_build_he_oper(pos, &sdata->vif.bss_conf.chandef);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from net/mac80211/mesh.c:11:
net/mac80211/ieee80211_i.h:2187:5: note: declared here
2187 | u8 *ieee80211_ie_build_he_oper(u8 *pos, struct cfg80211_chan_def *chandef,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~
vim +/ieee80211_ie_build_he_oper +614 net/mac80211/mesh.c
60ad72da55ac74 Sven Eckelmann 2019-07-24 584
60ad72da55ac74 Sven Eckelmann 2019-07-24 585 int mesh_add_he_oper_ie(struct ieee80211_sub_if_data *sdata,
60ad72da55ac74 Sven Eckelmann 2019-07-24 586 struct sk_buff *skb)
60ad72da55ac74 Sven Eckelmann 2019-07-24 587 {
60ad72da55ac74 Sven Eckelmann 2019-07-24 588 const struct ieee80211_sta_he_cap *he_cap;
60ad72da55ac74 Sven Eckelmann 2019-07-24 589 struct ieee80211_supported_band *sband;
d1b7524b3ea140 Rajkumar Manoharan 2020-05-28 590 u32 len;
60ad72da55ac74 Sven Eckelmann 2019-07-24 591 u8 *pos;
60ad72da55ac74 Sven Eckelmann 2019-07-24 592
60ad72da55ac74 Sven Eckelmann 2019-07-24 593 sband = ieee80211_get_sband(sdata);
60ad72da55ac74 Sven Eckelmann 2019-07-24 594 if (!sband)
60ad72da55ac74 Sven Eckelmann 2019-07-24 595 return -EINVAL;
60ad72da55ac74 Sven Eckelmann 2019-07-24 596
60ad72da55ac74 Sven Eckelmann 2019-07-24 597 he_cap = ieee80211_get_he_iftype_cap(sband, NL80211_IFTYPE_MESH_POINT);
60ad72da55ac74 Sven Eckelmann 2019-07-24 598 if (!he_cap ||
60ad72da55ac74 Sven Eckelmann 2019-07-24 599 sdata->vif.bss_conf.chandef.width == NL80211_CHAN_WIDTH_20_NOHT ||
60ad72da55ac74 Sven Eckelmann 2019-07-24 600 sdata->vif.bss_conf.chandef.width == NL80211_CHAN_WIDTH_5 ||
60ad72da55ac74 Sven Eckelmann 2019-07-24 601 sdata->vif.bss_conf.chandef.width == NL80211_CHAN_WIDTH_10)
60ad72da55ac74 Sven Eckelmann 2019-07-24 602 return 0;
60ad72da55ac74 Sven Eckelmann 2019-07-24 603
ef32fba11e9097 Pradeep Kumar Chitrapu 2020-07-14 604 sdata->vif.bss_conf.he_support = true;
ef32fba11e9097 Pradeep Kumar Chitrapu 2020-07-14 605
d1b7524b3ea140 Rajkumar Manoharan 2020-05-28 606 len = 2 + 1 + sizeof(struct ieee80211_he_operation);
d1b7524b3ea140 Rajkumar Manoharan 2020-05-28 607 if (sdata->vif.bss_conf.chandef.chan->band == NL80211_BAND_6GHZ)
d1b7524b3ea140 Rajkumar Manoharan 2020-05-28 608 len += sizeof(struct ieee80211_he_6ghz_oper);
d1b7524b3ea140 Rajkumar Manoharan 2020-05-28 609
d1b7524b3ea140 Rajkumar Manoharan 2020-05-28 610 if (skb_tailroom(skb) < len)
60ad72da55ac74 Sven Eckelmann 2019-07-24 611 return -ENOMEM;
60ad72da55ac74 Sven Eckelmann 2019-07-24 612
d1b7524b3ea140 Rajkumar Manoharan 2020-05-28 613 pos = skb_put(skb, len);
d1b7524b3ea140 Rajkumar Manoharan 2020-05-28 @614 ieee80211_ie_build_he_oper(pos, &sdata->vif.bss_conf.chandef);
60ad72da55ac74 Sven Eckelmann 2019-07-24 615
60ad72da55ac74 Sven Eckelmann 2019-07-24 616 return 0;
60ad72da55ac74 Sven Eckelmann 2019-07-24 617 }
60ad72da55ac74 Sven Eckelmann 2019-07-24 618
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years, 2 months
Re: [PATCH] hwmon: add fan/pwm driver for corsair h100i platinum
by kernel test robot
Hi jaap,
Thank you for the patch! Yet something to improve:
[auto build test ERROR on hwmon/hwmon-next]
[also build test ERROR on v5.8-rc5 next-20200714]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use as documented in
https://git-scm.com/docs/git-format-patch]
url: https://github.com/0day-ci/linux/commits/jaap-aarts/hwmon-add-fan-pwm-dri...
base: https://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging.git hwmon-next
config: x86_64-allyesconfig (attached as .config)
compiler: clang version 11.0.0 (https://github.com/llvm/llvm-project 02946de3802d3bc65bc9f2eb9b8d4969b5a7add8)
reproduce (this is a W=1 build):
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# install x86_64 cross compiling tool for clang build
# apt-get install binutils-x86-64-linux-gnu
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=x86_64
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All error/warnings (new ones prefixed by >>):
>> drivers/hwmon/asetek_gen6.c:212:12: error: incompatible pointer types passing 'char [43]' to parameter of type 'const struct device *' [-Werror,-Wincompatible-pointer-types]
dev_info("[*] Failled setting fan curve %d,%d,%d/%d\n",
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/dev_printk.h:110:12: note: expanded from macro 'dev_info'
_dev_info(dev, dev_fmt(fmt), ##__VA_ARGS__)
^~~
include/linux/dev_printk.h:48:37: note: passing argument to parameter 'dev' here
void _dev_info(const struct device *dev, const char *fmt, ...);
^
>> drivers/hwmon/asetek_gen6.c:213:5: warning: incompatible integer to pointer conversion passing 'char' to parameter of type 'const char *'; take the address with & [-Wint-conversion]
recv_buf[0], recv_buf[1], recv_buf[2], recv_buf[3]);
^~~~~~~~~~~
&
include/linux/dev_printk.h:110:25: note: expanded from macro 'dev_info'
_dev_info(dev, dev_fmt(fmt), ##__VA_ARGS__)
^~~
include/linux/dev_printk.h:19:22: note: expanded from macro 'dev_fmt'
#define dev_fmt(fmt) fmt
^~~
include/linux/dev_printk.h:48:54: note: passing argument to parameter 'fmt' here
void _dev_info(const struct device *dev, const char *fmt, ...);
^
drivers/hwmon/asetek_gen6.c:174:5: warning: no previous prototype for function 'set_fan_rpm_curve' [-Wmissing-prototypes]
int set_fan_rpm_curve(struct driver *cdev, struct hwmon_fan_data *fan_data,
^
drivers/hwmon/asetek_gen6.c:174:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
int set_fan_rpm_curve(struct driver *cdev, struct hwmon_fan_data *fan_data,
^
static
drivers/hwmon/asetek_gen6.c:246:12: error: incompatible pointer types passing 'char [41]' to parameter of type 'const struct device *' [-Werror,-Wincompatible-pointer-types]
dev_info("[*] Failled setting fan rpm %d,%d,%d/%d\n",
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/dev_printk.h:110:12: note: expanded from macro 'dev_info'
_dev_info(dev, dev_fmt(fmt), ##__VA_ARGS__)
^~~
include/linux/dev_printk.h:48:37: note: passing argument to parameter 'dev' here
void _dev_info(const struct device *dev, const char *fmt, ...);
^
drivers/hwmon/asetek_gen6.c:247:5: warning: incompatible integer to pointer conversion passing 'char' to parameter of type 'const char *'; take the address with & [-Wint-conversion]
recv_buf[0], recv_buf[1], recv_buf[2], recv_buf[3]);
^~~~~~~~~~~
&
include/linux/dev_printk.h:110:25: note: expanded from macro 'dev_info'
_dev_info(dev, dev_fmt(fmt), ##__VA_ARGS__)
^~~
include/linux/dev_printk.h:19:22: note: expanded from macro 'dev_fmt'
#define dev_fmt(fmt) fmt
^~~
include/linux/dev_printk.h:48:54: note: passing argument to parameter 'fmt' here
void _dev_info(const struct device *dev, const char *fmt, ...);
^
drivers/hwmon/asetek_gen6.c:217:5: warning: no previous prototype for function 'set_fan_target_rpm' [-Wmissing-prototypes]
int set_fan_target_rpm(struct driver *cdev, struct hwmon_fan_data *fan_data,
^
drivers/hwmon/asetek_gen6.c:217:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
int set_fan_target_rpm(struct driver *cdev, struct hwmon_fan_data *fan_data,
^
static
drivers/hwmon/asetek_gen6.c:251:6: warning: no previous prototype for function 'get_fan_target_rpm' [-Wmissing-prototypes]
void get_fan_target_rpm(struct hwmon_fan_data *fan_data, long *val)
^
drivers/hwmon/asetek_gen6.c:251:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
void get_fan_target_rpm(struct hwmon_fan_data *fan_data, long *val)
^
static
drivers/hwmon/asetek_gen6.c:280:12: error: incompatible pointer types passing 'char [44]' to parameter of type 'const struct device *' [-Werror,-Wincompatible-pointer-types]
dev_info("[*] Failled retrieving fan rmp %d,%d,%d/%d\n",
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/dev_printk.h:110:12: note: expanded from macro 'dev_info'
_dev_info(dev, dev_fmt(fmt), ##__VA_ARGS__)
^~~
include/linux/dev_printk.h:48:37: note: passing argument to parameter 'dev' here
void _dev_info(const struct device *dev, const char *fmt, ...);
^
drivers/hwmon/asetek_gen6.c:281:5: warning: incompatible integer to pointer conversion passing 'char' to parameter of type 'const char *'; take the address with & [-Wint-conversion]
recv_buf[0], recv_buf[1], recv_buf[2], recv_buf[3]);
^~~~~~~~~~~
&
include/linux/dev_printk.h:110:25: note: expanded from macro 'dev_info'
_dev_info(dev, dev_fmt(fmt), ##__VA_ARGS__)
^~~
include/linux/dev_printk.h:19:22: note: expanded from macro 'dev_fmt'
#define dev_fmt(fmt) fmt
^~~
include/linux/dev_printk.h:48:54: note: passing argument to parameter 'fmt' here
void _dev_info(const struct device *dev, const char *fmt, ...);
^
drivers/hwmon/asetek_gen6.c:256:5: warning: no previous prototype for function 'get_fan_current_rpm' [-Wmissing-prototypes]
int get_fan_current_rpm(struct driver *cdev, struct hwmon_fan_data *fan_data,
^
drivers/hwmon/asetek_gen6.c:256:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
int get_fan_current_rpm(struct driver *cdev, struct hwmon_fan_data *fan_data,
^
static
drivers/hwmon/asetek_gen6.c:315:12: error: incompatible pointer types passing 'char [41]' to parameter of type 'const struct device *' [-Werror,-Wincompatible-pointer-types]
dev_info("[*] Failled setting fan pwm %d,%d,%d/%d\n",
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/dev_printk.h:110:12: note: expanded from macro 'dev_info'
_dev_info(dev, dev_fmt(fmt), ##__VA_ARGS__)
^~~
include/linux/dev_printk.h:48:37: note: passing argument to parameter 'dev' here
void _dev_info(const struct device *dev, const char *fmt, ...);
^
>> drivers/hwmon/asetek_gen6.c:316:5: warning: incompatible integer to pointer conversion passing 'unsigned char' to parameter of type 'const char *' [-Wint-conversion]
recv_buf[0], recv_buf[1], recv_buf[2], recv_buf[3]);
^~~~~~~~~~~
include/linux/dev_printk.h:110:25: note: expanded from macro 'dev_info'
_dev_info(dev, dev_fmt(fmt), ##__VA_ARGS__)
^~~
include/linux/dev_printk.h:19:22: note: expanded from macro 'dev_fmt'
#define dev_fmt(fmt) fmt
^~~
include/linux/dev_printk.h:48:54: note: passing argument to parameter 'fmt' here
void _dev_info(const struct device *dev, const char *fmt, ...);
^
drivers/hwmon/asetek_gen6.c:287:5: warning: no previous prototype for function 'set_fan_target_pwm' [-Wmissing-prototypes]
int set_fan_target_pwm(struct driver *cdev, struct hwmon_fan_data *fan_data,
^
drivers/hwmon/asetek_gen6.c:287:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
int set_fan_target_pwm(struct driver *cdev, struct hwmon_fan_data *fan_data,
^
static
drivers/hwmon/asetek_gen6.c:320:9: warning: no previous prototype for function 'is_visible_func' [-Wmissing-prototypes]
umode_t is_visible_func(const void *d, enum hwmon_sensor_types type, u32 attr,
^
drivers/hwmon/asetek_gen6.c:320:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
umode_t is_visible_func(const void *d, enum hwmon_sensor_types type, u32 attr,
^
static
drivers/hwmon/asetek_gen6.c:475:5: warning: no previous prototype for function 'read_func' [-Wmissing-prototypes]
int read_func(struct device *dev, enum hwmon_sensor_types type, u32 attr,
^
drivers/hwmon/asetek_gen6.c:475:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
int read_func(struct device *dev, enum hwmon_sensor_types type, u32 attr,
^
static
drivers/hwmon/asetek_gen6.c:556:6: warning: no previous prototype for function 'does_fan_exist' [-Wmissing-prototypes]
bool does_fan_exist(struct driver *cdev, int channel)
^
drivers/hwmon/asetek_gen6.c:556:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
bool does_fan_exist(struct driver *cdev, int channel)
^
static
drivers/hwmon/asetek_gen6.c:569:16: warning: implicit conversion from 'int' to 'char' changes value from 600 to 88 [-Wconstant-conversion]
send_buf[3] = 600;
~ ^~~
drivers/hwmon/asetek_gen6.c:584:5: warning: no previous prototype for function 'get_fan_count' [-Wmissing-prototypes]
int get_fan_count(struct driver *dev)
^
drivers/hwmon/asetek_gen6.c:584:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
int get_fan_count(struct driver *dev)
^
static
>> drivers/hwmon/asetek_gen6.c:650:30: error: too few arguments provided to function-like macro invocation
dev_info("[*] Setup hwmon\n");
^
include/linux/dev_printk.h:109:9: note: macro 'dev_info' defined here
#define dev_info(dev, fmt, ...) \
^
>> drivers/hwmon/asetek_gen6.c:650:2: error: use of undeclared identifier 'dev_info'; did you mean '_dev_info'?
dev_info("[*] Setup hwmon\n");
^~~~~~~~
_dev_info
include/linux/dev_printk.h:48:6: note: '_dev_info' declared here
void _dev_info(const struct device *dev, const char *fmt, ...);
^
drivers/hwmon/asetek_gen6.c:650:2: warning: expression result unused [-Wunused-value]
dev_info("[*] Setup hwmon\n");
^~~~~~~~
drivers/hwmon/asetek_gen6.c:593:6: warning: no previous prototype for function 'hwmon_init' [-Wmissing-prototypes]
void hwmon_init(struct driver *dev)
^
drivers/hwmon/asetek_gen6.c:593:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
void hwmon_init(struct driver *dev)
^
static
drivers/hwmon/asetek_gen6.c:656:35: error: too few arguments provided to function-like macro invocation
dev_info("[*] HWMON DISCONNECT\n");
^
include/linux/dev_printk.h:109:9: note: macro 'dev_info' defined here
#define dev_info(dev, fmt, ...) \
^
drivers/hwmon/asetek_gen6.c:656:2: error: use of undeclared identifier 'dev_info'; did you mean '_dev_info'?
dev_info("[*] HWMON DISCONNECT\n");
^~~~~~~~
_dev_info
include/linux/dev_printk.h:48:6: note: '_dev_info' declared here
void _dev_info(const struct device *dev, const char *fmt, ...);
^
drivers/hwmon/asetek_gen6.c:656:2: warning: expression result unused [-Wunused-value]
dev_info("[*] HWMON DISCONNECT\n");
^~~~~~~~
drivers/hwmon/asetek_gen6.c:653:6: warning: no previous prototype for function 'hwmon_deinit' [-Wmissing-prototypes]
void hwmon_deinit(struct driver *dev)
^
drivers/hwmon/asetek_gen6.c:653:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
void hwmon_deinit(struct driver *dev)
^
static
drivers/hwmon/asetek_gen6.c:670:5: warning: no previous prototype for function 'init_device' [-Wmissing-prototypes]
int init_device(struct usb_device *udev)
^
drivers/hwmon/asetek_gen6.c:670:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
int init_device(struct usb_device *udev)
^
static
drivers/hwmon/asetek_gen6.c:688:5: warning: no previous prototype for function 'deinit_device' [-Wmissing-prototypes]
int deinit_device(struct usb_device *udev)
^
drivers/hwmon/asetek_gen6.c:688:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
int deinit_device(struct usb_device *udev)
^
static
20 warnings and 8 errors generated.
vim +212 drivers/hwmon/asetek_gen6.c
173
174 int set_fan_rpm_curve(struct driver *cdev, struct hwmon_fan_data *fan_data,
175 struct curve_point point[7])
176 {
177 int retval;
178 int wrote;
179 int sndpipe = usb_sndbulkpipe(cdev->udev, cdev->bulk_out_endpointAddr);
180 int rcvpipe = usb_rcvbulkpipe(cdev->udev, cdev->bulk_in_endpointAddr);
181 char *send_buf = cdev->bulk_out_buffer;
182 char *recv_buf = cdev->bulk_in_buffer;
183
184 memcpy(fan_data->curve, point, sizeof(fan_data->curve));
185
186 send_buf[0] = 0x40;
187 send_buf[1] = fan_data->fan_channel;
188 send_buf[2] = point[0].temp;
189 send_buf[3] = point[1].temp;
190 send_buf[4] = point[2].temp;
191 send_buf[5] = point[3].temp;
192 send_buf[6] = point[4].temp;
193 send_buf[7] = point[5].temp;
194 send_buf[8] = point[6].temp;
195 send_buf[9] = point[0].pwm;
196 send_buf[10] = point[1].pwm;
197 send_buf[11] = point[2].pwm;
198 send_buf[12] = point[3].pwm;
199 send_buf[13] = point[4].pwm;
200 send_buf[14] = point[5].pwm;
201 send_buf[15] = point[6].pwm;
202
203 retval = usb_bulk_msg(cdev->udev, sndpipe, send_buf, 16, &wrote, 100);
204 if (retval != 0)
205 return retval;
206
207 retval = usb_bulk_msg(cdev->udev, rcvpipe, recv_buf, 4, &wrote, 100);
208 if (retval != 0)
209 return retval;
210
211 if (!check_succes(send_buf[0], recv_buf))
> 212 dev_info("[*] Failled setting fan curve %d,%d,%d/%d\n",
> 213 recv_buf[0], recv_buf[1], recv_buf[2], recv_buf[3]);
214 return 0;
215 }
216
217 int set_fan_target_rpm(struct driver *cdev, struct hwmon_fan_data *fan_data,
218 long val)
219 {
220 int retval;
221 int wrote;
222 int sndpipe = usb_sndbulkpipe(cdev->udev, cdev->bulk_out_endpointAddr);
223 int rcvpipe = usb_rcvbulkpipe(cdev->udev, cdev->bulk_in_endpointAddr);
224
225 char *send_buf = cdev->bulk_out_buffer;
226 char *recv_buf = cdev->bulk_in_buffer;
227
228 fan_data->fan_target = val;
229 fan_data->fan_pwm_target = 0;
230
231 send_buf[0] = 0x43;
232 send_buf[1] = fan_data->fan_channel;
233 send_buf[2] = (fan_data->fan_target >> 8);
234 send_buf[3] = fan_data->fan_target;
235
236 retval = usb_bulk_msg(cdev->udev, sndpipe, send_buf, 4, &wrote, 100);
237 if (retval != 0)
238 return retval;
239
240 retval = usb_bulk_msg(cdev->udev, rcvpipe, recv_buf, 6, &wrote, 100000);
241 if (retval != 0)
242 return retval;
243
244 //no error
245 if (!check_succes(send_buf[0], recv_buf))
246 dev_info("[*] Failled setting fan rpm %d,%d,%d/%d\n",
247 recv_buf[0], recv_buf[1], recv_buf[2], recv_buf[3]);
248 return 0;
249 }
250
251 void get_fan_target_rpm(struct hwmon_fan_data *fan_data, long *val)
252 {
253 *val = fan_data->fan_target;
254 }
255
256 int get_fan_current_rpm(struct driver *cdev, struct hwmon_fan_data *fan_data,
257 long *val)
258 {
259 int retval;
260 int wrote;
261 int sndpipe = usb_sndbulkpipe(cdev->udev, cdev->bulk_out_endpointAddr);
262 int rcvpipe = usb_rcvbulkpipe(cdev->udev, cdev->bulk_in_endpointAddr);
263
264 char *send_buf = cdev->bulk_out_buffer;
265 char *recv_buf = cdev->bulk_in_buffer;
266
267 send_buf[0] = 0x41;
268 send_buf[1] = fan_data->fan_channel;
269
270 retval = usb_bulk_msg(cdev->udev, sndpipe, send_buf, 2, &wrote, 100);
271 if (retval != 0)
272 return retval;
273
274 retval = usb_bulk_msg(cdev->udev, rcvpipe, recv_buf, 6, &wrote, 100);
275 if (retval != 0)
276 return retval;
277
278 if (!check_succes(0x41, recv_buf) ||
279 recv_buf[3] != fan_data->fan_channel)
280 dev_info("[*] Failled retrieving fan rmp %d,%d,%d/%d\n",
281 recv_buf[0], recv_buf[1], recv_buf[2], recv_buf[3]);
282
283 *val = (((uint8_t)recv_buf[4]) << 8) + (uint8_t)recv_buf[5];
284 return 0;
285 }
286
287 int set_fan_target_pwm(struct driver *cdev, struct hwmon_fan_data *fan_data,
288 long val)
289 {
290 int retval;
291 int wrote;
292 int sndpipe = usb_sndbulkpipe(cdev->udev, cdev->bulk_out_endpointAddr);
293 int rcvpipe = usb_rcvbulkpipe(cdev->udev, cdev->bulk_in_endpointAddr);
294
295 unsigned char *send_buf = cdev->bulk_out_buffer;
296 unsigned char *recv_buf = cdev->bulk_in_buffer;
297
298 fan_data->fan_pwm_target = val;
299 fan_data->fan_target = 0;
300
301 send_buf[0] = 0x42;
302 send_buf[1] = fan_data->fan_channel;
303 send_buf[3] = fan_data->fan_pwm_target;
304
305 retval = usb_bulk_msg(cdev->udev, sndpipe, send_buf, 4, &wrote, 100);
306 if (retval != 0)
307 return retval;
308
309 retval = usb_bulk_msg(cdev->udev, rcvpipe, recv_buf, 6, &wrote, 100000);
310 if (retval != 0)
311 return retval;
312
313 //no error
314 if (!check_succes(send_buf[0], recv_buf))
315 dev_info("[*] Failled setting fan pwm %d,%d,%d/%d\n",
> 316 recv_buf[0], recv_buf[1], recv_buf[2], recv_buf[3]);
317 return 0;
318 }
319
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years, 2 months
Re: [PATCH 1/2] sched/core: Rename and move schedutil_cpu_util to core.c
by kernel test robot
Hi Viresh,
I love your patch! Yet something to improve:
[auto build test ERROR on tip/sched/core]
[cannot apply to tip/auto-latest pm/linux-next linus/master v5.8-rc5 next-20200713]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use as documented in
https://git-scm.com/docs/git-format-patch]
url: https://github.com/0day-ci/linux/commits/Viresh-Kumar/cpufreq_cooling-Get...
base: https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git 9d246053a69196c7c27068870e9b4b66ac536f68
config: x86_64-allnoconfig (attached as .config)
compiler: clang version 11.0.0 (https://github.com/llvm/llvm-project 02946de3802d3bc65bc9f2eb9b8d4969b5a7add8)
reproduce (this is a W=1 build):
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# install x86_64 cross compiling tool for clang build
# apt-get install binutils-x86-64-linux-gnu
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=x86_64
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All errors (new ones prefixed by >>):
In file included from kernel/sched/core.c:13:
>> kernel/sched/sched.h:2493:23: error: no member named 'avg_dl' in 'struct rq'
return READ_ONCE(rq->avg_dl.util_avg);
~~ ^
include/linux/compiler.h:291:33: note: expanded from macro 'READ_ONCE'
compiletime_assert_rwonce_type(x); \
^
include/linux/compiler.h:405:35: note: expanded from macro 'compiletime_assert_rwonce_type'
compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \
^
include/linux/compiler_types.h:300:10: note: expanded from macro '__native_word'
(sizeof(t) == sizeof(char) || sizeof(t) == sizeof(short) || \
^
include/linux/compiler.h:392:22: note: expanded from macro 'compiletime_assert'
_compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
^~~~~~~~~
include/linux/compiler.h:380:23: note: expanded from macro '_compiletime_assert'
__compiletime_assert(condition, msg, prefix, suffix)
^~~~~~~~~
include/linux/compiler.h:372:9: note: expanded from macro '__compiletime_assert'
if (!(condition)) \
^~~~~~~~~
In file included from kernel/sched/core.c:13:
>> kernel/sched/sched.h:2493:23: error: no member named 'avg_dl' in 'struct rq'
return READ_ONCE(rq->avg_dl.util_avg);
~~ ^
include/linux/compiler.h:291:33: note: expanded from macro 'READ_ONCE'
compiletime_assert_rwonce_type(x); \
^
include/linux/compiler.h:405:35: note: expanded from macro 'compiletime_assert_rwonce_type'
compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \
^
include/linux/compiler_types.h:300:39: note: expanded from macro '__native_word'
(sizeof(t) == sizeof(char) || sizeof(t) == sizeof(short) || \
^
include/linux/compiler.h:392:22: note: expanded from macro 'compiletime_assert'
_compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
^~~~~~~~~
include/linux/compiler.h:380:23: note: expanded from macro '_compiletime_assert'
__compiletime_assert(condition, msg, prefix, suffix)
^~~~~~~~~
include/linux/compiler.h:372:9: note: expanded from macro '__compiletime_assert'
if (!(condition)) \
^~~~~~~~~
In file included from kernel/sched/core.c:13:
>> kernel/sched/sched.h:2493:23: error: no member named 'avg_dl' in 'struct rq'
return READ_ONCE(rq->avg_dl.util_avg);
~~ ^
include/linux/compiler.h:291:33: note: expanded from macro 'READ_ONCE'
compiletime_assert_rwonce_type(x); \
^
include/linux/compiler.h:405:35: note: expanded from macro 'compiletime_assert_rwonce_type'
compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \
^
include/linux/compiler_types.h:301:10: note: expanded from macro '__native_word'
sizeof(t) == sizeof(int) || sizeof(t) == sizeof(long))
^
include/linux/compiler.h:392:22: note: expanded from macro 'compiletime_assert'
_compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
^~~~~~~~~
include/linux/compiler.h:380:23: note: expanded from macro '_compiletime_assert'
__compiletime_assert(condition, msg, prefix, suffix)
^~~~~~~~~
include/linux/compiler.h:372:9: note: expanded from macro '__compiletime_assert'
if (!(condition)) \
^~~~~~~~~
In file included from kernel/sched/core.c:13:
>> kernel/sched/sched.h:2493:23: error: no member named 'avg_dl' in 'struct rq'
return READ_ONCE(rq->avg_dl.util_avg);
~~ ^
include/linux/compiler.h:291:33: note: expanded from macro 'READ_ONCE'
compiletime_assert_rwonce_type(x); \
^
include/linux/compiler.h:405:35: note: expanded from macro 'compiletime_assert_rwonce_type'
compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \
^
include/linux/compiler_types.h:301:38: note: expanded from macro '__native_word'
sizeof(t) == sizeof(int) || sizeof(t) == sizeof(long))
^
include/linux/compiler.h:392:22: note: expanded from macro 'compiletime_assert'
_compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
^~~~~~~~~
include/linux/compiler.h:380:23: note: expanded from macro '_compiletime_assert'
__compiletime_assert(condition, msg, prefix, suffix)
^~~~~~~~~
include/linux/compiler.h:372:9: note: expanded from macro '__compiletime_assert'
if (!(condition)) \
^~~~~~~~~
In file included from kernel/sched/core.c:13:
>> kernel/sched/sched.h:2493:23: error: no member named 'avg_dl' in 'struct rq'
return READ_ONCE(rq->avg_dl.util_avg);
~~ ^
include/linux/compiler.h:291:33: note: expanded from macro 'READ_ONCE'
compiletime_assert_rwonce_type(x); \
^
include/linux/compiler.h:405:48: note: expanded from macro 'compiletime_assert_rwonce_type'
compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \
^
include/linux/compiler.h:392:22: note: expanded from macro 'compiletime_assert'
_compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
^~~~~~~~~
include/linux/compiler.h:380:23: note: expanded from macro '_compiletime_assert'
__compiletime_assert(condition, msg, prefix, suffix)
^~~~~~~~~
include/linux/compiler.h:372:9: note: expanded from macro '__compiletime_assert'
if (!(condition)) \
^~~~~~~~~
In file included from kernel/sched/core.c:13:
>> kernel/sched/sched.h:2493:23: error: no member named 'avg_dl' in 'struct rq'
return READ_ONCE(rq->avg_dl.util_avg);
~~ ^
include/linux/compiler.h:292:21: note: expanded from macro 'READ_ONCE'
__READ_ONCE_SCALAR(x); \
^
include/linux/compiler.h:284:25: note: expanded from macro '__READ_ONCE_SCALAR'
__unqual_scalar_typeof(x) __x = __READ_ONCE(x); \
^
include/linux/compiler_types.h:288:13: note: expanded from macro '__unqual_scalar_typeof'
_Generic((x), \
^
In file included from kernel/sched/core.c:13:
>> kernel/sched/sched.h:2493:23: error: no member named 'avg_dl' in 'struct rq'
return READ_ONCE(rq->avg_dl.util_avg);
~~ ^
include/linux/compiler.h:292:21: note: expanded from macro 'READ_ONCE'
__READ_ONCE_SCALAR(x); \
^
include/linux/compiler.h:284:46: note: expanded from macro '__READ_ONCE_SCALAR'
__unqual_scalar_typeof(x) __x = __READ_ONCE(x); \
^
include/linux/compiler.h:280:65: note: expanded from macro '__READ_ONCE'
#define __READ_ONCE(x) (*(const volatile __unqual_scalar_typeof(x) *)&(x))
^
include/linux/compiler_types.h:288:13: note: expanded from macro '__unqual_scalar_typeof'
_Generic((x), \
^
In file included from kernel/sched/core.c:13:
>> kernel/sched/sched.h:2493:23: error: no member named 'avg_dl' in 'struct rq'
return READ_ONCE(rq->avg_dl.util_avg);
~~ ^
include/linux/compiler.h:292:21: note: expanded from macro 'READ_ONCE'
__READ_ONCE_SCALAR(x); \
^
include/linux/compiler.h:284:46: note: expanded from macro '__READ_ONCE_SCALAR'
__unqual_scalar_typeof(x) __x = __READ_ONCE(x); \
^
include/linux/compiler.h:280:72: note: expanded from macro '__READ_ONCE'
#define __READ_ONCE(x) (*(const volatile __unqual_scalar_typeof(x) *)&(x))
^
In file included from kernel/sched/core.c:13:
>> kernel/sched/sched.h:2493:23: error: no member named 'avg_dl' in 'struct rq'
return READ_ONCE(rq->avg_dl.util_avg);
~~ ^
include/linux/compiler.h:292:21: note: expanded from macro 'READ_ONCE'
__READ_ONCE_SCALAR(x); \
^
include/linux/compiler.h:286:10: note: expanded from macro '__READ_ONCE_SCALAR'
(typeof(x))__x; \
^
In file included from kernel/sched/core.c:13:
>> kernel/sched/sched.h:2493:9: error: returning 'void' from a function with incompatible result type 'unsigned long'
return READ_ONCE(rq->avg_dl.util_avg);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/compiler.h:289:28: note: expanded from macro 'READ_ONCE'
#define READ_ONCE(x) \
^
In file included from kernel/sched/core.c:13:
>> kernel/sched/sched.h:2498:41: error: no member named 'avg' in 'struct cfs_rq'
unsigned long util = READ_ONCE(rq->cfs.avg.util_avg);
~~~~~~~ ^
include/linux/compiler.h:291:33: note: expanded from macro 'READ_ONCE'
compiletime_assert_rwonce_type(x); \
^
include/linux/compiler.h:405:35: note: expanded from macro 'compiletime_assert_rwonce_type'
compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \
^
include/linux/compiler_types.h:300:10: note: expanded from macro '__native_word'
(sizeof(t) == sizeof(char) || sizeof(t) == sizeof(short) || \
^
include/linux/compiler.h:392:22: note: expanded from macro 'compiletime_assert'
_compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
^~~~~~~~~
include/linux/compiler.h:380:23: note: expanded from macro '_compiletime_assert'
__compiletime_assert(condition, msg, prefix, suffix)
^~~~~~~~~
include/linux/compiler.h:372:9: note: expanded from macro '__compiletime_assert'
if (!(condition)) \
^~~~~~~~~
In file included from kernel/sched/core.c:13:
>> kernel/sched/sched.h:2498:41: error: no member named 'avg' in 'struct cfs_rq'
unsigned long util = READ_ONCE(rq->cfs.avg.util_avg);
~~~~~~~ ^
include/linux/compiler.h:291:33: note: expanded from macro 'READ_ONCE'
compiletime_assert_rwonce_type(x); \
^
include/linux/compiler.h:405:35: note: expanded from macro 'compiletime_assert_rwonce_type'
compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \
^
include/linux/compiler_types.h:300:39: note: expanded from macro '__native_word'
(sizeof(t) == sizeof(char) || sizeof(t) == sizeof(short) || \
^
include/linux/compiler.h:392:22: note: expanded from macro 'compiletime_assert'
_compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
^~~~~~~~~
include/linux/compiler.h:380:23: note: expanded from macro '_compiletime_assert'
__compiletime_assert(condition, msg, prefix, suffix)
^~~~~~~~~
include/linux/compiler.h:372:9: note: expanded from macro '__compiletime_assert'
if (!(condition)) \
^~~~~~~~~
In file included from kernel/sched/core.c:13:
>> kernel/sched/sched.h:2498:41: error: no member named 'avg' in 'struct cfs_rq'
unsigned long util = READ_ONCE(rq->cfs.avg.util_avg);
~~~~~~~ ^
include/linux/compiler.h:291:33: note: expanded from macro 'READ_ONCE'
compiletime_assert_rwonce_type(x); \
^
include/linux/compiler.h:405:35: note: expanded from macro 'compiletime_assert_rwonce_type'
compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \
^
include/linux/compiler_types.h:301:10: note: expanded from macro '__native_word'
sizeof(t) == sizeof(int) || sizeof(t) == sizeof(long))
^
include/linux/compiler.h:392:22: note: expanded from macro 'compiletime_assert'
_compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
^~~~~~~~~
include/linux/compiler.h:380:23: note: expanded from macro '_compiletime_assert'
__compiletime_assert(condition, msg, prefix, suffix)
^~~~~~~~~
include/linux/compiler.h:372:9: note: expanded from macro '__compiletime_assert'
if (!(condition)) \
^~~~~~~~~
In file included from kernel/sched/core.c:13:
>> kernel/sched/sched.h:2498:41: error: no member named 'avg' in 'struct cfs_rq'
unsigned long util = READ_ONCE(rq->cfs.avg.util_avg);
~~~~~~~ ^
include/linux/compiler.h:291:33: note: expanded from macro 'READ_ONCE'
compiletime_assert_rwonce_type(x); \
^
include/linux/compiler.h:405:35: note: expanded from macro 'compiletime_assert_rwonce_type'
compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \
^
include/linux/compiler_types.h:301:38: note: expanded from macro '__native_word'
sizeof(t) == sizeof(int) || sizeof(t) == sizeof(long))
^
include/linux/compiler.h:392:22: note: expanded from macro 'compiletime_assert'
_compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
^~~~~~~~~
include/linux/compiler.h:380:23: note: expanded from macro '_compiletime_assert'
__compiletime_assert(condition, msg, prefix, suffix)
^~~~~~~~~
include/linux/compiler.h:372:9: note: expanded from macro '__compiletime_assert'
if (!(condition)) \
^~~~~~~~~
In file included from kernel/sched/core.c:13:
>> kernel/sched/sched.h:2498:41: error: no member named 'avg' in 'struct cfs_rq'
unsigned long util = READ_ONCE(rq->cfs.avg.util_avg);
~~~~~~~ ^
include/linux/compiler.h:291:33: note: expanded from macro 'READ_ONCE'
compiletime_assert_rwonce_type(x); \
^
include/linux/compiler.h:405:48: note: expanded from macro 'compiletime_assert_rwonce_type'
compiletime_assert(__native_word(t) || sizeof(t) == sizeof(long long), \
^
include/linux/compiler.h:392:22: note: expanded from macro 'compiletime_assert'
_compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
^~~~~~~~~
include/linux/compiler.h:380:23: note: expanded from macro '_compiletime_assert'
__compiletime_assert(condition, msg, prefix, suffix)
^~~~~~~~~
include/linux/compiler.h:372:9: note: expanded from macro '__compiletime_assert'
if (!(condition)) \
^~~~~~~~~
In file included from kernel/sched/core.c:13:
>> kernel/sched/sched.h:2498:41: error: no member named 'avg' in 'struct cfs_rq'
unsigned long util = READ_ONCE(rq->cfs.avg.util_avg);
~~~~~~~ ^
include/linux/compiler.h:292:21: note: expanded from macro 'READ_ONCE'
__READ_ONCE_SCALAR(x); \
^
include/linux/compiler.h:284:25: note: expanded from macro '__READ_ONCE_SCALAR'
__unqual_scalar_typeof(x) __x = __READ_ONCE(x); \
^
include/linux/compiler_types.h:288:13: note: expanded from macro '__unqual_scalar_typeof'
_Generic((x), \
^
In file included from kernel/sched/core.c:13:
>> kernel/sched/sched.h:2498:41: error: no member named 'avg' in 'struct cfs_rq'
unsigned long util = READ_ONCE(rq->cfs.avg.util_avg);
~~~~~~~ ^
include/linux/compiler.h:292:21: note: expanded from macro 'READ_ONCE'
__READ_ONCE_SCALAR(x); \
^
include/linux/compiler.h:284:46: note: expanded from macro '__READ_ONCE_SCALAR'
__unqual_scalar_typeof(x) __x = __READ_ONCE(x); \
^
include/linux/compiler.h:280:65: note: expanded from macro '__READ_ONCE'
#define __READ_ONCE(x) (*(const volatile __unqual_scalar_typeof(x) *)&(x))
^
include/linux/compiler_types.h:288:13: note: expanded from macro '__unqual_scalar_typeof'
_Generic((x), \
^
In file included from kernel/sched/core.c:13:
>> kernel/sched/sched.h:2498:41: error: no member named 'avg' in 'struct cfs_rq'
unsigned long util = READ_ONCE(rq->cfs.avg.util_avg);
~~~~~~~ ^
include/linux/compiler.h:292:21: note: expanded from macro 'READ_ONCE'
__READ_ONCE_SCALAR(x); \
^
include/linux/compiler.h:284:46: note: expanded from macro '__READ_ONCE_SCALAR'
__unqual_scalar_typeof(x) __x = __READ_ONCE(x); \
^
include/linux/compiler.h:280:72: note: expanded from macro '__READ_ONCE'
#define __READ_ONCE(x) (*(const volatile __unqual_scalar_typeof(x) *)&(x))
^
In file included from kernel/sched/core.c:13:
>> kernel/sched/sched.h:2498:41: error: no member named 'avg' in 'struct cfs_rq'
unsigned long util = READ_ONCE(rq->cfs.avg.util_avg);
~~~~~~~ ^
include/linux/compiler.h:292:21: note: expanded from macro 'READ_ONCE'
__READ_ONCE_SCALAR(x); \
^
include/linux/compiler.h:286:10: note: expanded from macro '__READ_ONCE_SCALAR'
(typeof(x))__x; \
^
fatal error: too many errors emitted, stopping now [-ferror-limit=]
20 errors generated.
vim +2493 kernel/sched/sched.h
d4edd662ac1657 Juri Lelli 2017-12-04 2490
8cc90515a4fa41 Vincent Guittot 2018-06-28 2491 static inline unsigned long cpu_util_dl(struct rq *rq)
8cc90515a4fa41 Vincent Guittot 2018-06-28 2492 {
8cc90515a4fa41 Vincent Guittot 2018-06-28 @2493 return READ_ONCE(rq->avg_dl.util_avg);
8cc90515a4fa41 Vincent Guittot 2018-06-28 2494 }
8cc90515a4fa41 Vincent Guittot 2018-06-28 2495
d4edd662ac1657 Juri Lelli 2017-12-04 2496 static inline unsigned long cpu_util_cfs(struct rq *rq)
d4edd662ac1657 Juri Lelli 2017-12-04 2497 {
a07630b8b2c16f Patrick Bellasi 2018-03-09 @2498 unsigned long util = READ_ONCE(rq->cfs.avg.util_avg);
a07630b8b2c16f Patrick Bellasi 2018-03-09 2499
a07630b8b2c16f Patrick Bellasi 2018-03-09 2500 if (sched_feat(UTIL_EST)) {
a07630b8b2c16f Patrick Bellasi 2018-03-09 2501 util = max_t(unsigned long, util,
a07630b8b2c16f Patrick Bellasi 2018-03-09 2502 READ_ONCE(rq->cfs.avg.util_est.enqueued));
a07630b8b2c16f Patrick Bellasi 2018-03-09 2503 }
a07630b8b2c16f Patrick Bellasi 2018-03-09 2504
a07630b8b2c16f Patrick Bellasi 2018-03-09 2505 return util;
d4edd662ac1657 Juri Lelli 2017-12-04 2506 }
371bf42732694d Vincent Guittot 2018-06-28 2507
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years, 2 months
Re: [PATCH bpf-next v2 1/4] bpf: setup socket family and addresses in bpf_prog_test_run_skb
by kernel test robot
Hi Dmitry,
Thank you for the patch! Yet something to improve:
[auto build test ERROR on bpf-next/master]
url: https://github.com/0day-ci/linux/commits/Dmitry-Yakunin/bpf-cgroup-skb-im...
base: https://git.kernel.org/pub/scm/linux/kernel/git/bpf/bpf-next.git master
config: microblaze-randconfig-r001-20200714 (attached as .config)
compiler: microblaze-linux-gcc (GCC) 9.3.0
reproduce (this is a W=1 build):
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=microblaze
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All errors (new ones prefixed by >>):
In file included from net/bpf/test_run.c:11:
net/bpf/test_run.c: In function 'bpf_prog_test_run_skb':
>> include/net/sock.h:380:37: error: 'struct sock_common' has no member named 'skc_v6_rcv_saddr'; did you mean 'skc_rcv_saddr'?
380 | #define sk_v6_rcv_saddr __sk_common.skc_v6_rcv_saddr
| ^~~~~~~~~~~~~~~~
net/bpf/test_run.c:460:7: note: in expansion of macro 'sk_v6_rcv_saddr'
460 | sk->sk_v6_rcv_saddr = ipv6_hdr(skb)->saddr;
| ^~~~~~~~~~~~~~~
>> include/net/sock.h:379:34: error: 'struct sock_common' has no member named 'skc_v6_daddr'; did you mean 'skc_daddr'?
379 | #define sk_v6_daddr __sk_common.skc_v6_daddr
| ^~~~~~~~~~~~
net/bpf/test_run.c:461:7: note: in expansion of macro 'sk_v6_daddr'
461 | sk->sk_v6_daddr = ipv6_hdr(skb)->daddr;
| ^~~~~~~~~~~
vim +380 include/net/sock.h
4dc6dc7162c08b Eric Dumazet 2009-07-15 359
68835aba4d9b74 Eric Dumazet 2010-11-30 360 #define sk_dontcopy_begin __sk_common.skc_dontcopy_begin
68835aba4d9b74 Eric Dumazet 2010-11-30 361 #define sk_dontcopy_end __sk_common.skc_dontcopy_end
4dc6dc7162c08b Eric Dumazet 2009-07-15 362 #define sk_hash __sk_common.skc_hash
5080546682bae3 Eric Dumazet 2013-10-02 363 #define sk_portpair __sk_common.skc_portpair
05dbc7b59481ca Eric Dumazet 2013-10-03 364 #define sk_num __sk_common.skc_num
05dbc7b59481ca Eric Dumazet 2013-10-03 365 #define sk_dport __sk_common.skc_dport
5080546682bae3 Eric Dumazet 2013-10-02 366 #define sk_addrpair __sk_common.skc_addrpair
5080546682bae3 Eric Dumazet 2013-10-02 367 #define sk_daddr __sk_common.skc_daddr
5080546682bae3 Eric Dumazet 2013-10-02 368 #define sk_rcv_saddr __sk_common.skc_rcv_saddr
^1da177e4c3f41 Linus Torvalds 2005-04-16 369 #define sk_family __sk_common.skc_family
^1da177e4c3f41 Linus Torvalds 2005-04-16 370 #define sk_state __sk_common.skc_state
^1da177e4c3f41 Linus Torvalds 2005-04-16 371 #define sk_reuse __sk_common.skc_reuse
055dc21a1d1d21 Tom Herbert 2013-01-22 372 #define sk_reuseport __sk_common.skc_reuseport
9fe516ba3fb29b Eric Dumazet 2014-06-27 373 #define sk_ipv6only __sk_common.skc_ipv6only
26abe14379f8e2 Eric W. Biederman 2015-05-08 374 #define sk_net_refcnt __sk_common.skc_net_refcnt
^1da177e4c3f41 Linus Torvalds 2005-04-16 375 #define sk_bound_dev_if __sk_common.skc_bound_dev_if
^1da177e4c3f41 Linus Torvalds 2005-04-16 376 #define sk_bind_node __sk_common.skc_bind_node
8feaf0c0a5488b Arnaldo Carvalho de Melo 2005-08-09 377 #define sk_prot __sk_common.skc_prot
07feaebfcc10cd Eric W. Biederman 2007-09-12 378 #define sk_net __sk_common.skc_net
efe4208f47f907 Eric Dumazet 2013-10-03 @379 #define sk_v6_daddr __sk_common.skc_v6_daddr
efe4208f47f907 Eric Dumazet 2013-10-03 @380 #define sk_v6_rcv_saddr __sk_common.skc_v6_rcv_saddr
33cf7c90fe2f97 Eric Dumazet 2015-03-11 381 #define sk_cookie __sk_common.skc_cookie
70da268b569d32 Eric Dumazet 2015-10-08 382 #define sk_incoming_cpu __sk_common.skc_incoming_cpu
8e5eb54d303b7c Eric Dumazet 2015-10-08 383 #define sk_flags __sk_common.skc_flags
ed53d0ab761f5c Eric Dumazet 2015-10-08 384 #define sk_rxhash __sk_common.skc_rxhash
efe4208f47f907 Eric Dumazet 2013-10-03 385
^1da177e4c3f41 Linus Torvalds 2005-04-16 386 socket_lock_t sk_lock;
9115e8cd2a0c6e Eric Dumazet 2016-12-03 387 atomic_t sk_drops;
9115e8cd2a0c6e Eric Dumazet 2016-12-03 388 int sk_rcvlowat;
9115e8cd2a0c6e Eric Dumazet 2016-12-03 389 struct sk_buff_head sk_error_queue;
8b27dae5a2e89a Eric Dumazet 2019-03-22 390 struct sk_buff *sk_rx_skb_cache;
b178bb3dfc30d9 Eric Dumazet 2010-11-16 391 struct sk_buff_head sk_receive_queue;
fa438ccfdfd3f6 Eric Dumazet 2007-03-04 392 /*
fa438ccfdfd3f6 Eric Dumazet 2007-03-04 393 * The backlog queue is special, it is always used with
fa438ccfdfd3f6 Eric Dumazet 2007-03-04 394 * the per-socket spinlock held and requires low latency
fa438ccfdfd3f6 Eric Dumazet 2007-03-04 395 * access. Therefore we special case it's implementation.
b178bb3dfc30d9 Eric Dumazet 2010-11-16 396 * Note : rmem_alloc is in this structure to fill a hole
b178bb3dfc30d9 Eric Dumazet 2010-11-16 397 * on 64bit arches, not because its logically part of
b178bb3dfc30d9 Eric Dumazet 2010-11-16 398 * backlog.
fa438ccfdfd3f6 Eric Dumazet 2007-03-04 399 */
fa438ccfdfd3f6 Eric Dumazet 2007-03-04 400 struct {
b178bb3dfc30d9 Eric Dumazet 2010-11-16 401 atomic_t rmem_alloc;
b178bb3dfc30d9 Eric Dumazet 2010-11-16 402 int len;
fa438ccfdfd3f6 Eric Dumazet 2007-03-04 403 struct sk_buff *head;
fa438ccfdfd3f6 Eric Dumazet 2007-03-04 404 struct sk_buff *tail;
fa438ccfdfd3f6 Eric Dumazet 2007-03-04 405 } sk_backlog;
b178bb3dfc30d9 Eric Dumazet 2010-11-16 406 #define sk_rmem_alloc sk_backlog.rmem_alloc
2c8c56e15df3d4 Eric Dumazet 2014-11-11 407
9115e8cd2a0c6e Eric Dumazet 2016-12-03 408 int sk_forward_alloc;
e0d1095ae34054 Cong Wang 2013-08-01 409 #ifdef CONFIG_NET_RX_BUSY_POLL
dafcc4380deec2 Eliezer Tamir 2013-06-14 410 unsigned int sk_ll_usec;
9115e8cd2a0c6e Eric Dumazet 2016-12-03 411 /* ===== mostly read cache line ===== */
9115e8cd2a0c6e Eric Dumazet 2016-12-03 412 unsigned int sk_napi_id;
b178bb3dfc30d9 Eric Dumazet 2010-11-16 413 #endif
b178bb3dfc30d9 Eric Dumazet 2010-11-16 414 int sk_rcvbuf;
b178bb3dfc30d9 Eric Dumazet 2010-11-16 415
b178bb3dfc30d9 Eric Dumazet 2010-11-16 416 struct sk_filter __rcu *sk_filter;
ceb5d58b217098 Eric Dumazet 2015-11-29 417 union {
eaefd1105bc431 Eric Dumazet 2011-02-18 418 struct socket_wq __rcu *sk_wq;
66256e0b15bd72 Randy Dunlap 2020-02-15 419 /* private: */
ceb5d58b217098 Eric Dumazet 2015-11-29 420 struct socket_wq *sk_wq_raw;
66256e0b15bd72 Randy Dunlap 2020-02-15 421 /* public: */
ceb5d58b217098 Eric Dumazet 2015-11-29 422 };
def8b4faff5ca3 Alexey Dobriyan 2008-10-28 423 #ifdef CONFIG_XFRM
d188ba86dd07a7 Eric Dumazet 2015-12-08 424 struct xfrm_policy __rcu *sk_policy[2];
def8b4faff5ca3 Alexey Dobriyan 2008-10-28 425 #endif
deaa58542b21d2 Eric Dumazet 2012-06-24 426 struct dst_entry *sk_rx_dst;
0e36cbb344575e Cong Wang 2013-01-22 427 struct dst_entry __rcu *sk_dst_cache;
^1da177e4c3f41 Linus Torvalds 2005-04-16 428 atomic_t sk_omem_alloc;
4e07a91c37c69e Arnaldo Carvalho de Melo 2007-05-29 429 int sk_sndbuf;
9115e8cd2a0c6e Eric Dumazet 2016-12-03 430
9115e8cd2a0c6e Eric Dumazet 2016-12-03 431 /* ===== cache line for TX ===== */
9115e8cd2a0c6e Eric Dumazet 2016-12-03 432 int sk_wmem_queued;
14afee4b6092fd Reshetova, Elena 2017-06-30 433 refcount_t sk_wmem_alloc;
9115e8cd2a0c6e Eric Dumazet 2016-12-03 434 unsigned long sk_tsq_flags;
75c119afe14f74 Eric Dumazet 2017-10-05 435 union {
9115e8cd2a0c6e Eric Dumazet 2016-12-03 436 struct sk_buff *sk_send_head;
75c119afe14f74 Eric Dumazet 2017-10-05 437 struct rb_root tcp_rtx_queue;
75c119afe14f74 Eric Dumazet 2017-10-05 438 };
472c2e07eef045 Eric Dumazet 2019-03-22 439 struct sk_buff *sk_tx_skb_cache;
^1da177e4c3f41 Linus Torvalds 2005-04-16 440 struct sk_buff_head sk_write_queue;
9115e8cd2a0c6e Eric Dumazet 2016-12-03 441 __s32 sk_peek_off;
9115e8cd2a0c6e Eric Dumazet 2016-12-03 442 int sk_write_pending;
9b8805a325591c Julian Anastasov 2017-02-06 443 __u32 sk_dst_pending_confirm;
218af599fa635b Eric Dumazet 2017-05-16 444 u32 sk_pacing_status; /* see enum sk_pacing */
9115e8cd2a0c6e Eric Dumazet 2016-12-03 445 long sk_sndtimeo;
9115e8cd2a0c6e Eric Dumazet 2016-12-03 446 struct timer_list sk_timer;
9115e8cd2a0c6e Eric Dumazet 2016-12-03 447 __u32 sk_priority;
9115e8cd2a0c6e Eric Dumazet 2016-12-03 448 __u32 sk_mark;
76a9ebe811fb3d Eric Dumazet 2018-10-15 449 unsigned long sk_pacing_rate; /* bytes per second */
76a9ebe811fb3d Eric Dumazet 2018-10-15 450 unsigned long sk_max_pacing_rate;
9115e8cd2a0c6e Eric Dumazet 2016-12-03 451 struct page_frag sk_frag;
9115e8cd2a0c6e Eric Dumazet 2016-12-03 452 netdev_features_t sk_route_caps;
9115e8cd2a0c6e Eric Dumazet 2016-12-03 453 netdev_features_t sk_route_nocaps;
0a6b2a1dc2a210 Eric Dumazet 2018-02-19 454 netdev_features_t sk_route_forced_caps;
9115e8cd2a0c6e Eric Dumazet 2016-12-03 455 int sk_gso_type;
9115e8cd2a0c6e Eric Dumazet 2016-12-03 456 unsigned int sk_gso_max_size;
9115e8cd2a0c6e Eric Dumazet 2016-12-03 457 gfp_t sk_allocation;
9115e8cd2a0c6e Eric Dumazet 2016-12-03 458 __u32 sk_txhash;
fc64869c48494a Andrey Ryabinin 2016-05-18 459
fc64869c48494a Andrey Ryabinin 2016-05-18 460 /*
fc64869c48494a Andrey Ryabinin 2016-05-18 461 * Because of non atomicity rules, all
fc64869c48494a Andrey Ryabinin 2016-05-18 462 * changes are protected by socket lock.
fc64869c48494a Andrey Ryabinin 2016-05-18 463 */
bf9765145b856f Mat Martineau 2020-01-09 464 u8 sk_padding : 1,
cdfbabfb2f0ce9 David Howells 2017-03-09 465 sk_kern_sock : 1,
28448b80456fea Tom Herbert 2014-05-23 466 sk_no_check_tx : 1,
28448b80456fea Tom Herbert 2014-05-23 467 sk_no_check_rx : 1,
bf9765145b856f Mat Martineau 2020-01-09 468 sk_userlocks : 4;
3a9b76fd0db9f0 Eric Dumazet 2017-11-11 469 u8 sk_pacing_shift;
bf9765145b856f Mat Martineau 2020-01-09 470 u16 sk_type;
bf9765145b856f Mat Martineau 2020-01-09 471 u16 sk_protocol;
bf9765145b856f Mat Martineau 2020-01-09 472 u16 sk_gso_max_segs;
^1da177e4c3f41 Linus Torvalds 2005-04-16 473 unsigned long sk_lingertime;
476e19cfa131e2 Arnaldo Carvalho de Melo 2005-05-05 474 struct proto *sk_prot_creator;
^1da177e4c3f41 Linus Torvalds 2005-04-16 475 rwlock_t sk_callback_lock;
^1da177e4c3f41 Linus Torvalds 2005-04-16 476 int sk_err,
^1da177e4c3f41 Linus Torvalds 2005-04-16 477 sk_err_soft;
becb74f0acca19 Eric Dumazet 2015-03-19 478 u32 sk_ack_backlog;
becb74f0acca19 Eric Dumazet 2015-03-19 479 u32 sk_max_ack_backlog;
86741ec25462e4 Lorenzo Colitti 2016-11-04 480 kuid_t sk_uid;
109f6e39fa07c4 Eric W. Biederman 2010-06-13 481 struct pid *sk_peer_pid;
109f6e39fa07c4 Eric W. Biederman 2010-06-13 482 const struct cred *sk_peer_cred;
^1da177e4c3f41 Linus Torvalds 2005-04-16 483 long sk_rcvtimeo;
b7aa0bf70c4afb Eric Dumazet 2007-04-19 484 ktime_t sk_stamp;
3a0ed3e9619738 Deepa Dinamani 2018-12-27 485 #if BITS_PER_LONG==32
3a0ed3e9619738 Deepa Dinamani 2018-12-27 486 seqlock_t sk_stamp_seq;
3a0ed3e9619738 Deepa Dinamani 2018-12-27 487 #endif
b9f40e21ef4298 Willem de Bruijn 2014-08-04 488 u16 sk_tsflags;
fc64869c48494a Andrey Ryabinin 2016-05-18 489 u8 sk_shutdown;
09c2d251b70723 Willem de Bruijn 2014-08-04 490 u32 sk_tskey;
52267790ef52d7 Willem de Bruijn 2017-08-03 491 atomic_t sk_zckey;
80b14dee2bea12 Richard Cochran 2018-07-03 492
80b14dee2bea12 Richard Cochran 2018-07-03 493 u8 sk_clockid;
80b14dee2bea12 Richard Cochran 2018-07-03 494 u8 sk_txtime_deadline_mode : 1,
4b15c707535266 Jesus Sanchez-Palencia 2018-07-03 495 sk_txtime_report_errors : 1,
4b15c707535266 Jesus Sanchez-Palencia 2018-07-03 496 sk_txtime_unused : 6;
80b14dee2bea12 Richard Cochran 2018-07-03 497
^1da177e4c3f41 Linus Torvalds 2005-04-16 498 struct socket *sk_socket;
^1da177e4c3f41 Linus Torvalds 2005-04-16 499 void *sk_user_data;
d5f642384e9da7 Alexey Dobriyan 2008-11-04 500 #ifdef CONFIG_SECURITY
^1da177e4c3f41 Linus Torvalds 2005-04-16 501 void *sk_security;
d5f642384e9da7 Alexey Dobriyan 2008-11-04 502 #endif
2a56a1fec290bf Tejun Heo 2015-12-07 503 struct sock_cgroup_data sk_cgrp_data;
baac50bbc3cdfd Johannes Weiner 2016-01-14 504 struct mem_cgroup *sk_memcg;
^1da177e4c3f41 Linus Torvalds 2005-04-16 505 void (*sk_state_change)(struct sock *sk);
676d23690fb62b David S. Miller 2014-04-11 506 void (*sk_data_ready)(struct sock *sk);
^1da177e4c3f41 Linus Torvalds 2005-04-16 507 void (*sk_write_space)(struct sock *sk);
^1da177e4c3f41 Linus Torvalds 2005-04-16 508 void (*sk_error_report)(struct sock *sk);
^1da177e4c3f41 Linus Torvalds 2005-04-16 509 int (*sk_backlog_rcv)(struct sock *sk,
^1da177e4c3f41 Linus Torvalds 2005-04-16 510 struct sk_buff *skb);
ebf4e808fa0b22 Ilya Lesokhin 2018-04-30 511 #ifdef CONFIG_SOCK_VALIDATE_XMIT
ebf4e808fa0b22 Ilya Lesokhin 2018-04-30 512 struct sk_buff* (*sk_validate_xmit_skb)(struct sock *sk,
ebf4e808fa0b22 Ilya Lesokhin 2018-04-30 513 struct net_device *dev,
ebf4e808fa0b22 Ilya Lesokhin 2018-04-30 514 struct sk_buff *skb);
ebf4e808fa0b22 Ilya Lesokhin 2018-04-30 515 #endif
^1da177e4c3f41 Linus Torvalds 2005-04-16 516 void (*sk_destruct)(struct sock *sk);
ef456144da8ef5 Craig Gallek 2016-01-04 517 struct sock_reuseport __rcu *sk_reuseport_cb;
6ac99e8f23d4b1 Martin KaFai Lau 2019-04-26 518 #ifdef CONFIG_BPF_SYSCALL
6ac99e8f23d4b1 Martin KaFai Lau 2019-04-26 519 struct bpf_sk_storage __rcu *sk_bpf_storage;
6ac99e8f23d4b1 Martin KaFai Lau 2019-04-26 520 #endif
a4298e4522d687 Eric Dumazet 2016-04-01 521 struct rcu_head sk_rcu;
^1da177e4c3f41 Linus Torvalds 2005-04-16 522 };
^1da177e4c3f41 Linus Torvalds 2005-04-16 523
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years, 2 months
[linux-stable-rc:linux-5.4.y 793/3868] csky-linux-ld: atmel-aes.c:undefined reference to `atmel_sha_authenc_spawn'
by kernel test robot
tree: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git linux-5.4.y
head: e72abf1f11a982a2a3fb555b5a9bd2eb2011dee8
commit: 571f8b20d234ecf8844e2a7237ca7d89991d9a22 [793/3868] crypto: atmel - Fix authenc support when it is set to m
config: csky-randconfig-r006-20200713 (attached as .config)
compiler: csky-linux-gcc (GCC) 9.3.0
reproduce (this is a W=1 build):
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
git checkout 571f8b20d234ecf8844e2a7237ca7d89991d9a22
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=csky
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All errors (new ones prefixed by >>):
csky-linux-ld: drivers/crypto/atmel-aes.o: in function `atmel_aes_authenc_init_tfm':
atmel-aes.c:(.text+0x366): undefined reference to `atmel_sha_authenc_get_reqsize'
>> csky-linux-ld: atmel-aes.c:(.text+0x372): undefined reference to `atmel_sha_authenc_spawn'
csky-linux-ld: drivers/crypto/atmel-aes.o: in function `$d':
atmel-aes.c:(.text+0x3b4): undefined reference to `atmel_sha_authenc_get_reqsize'
csky-linux-ld: atmel-aes.c:(.text+0x3b8): undefined reference to `atmel_sha_authenc_spawn'
csky-linux-ld: drivers/crypto/atmel-aes.o: in function `atmel_aes_authenc_digest':
atmel-aes.c:(.text+0x422): undefined reference to `atmel_sha_authenc_final'
csky-linux-ld: drivers/crypto/atmel-aes.o: in function `atmel_aes_authenc_exit_tfm':
atmel-aes.c:(.text+0x436): undefined reference to `atmel_sha_authenc_free'
csky-linux-ld: drivers/crypto/atmel-aes.o: in function `atmel_aes_authenc_setkey':
atmel-aes.c:(.text+0x472): undefined reference to `atmel_sha_authenc_setkey'
csky-linux-ld: drivers/crypto/atmel-aes.o: in function `$d':
atmel-aes.c:(.text+0x578): undefined reference to `atmel_sha_authenc_final'
>> csky-linux-ld: atmel-aes.c:(.text+0x57c): undefined reference to `atmel_sha_authenc_free'
>> csky-linux-ld: atmel-aes.c:(.text+0x584): undefined reference to `atmel_sha_authenc_setkey'
csky-linux-ld: drivers/crypto/atmel-aes.o: in function `$t':
atmel-aes.c:(.text+0xed4): undefined reference to `atmel_sha_authenc_is_ready'
csky-linux-ld: drivers/crypto/atmel-aes.o: in function `$d':
atmel-aes.c:(.text+0xf50): undefined reference to `atmel_sha_authenc_is_ready'
csky-linux-ld: drivers/crypto/atmel-aes.o: in function `$t':
atmel-aes.c:(.text+0x13b0): undefined reference to `atmel_sha_authenc_abort'
csky-linux-ld: drivers/crypto/atmel-aes.o: in function `$d':
atmel-aes.c:(.text+0x1438): undefined reference to `atmel_sha_authenc_abort'
csky-linux-ld: drivers/crypto/atmel-aes.o: in function `$t':
atmel-aes.c:(.text+0x1798): undefined reference to `atmel_sha_authenc_abort'
csky-linux-ld: drivers/crypto/atmel-aes.o: in function `$d':
atmel-aes.c:(.text+0x18c4): undefined reference to `atmel_sha_authenc_abort'
csky-linux-ld: drivers/crypto/atmel-aes.o: in function `$t':
atmel-aes.c:(.text+0x1958): undefined reference to `atmel_sha_authenc_abort'
csky-linux-ld: drivers/crypto/atmel-aes.o:atmel-aes.c:(.text+0x1a40): more undefined references to `atmel_sha_authenc_abort' follow
csky-linux-ld: drivers/crypto/atmel-aes.o: in function `atmel_aes_authenc_start':
atmel-aes.c:(.text+0x1b06): undefined reference to `atmel_sha_authenc_schedule'
>> csky-linux-ld: atmel-aes.c:(.text+0x1bb0): undefined reference to `atmel_sha_authenc_schedule'
>> csky-linux-ld: atmel-aes.c:(.text+0x1bd6): undefined reference to `atmel_sha_authenc_abort'
csky-linux-ld: drivers/crypto/atmel-aes.o: in function `atmel_aes_authenc_init':
atmel-aes.c:(.text+0x1c18): undefined reference to `atmel_sha_authenc_init'
csky-linux-ld: atmel-aes.c:(.text+0x1cba): undefined reference to `atmel_sha_authenc_abort'
csky-linux-ld: drivers/crypto/atmel-aes.o: in function `$d':
atmel-aes.c:(.text+0x1d64): undefined reference to `atmel_sha_authenc_abort'
>> csky-linux-ld: atmel-aes.c:(.text+0x1d6c): undefined reference to `atmel_sha_authenc_init'
csky-linux-ld: drivers/crypto/atmel-aes.o: in function `$t':
atmel-aes.c:(.text+0x1e26): undefined reference to `atmel_sha_authenc_abort'
csky-linux-ld: drivers/crypto/atmel-aes.o: in function `$d':
atmel-aes.c:(.text+0x1ecc): undefined reference to `atmel_sha_authenc_abort'
csky-linux-ld: drivers/crypto/atmel-aes.o: in function `$t':
atmel-aes.c:(.text+0x1f68): undefined reference to `atmel_sha_authenc_abort'
csky-linux-ld: drivers/crypto/atmel-aes.o: in function `$d':
atmel-aes.c:(.text+0x2070): undefined reference to `atmel_sha_authenc_abort'
csky-linux-ld: drivers/crypto/atmel-aes.o: in function `$t':
atmel-aes.c:(.text+0x22e6): undefined reference to `atmel_sha_authenc_abort'
csky-linux-ld: drivers/crypto/atmel-aes.o:atmel-aes.c:(.text+0x23fc): more undefined references to `atmel_sha_authenc_abort' follow
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years, 2 months
Re: [PATCH] cifs: smb1: Try failing back to SetFileInfo if SetPathInfo fails
by kernel test robot
Hi Ronnie,
Thank you for the patch! Perhaps something to improve:
[auto build test WARNING on cifs/for-next]
[also build test WARNING on v5.8-rc5 next-20200714]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use as documented in
https://git-scm.com/docs/git-format-patch]
url: https://github.com/0day-ci/linux/commits/Ronnie-Sahlberg/cifs-smb1-Try-fa...
base: git://git.samba.org/sfrench/cifs-2.6.git for-next
config: arm64-randconfig-r005-20200714 (attached as .config)
compiler: clang version 11.0.0 (https://github.com/llvm/llvm-project 02946de3802d3bc65bc9f2eb9b8d4969b5a7add8)
reproduce (this is a W=1 build):
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# install arm64 cross compiling tool for clang build
# apt-get install binutils-aarch64-linux-gnu
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=arm64
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All warnings (new ones prefixed by >>):
>> fs/cifs/cifssmb.c:5917:1: warning: no previous prototype for function 'CIFSSMBSetPathInfoFB' [-Wmissing-prototypes]
CIFSSMBSetPathInfoFB(const unsigned int xid, struct cifs_tcon *tcon,
^
fs/cifs/cifssmb.c:5916:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
int
^
static
1 warning generated.
--
In file included from fs/cifs/cifssmb.c:40:
In file included from fs/cifs/cifsglob.h:32:
fs/cifs/smb2pdu.h:28:10: error: 'cifsacl.h' file not found with <angled> include; use "quotes" instead
#include <cifsacl.h>
^~~~~~~~~~~
"cifsacl.h"
>> fs/cifs/cifssmb.c:5917:1: warning: no previous prototype for function 'CIFSSMBSetPathInfoFB' [-Wmissing-prototypes]
CIFSSMBSetPathInfoFB(const unsigned int xid, struct cifs_tcon *tcon,
^
fs/cifs/cifssmb.c:5916:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
int
^
static
1 warning and 1 error generated.
vim +/CIFSSMBSetPathInfoFB +5917 fs/cifs/cifssmb.c
5915
5916 int
> 5917 CIFSSMBSetPathInfoFB(const unsigned int xid, struct cifs_tcon *tcon,
5918 const char *fileName, const FILE_BASIC_INFO *data,
5919 const struct nls_table *nls_codepage,
5920 struct cifs_sb_info *cifs_sb)
5921 {
5922 int oplock = 0;
5923 struct cifs_open_parms oparms;
5924 struct cifs_fid fid;
5925 int rc;
5926
5927 oparms.tcon = tcon;
5928 oparms.cifs_sb = cifs_sb;
5929 oparms.desired_access = GENERIC_WRITE;
5930 oparms.create_options = cifs_create_options(cifs_sb, 0);
5931 oparms.disposition = FILE_OPEN;
5932 oparms.path = fileName;
5933 oparms.fid = &fid;
5934 oparms.reconnect = false;
5935
5936 rc = CIFS_open(xid, &oparms, &oplock, NULL);
5937 if (rc)
5938 goto out;
5939
5940 rc = CIFSSMBSetFileInfo(xid, tcon, data, fid.netfid, current->tgid);
5941 CIFSSMBClose(xid, tcon, fid.netfid);
5942 out:
5943
5944 return rc;
5945 }
5946
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years, 2 months
[jkirsher-next-queue:dev-queue 91/92] drivers/net/ethernet/intel/iecm/iecm_txrx.c:2462:28: error: 'last_offset' undeclared; did you mean
by kernel test robot
Hi Alice,
First bad commit (maybe != root cause):
tree: https://git.kernel.org/pub/scm/linux/kernel/git/jkirsher/next-queue.git dev-queue
head: 0499ed813d995f0a1b97e5e59ff7fd864d8ffb62
commit: ac1fe751555b417952104c2a5f09592c0348c40d [91/92] iecm: Add iecm to the kernel build system
config: alpha-allyesconfig (attached as .config)
compiler: alpha-linux-gcc (GCC) 9.3.0
reproduce (this is a W=1 build):
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
git checkout ac1fe751555b417952104c2a5f09592c0348c40d
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=alpha
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All errors (new ones prefixed by >>):
drivers/net/ethernet/intel/iecm/iecm_txrx.c: In function 'iecm_rx_can_reuse_page':
>> drivers/net/ethernet/intel/iecm/iecm_txrx.c:2462:28: error: 'last_offset' undeclared (first use in this function); did you mean 'page_offset'?
2462 | if (rx_buf->page_offset > last_offset)
| ^~~~~~~~~~~
| page_offset
drivers/net/ethernet/intel/iecm/iecm_txrx.c:2462:28: note: each undeclared identifier is reported only once for each function it appears in
vim +2462 drivers/net/ethernet/intel/iecm/iecm_txrx.c
2158dc66f3a92d Alice Michael 2020-07-14 2436
2158dc66f3a92d Alice Michael 2020-07-14 2437 /**
2158dc66f3a92d Alice Michael 2020-07-14 2438 * iecm_rx_can_reuse_page - Determine if page can be reused for another Rx
2158dc66f3a92d Alice Michael 2020-07-14 2439 * @rx_buf: buffer containing the page
2158dc66f3a92d Alice Michael 2020-07-14 2440 *
2158dc66f3a92d Alice Michael 2020-07-14 2441 * If page is reusable, we have a green light for calling iecm_reuse_rx_page,
2158dc66f3a92d Alice Michael 2020-07-14 2442 * which will assign the current buffer to the buffer that next_to_alloc is
2158dc66f3a92d Alice Michael 2020-07-14 2443 * pointing to; otherwise, the DMA mapping needs to be destroyed and
2158dc66f3a92d Alice Michael 2020-07-14 2444 * page freed
2158dc66f3a92d Alice Michael 2020-07-14 2445 */
2158dc66f3a92d Alice Michael 2020-07-14 2446 static bool iecm_rx_can_reuse_page(struct iecm_rx_buf *rx_buf)
2158dc66f3a92d Alice Michael 2020-07-14 2447 {
8aa91340983bdc Alice Michael 2020-07-14 2448 #if (PAGE_SIZE >= 8192)
8aa91340983bdc Alice Michael 2020-07-14 2449 #endif
8aa91340983bdc Alice Michael 2020-07-14 2450 unsigned int pagecnt_bias = rx_buf->pagecnt_bias;
8aa91340983bdc Alice Michael 2020-07-14 2451 struct page *page = rx_buf->page;
8aa91340983bdc Alice Michael 2020-07-14 2452
8aa91340983bdc Alice Michael 2020-07-14 2453 /* avoid re-using remote pages */
8aa91340983bdc Alice Michael 2020-07-14 2454 if (unlikely(iecm_rx_page_is_reserved(page)))
8aa91340983bdc Alice Michael 2020-07-14 2455 return false;
8aa91340983bdc Alice Michael 2020-07-14 2456
8aa91340983bdc Alice Michael 2020-07-14 2457 #if (PAGE_SIZE < 8192)
8aa91340983bdc Alice Michael 2020-07-14 2458 /* if we are only owner of page we can reuse it */
8aa91340983bdc Alice Michael 2020-07-14 2459 if (unlikely((page_count(page) - pagecnt_bias) > 1))
8aa91340983bdc Alice Michael 2020-07-14 2460 return false;
8aa91340983bdc Alice Michael 2020-07-14 2461 #else
8aa91340983bdc Alice Michael 2020-07-14 @2462 if (rx_buf->page_offset > last_offset)
8aa91340983bdc Alice Michael 2020-07-14 2463 return false;
8aa91340983bdc Alice Michael 2020-07-14 2464 #endif /* PAGE_SIZE < 8192) */
8aa91340983bdc Alice Michael 2020-07-14 2465
8aa91340983bdc Alice Michael 2020-07-14 2466 /* If we have drained the page fragment pool we need to update
8aa91340983bdc Alice Michael 2020-07-14 2467 * the pagecnt_bias and page count so that we fully restock the
8aa91340983bdc Alice Michael 2020-07-14 2468 * number of references the driver holds.
8aa91340983bdc Alice Michael 2020-07-14 2469 */
8aa91340983bdc Alice Michael 2020-07-14 2470 if (unlikely(pagecnt_bias == 1)) {
8aa91340983bdc Alice Michael 2020-07-14 2471 page_ref_add(page, USHRT_MAX - 1);
8aa91340983bdc Alice Michael 2020-07-14 2472 rx_buf->pagecnt_bias = USHRT_MAX;
8aa91340983bdc Alice Michael 2020-07-14 2473 }
8aa91340983bdc Alice Michael 2020-07-14 2474
8aa91340983bdc Alice Michael 2020-07-14 2475 return true;
2158dc66f3a92d Alice Michael 2020-07-14 2476 }
2158dc66f3a92d Alice Michael 2020-07-14 2477
:::::: The code at line 2462 was first introduced by commit
:::::: 8aa91340983bdcd6861be0aad259c5b1d14584fb iecm: Add splitq TX/RX
:::::: TO: Alice Michael <alice.michael(a)intel.com>
:::::: CC: Tony Nguyen <anthony.l.nguyen(a)intel.com>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years, 2 months