[drm-misc:drm-misc-next 3/5] analogix_dp_core.c:undefined reference to `drm_dp_dpcd_read'
by kernel test robot
tree: git://anongit.freedesktop.org/drm/drm-misc drm-misc-next
head: 032a125904995985334766911de9e26ee2bbd646
commit: adb9d5a2cc77e8aefe98fe4c11656c5b7025c248 [3/5] drm/dp: Move DisplayPort helpers into separate helper module
config: arm-exynos_defconfig (https://download.01.org/0day-ci/archive/20220118/202201180232.qDi3QkrX-lk...)
compiler: arm-linux-gnueabi-gcc (GCC) 11.2.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 remote add drm-misc git://anongit.freedesktop.org/drm/drm-misc
git fetch --no-tags drm-misc drm-misc-next
git checkout adb9d5a2cc77e8aefe98fe4c11656c5b7025c248
# save the config file to linux build tree
mkdir build_dir
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-11.2.0 make.cross O=build_dir ARCH=arm SHELL=/bin/bash
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 >>):
arm-linux-gnueabi-ld: drivers/gpu/drm/panel/panel-edp.o: in function `panel_edp_probe':
panel-edp.c:(.text+0xf2c): undefined reference to `drm_panel_dp_aux_backlight'
arm-linux-gnueabi-ld: drivers/gpu/drm/bridge/analogix/analogix_dp_core.o: in function `analogix_dp_set_enhanced_mode':
>> analogix_dp_core.c:(.text+0x1e4): undefined reference to `drm_dp_dpcd_read'
>> arm-linux-gnueabi-ld: analogix_dp_core.c:(.text+0x20c): undefined reference to `drm_dp_dpcd_read'
>> arm-linux-gnueabi-ld: analogix_dp_core.c:(.text+0x284): undefined reference to `drm_dp_dpcd_write'
arm-linux-gnueabi-ld: analogix_dp_core.c:(.text+0x2b0): undefined reference to `drm_dp_dpcd_read'
arm-linux-gnueabi-ld: analogix_dp_core.c:(.text+0x2e4): undefined reference to `drm_dp_dpcd_write'
arm-linux-gnueabi-ld: drivers/gpu/drm/bridge/analogix/analogix_dp_core.o: in function `analogix_dp_bind':
>> analogix_dp_core.c:(.text+0x624): undefined reference to `drm_dp_aux_register'
>> arm-linux-gnueabi-ld: analogix_dp_core.c:(.text+0x6a0): undefined reference to `drm_dp_aux_unregister'
arm-linux-gnueabi-ld: drivers/gpu/drm/bridge/analogix/analogix_dp_core.o: in function `analogix_dp_stop_crc':
>> analogix_dp_core.c:(.text+0x6c8): undefined reference to `drm_dp_stop_crc'
arm-linux-gnueabi-ld: drivers/gpu/drm/bridge/analogix/analogix_dp_core.o: in function `analogix_dp_start_crc':
>> analogix_dp_core.c:(.text+0x7c4): undefined reference to `drm_dp_start_crc'
arm-linux-gnueabi-ld: drivers/gpu/drm/bridge/analogix/analogix_dp_core.o: in function `analogix_dp_link_start':
>> analogix_dp_core.c:(.text+0x868): undefined reference to `drm_dp_dpcd_write'
arm-linux-gnueabi-ld: analogix_dp_core.c:(.text+0x928): undefined reference to `drm_dp_dpcd_write'
arm-linux-gnueabi-ld: analogix_dp_core.c:(.text+0x95c): undefined reference to `drm_dp_dpcd_write'
arm-linux-gnueabi-ld: drivers/gpu/drm/bridge/analogix/analogix_dp_core.o: in function `analogix_dp_reduce_link_rate':
analogix_dp_core.c:(.text+0xa94): undefined reference to `drm_dp_dpcd_write'
arm-linux-gnueabi-ld: drivers/gpu/drm/bridge/analogix/analogix_dp_core.o: in function `analogix_dp_process_clock_recovery':
analogix_dp_core.c:(.text+0xb08): undefined reference to `drm_dp_dpcd_read'
arm-linux-gnueabi-ld: analogix_dp_core.c:(.text+0xb24): undefined reference to `drm_dp_dpcd_read'
arm-linux-gnueabi-ld: analogix_dp_core.c:(.text+0xb9c): undefined reference to `drm_dp_dpcd_write'
arm-linux-gnueabi-ld: analogix_dp_core.c:(.text+0xbf0): undefined reference to `drm_dp_dpcd_write'
arm-linux-gnueabi-ld: drivers/gpu/drm/bridge/analogix/analogix_dp_core.o: in function `analogix_dp_unbind':
>> analogix_dp_core.c:(.text+0x13b8): undefined reference to `drm_dp_aux_unregister'
arm-linux-gnueabi-ld: drivers/gpu/drm/bridge/analogix/analogix_dp_core.o: in function `analogix_dp_process_equalizer_training':
analogix_dp_core.c:(.text+0x1420): undefined reference to `drm_dp_dpcd_read'
arm-linux-gnueabi-ld: analogix_dp_core.c:(.text+0x1484): undefined reference to `drm_dp_dpcd_read'
arm-linux-gnueabi-ld: analogix_dp_core.c:(.text+0x14a0): undefined reference to `drm_dp_dpcd_read'
arm-linux-gnueabi-ld: analogix_dp_core.c:(.text+0x1538): undefined reference to `drm_dp_dpcd_write'
arm-linux-gnueabi-ld: analogix_dp_core.c:(.text+0x160c): undefined reference to `drm_dp_dpcd_write'
arm-linux-gnueabi-ld: analogix_dp_core.c:(.text+0x1664): undefined reference to `drm_dp_dpcd_write'
arm-linux-gnueabi-ld: drivers/gpu/drm/bridge/analogix/analogix_dp_core.o: in function `analogix_dp_full_link_train':
analogix_dp_core.c:(.text+0x1738): undefined reference to `drm_dp_dpcd_read'
arm-linux-gnueabi-ld: analogix_dp_core.c:(.text+0x1754): undefined reference to `drm_dp_dpcd_read'
arm-linux-gnueabi-ld: drivers/gpu/drm/bridge/analogix/analogix_dp_core.o: in function `analogix_dp_commit':
analogix_dp_core.c:(.text+0x1968): undefined reference to `drm_dp_dpcd_read'
arm-linux-gnueabi-ld: analogix_dp_core.c:(.text+0x1a9c): undefined reference to `drm_dp_dpcd_read'
arm-linux-gnueabi-ld: analogix_dp_core.c:(.text+0x1ae0): undefined reference to `drm_dp_dpcd_read'
arm-linux-gnueabi-ld: analogix_dp_core.c:(.text+0x1b54): undefined reference to `drm_dp_dpcd_write'
arm-linux-gnueabi-ld: analogix_dp_core.c:(.text+0x1b94): undefined reference to `drm_dp_dpcd_read'
arm-linux-gnueabi-ld: analogix_dp_core.c:(.text+0x1bc4): undefined reference to `drm_dp_dpcd_write'
arm-linux-gnueabi-ld: analogix_dp_core.c:(.text+0x1bf0): undefined reference to `drm_dp_dpcd_write'
arm-linux-gnueabi-ld: analogix_dp_core.c:(.text+0x1c1c): undefined reference to `drm_dp_dpcd_write'
arm-linux-gnueabi-ld: drivers/gpu/drm/bridge/analogix/analogix_dp_core.o: in function `analogix_dp_bridge_atomic_enable':
analogix_dp_core.c:(.text+0x1ffc): undefined reference to `drm_dp_dpcd_write'
arm-linux-gnueabi-ld: analogix_dp_core.c:(.text+0x2068): undefined reference to `drm_dp_dpcd_read'
arm-linux-gnueabi-ld: drivers/gpu/drm/bridge/analogix/analogix_dp_core.o: in function `analogix_dp_bridge_atomic_post_disable':
analogix_dp_core.c:(.text+0x25a0): undefined reference to `drm_dp_dpcd_read'
arm-linux-gnueabi-ld: drivers/gpu/drm/bridge/analogix/analogix_dp_reg.o: in function `analogix_dp_send_psr_spd':
>> analogix_dp_reg.c:(.text+0x1658): undefined reference to `drm_dp_dpcd_read'
>> arm-linux-gnueabi-ld: analogix_dp_reg.c:(.text+0x16e0): undefined reference to `drm_dp_dpcd_read'
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
8 months
[rmk-arm:zii 76/167] drivers/net/dsa/qca8k.c:1185:3: error: implicit declaration of function 'qca8k_mac_config_setup_internal_delay'
by kernel test robot
tree: git://git.armlinux.org.uk/~rmk/linux-arm zii
head: 2c17c82cf0078ead3d8a315b2b103f9e5a5cdb1d
commit: c1b605b3b2edac51ad6b687c68f087fe166790ce [76/167] net: dsa: qca8k: convert to use phylink_pcs
config: i386-randconfig-a005-20220117 (https://download.01.org/0day-ci/archive/20220118/202201180222.WdeTEpLq-lk...)
compiler: clang version 14.0.0 (https://github.com/llvm/llvm-project 5f782d25a742302d25ef3c8b84b54f7483c2deb9)
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 remote add rmk-arm git://git.armlinux.org.uk/~rmk/linux-arm
git fetch --no-tags rmk-arm zii
git checkout c1b605b3b2edac51ad6b687c68f087fe166790ce
# save the config file to linux build tree
mkdir build_dir
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 O=build_dir ARCH=i386 SHELL=/bin/bash drivers/net/dsa/
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/dsa/qca8k.c:1185:3: error: implicit declaration of function 'qca8k_mac_config_setup_internal_delay' [-Werror,-Wimplicit-function-declaration]
qca8k_mac_config_setup_internal_delay(priv, cpu_port_index, reg);
^
drivers/net/dsa/qca8k.c:1479:1: error: static declaration of 'qca8k_mac_config_setup_internal_delay' follows non-static declaration
qca8k_mac_config_setup_internal_delay(struct qca8k_priv *priv, int cpu_port_index,
^
drivers/net/dsa/qca8k.c:1185:3: note: previous implicit declaration is here
qca8k_mac_config_setup_internal_delay(priv, cpu_port_index, reg);
^
2 errors generated.
Kconfig warnings: (for reference only)
WARNING: unmet direct dependencies detected for SND_SOC_CS35L41_SPI
Depends on SOUND && !UML && SND && SND_SOC && SPI_MASTER
Selected by
- SND_SOC_AMD_VANGOGH_MACH && SOUND && !UML && SND && SND_SOC && SND_SOC_AMD_ACP5x && I2C
vim +/qca8k_mac_config_setup_internal_delay +1185 drivers/net/dsa/qca8k.c
1120
1121 static int qca8k_pcs_config(struct phylink_pcs *pcs, unsigned int mode,
1122 phy_interface_t interface,
1123 const unsigned long *advertising,
1124 bool permit_pause_to_mac)
1125 {
1126 struct qca8k_priv *priv = pcs_to_qca8k_pcs(pcs)->priv;
1127 int cpu_port_index, ret, port;
1128 u32 reg, val;
1129
1130 port = pcs_to_qca8k_pcs(pcs)->port;
1131 switch (port) {
1132 case 0:
1133 reg = QCA8K_REG_PORT0_PAD_CTRL;
1134 cpu_port_index = QCA8K_CPU_PORT0;
1135 break;
1136
1137 case 6:
1138 reg = QCA8K_REG_PORT6_PAD_CTRL;
1139 cpu_port_index = QCA8K_CPU_PORT6;
1140 break;
1141
1142 default:
1143 WARN_ON(1);
1144 }
1145
1146 /* Enable/disable SerDes auto-negotiation as necessary */
1147 ret = qca8k_read(priv, QCA8K_REG_PWS, &val);
1148 if (ret)
1149 return ret;
1150 if (phylink_autoneg_inband(mode))
1151 val &= ~QCA8K_PWS_SERDES_AEN_DIS;
1152 else
1153 val |= QCA8K_PWS_SERDES_AEN_DIS;
1154 qca8k_write(priv, QCA8K_REG_PWS, val);
1155
1156 /* Configure the SGMII parameters */
1157 ret = qca8k_read(priv, QCA8K_REG_SGMII_CTRL, &val);
1158 if (ret)
1159 return ret;
1160
1161 val |= QCA8K_SGMII_EN_SD;
1162
1163 if (priv->ports_config.sgmii_enable_pll)
1164 val |= QCA8K_SGMII_EN_PLL | QCA8K_SGMII_EN_RX |
1165 QCA8K_SGMII_EN_TX;
1166
1167 if (dsa_is_cpu_port(priv->ds, port)) {
1168 /* CPU port, we're talking to the CPU MAC, be a PHY */
1169 val &= ~QCA8K_SGMII_MODE_CTRL_MASK;
1170 val |= QCA8K_SGMII_MODE_CTRL_PHY;
1171 } else if (interface == PHY_INTERFACE_MODE_SGMII) {
1172 val &= ~QCA8K_SGMII_MODE_CTRL_MASK;
1173 val |= QCA8K_SGMII_MODE_CTRL_MAC;
1174 } else if (interface == PHY_INTERFACE_MODE_1000BASEX) {
1175 val &= ~QCA8K_SGMII_MODE_CTRL_MASK;
1176 val |= QCA8K_SGMII_MODE_CTRL_BASEX;
1177 }
1178
1179 qca8k_write(priv, QCA8K_REG_SGMII_CTRL, val);
1180
1181 /* From original code is reported port instability as SGMII also
1182 * require delay set. Apply advised values here or take them from DT.
1183 */
1184 if (interface == PHY_INTERFACE_MODE_SGMII)
> 1185 qca8k_mac_config_setup_internal_delay(priv, cpu_port_index, reg);
1186 /* For qca8327/qca8328/qca8334/qca8338 sgmii is unique and
1187 * falling edge is set writing in the PORT0 PAD reg
1188 */
1189 if (priv->switch_id == QCA8K_ID_QCA8327 ||
1190 priv->switch_id == QCA8K_ID_QCA8337)
1191 reg = QCA8K_REG_PORT0_PAD_CTRL;
1192
1193 val = 0;
1194
1195 /* SGMII Clock phase configuration */
1196 if (priv->ports_config.sgmii_rx_clk_falling_edge)
1197 val |= QCA8K_PORT0_PAD_SGMII_RXCLK_FALLING_EDGE;
1198
1199 if (priv->ports_config.sgmii_tx_clk_falling_edge)
1200 val |= QCA8K_PORT0_PAD_SGMII_TXCLK_FALLING_EDGE;
1201
1202 if (val)
1203 ret = qca8k_rmw(priv, reg,
1204 QCA8K_PORT0_PAD_SGMII_RXCLK_FALLING_EDGE |
1205 QCA8K_PORT0_PAD_SGMII_TXCLK_FALLING_EDGE,
1206 val);
1207
1208
1209 return 0;
1210 }
1211
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
8 months
[drm-misc:drm-misc-next 4/5] drivers/gpu/drm/msm/edp/edp.h:15:10: fatal error: 'drm/drm_dp_helper.h' file not found
by kernel test robot
tree: git://anongit.freedesktop.org/drm/drm-misc drm-misc-next
head: 032a125904995985334766911de9e26ee2bbd646
commit: 5b529e8d9c387a34ca2b8008dc65f55d539b3ef6 [4/5] drm/dp: Move public DisplayPort headers into dp/
config: arm-randconfig-r014-20220117 (https://download.01.org/0day-ci/archive/20220118/202201180257.Ntm7G4ic-lk...)
compiler: clang version 14.0.0 (https://github.com/llvm/llvm-project 5f782d25a742302d25ef3c8b84b54f7483c2deb9)
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 arm cross compiling tool for clang build
# apt-get install binutils-arm-linux-gnueabi
git remote add drm-misc git://anongit.freedesktop.org/drm/drm-misc
git fetch --no-tags drm-misc drm-misc-next
git checkout 5b529e8d9c387a34ca2b8008dc65f55d539b3ef6
# save the config file to linux build tree
mkdir build_dir
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 O=build_dir ARCH=arm SHELL=/bin/bash drivers/gpu/drm/msm/
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 drivers/gpu/drm/msm/edp/edp_aux.c:6:
>> drivers/gpu/drm/msm/edp/edp.h:15:10: fatal error: 'drm/drm_dp_helper.h' file not found
#include <drm/drm_dp_helper.h>
^~~~~~~~~~~~~~~~~~~~~
1 error generated.
--
>> drivers/gpu/drm/msm/edp/edp_ctrl.c:10:10: fatal error: 'drm/drm_dp_helper.h' file not found
#include <drm/drm_dp_helper.h>
^~~~~~~~~~~~~~~~~~~~~
1 error generated.
vim +15 drivers/gpu/drm/msm/edp/edp.h
ab5b0107ccf382 Hai Li 2015-01-07 8
ab5b0107ccf382 Hai Li 2015-01-07 9 #include <linux/i2c.h>
ab5b0107ccf382 Hai Li 2015-01-07 10 #include <linux/interrupt.h>
ab5b0107ccf382 Hai Li 2015-01-07 11 #include <linux/kernel.h>
ab5b0107ccf382 Hai Li 2015-01-07 12 #include <linux/platform_device.h>
ee68c743f8d074 Boris Brezillon 2019-08-26 13 #include <drm/drm_bridge.h>
78f27b1ce3f852 Masahiro Yamada 2017-04-24 14 #include <drm/drm_crtc.h>
78f27b1ce3f852 Masahiro Yamada 2017-04-24 @15 #include <drm/drm_dp_helper.h>
ab5b0107ccf382 Hai Li 2015-01-07 16
:::::: The code at line 15 was first introduced by commit
:::::: 78f27b1ce3f852543443b5d2f12a40f217e3555e drm/msm: fix include notation and remove -Iinclude/drm flag
:::::: TO: Masahiro Yamada <yamada.masahiro(a)socionext.com>
:::::: CC: Daniel Vetter <daniel.vetter(a)ffwll.ch>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
8 months
[ammarfaizi2-block:dhowells/linux-fs/netfs-lib 21/24] fs/netfs/read_helper.c:1267:7: error: implicit declaration of function 'netfs_is_cache_enabled'
by kernel test robot
Hi David,
First bad commit (maybe != root cause):
tree: https://github.com/ammarfaizi2/linux-block dhowells/linux-fs/netfs-lib
head: 12617e48874cc7e301b04f65b22b762cca3aea01
commit: 76e2a6186d78be90874f3d45f7a41c583a0458f0 [21/24] cifs: Support fscache rewrite
config: i386-randconfig-r036-20220117 (https://download.01.org/0day-ci/archive/20220118/202201180210.aveIQZWP-lk...)
compiler: clang version 14.0.0 (https://github.com/llvm/llvm-project 5f782d25a742302d25ef3c8b84b54f7483c2deb9)
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
# https://github.com/ammarfaizi2/linux-block/commit/76e2a6186d78be90874f3d4...
git remote add ammarfaizi2-block https://github.com/ammarfaizi2/linux-block
git fetch --no-tags ammarfaizi2-block dhowells/linux-fs/netfs-lib
git checkout 76e2a6186d78be90874f3d45f7a41c583a0458f0
# save the config file to linux build tree
mkdir build_dir
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 O=build_dir ARCH=i386 SHELL=/bin/bash fs/netfs/
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 >>):
fs/netfs/read_helper.c:971:14: warning: variable 'folio' is uninitialized when used here [-Wuninitialized]
folio_put(folio);
^~~~~
fs/netfs/read_helper.c:920:21: note: initialize the variable 'folio' to silence this warning
struct folio *folio;
^
= NULL
>> fs/netfs/read_helper.c:1267:7: error: implicit declaration of function 'netfs_is_cache_enabled' [-Werror,-Wimplicit-function-declaration]
if (!netfs_is_cache_enabled(ctx) &&
^
1 warning and 1 error generated.
vim +/netfs_is_cache_enabled +1267 fs/netfs/read_helper.c
e1b1240c1ff5f8 David Howells 2020-09-22 1194
e1b1240c1ff5f8 David Howells 2020-09-22 1195 /**
e1b1240c1ff5f8 David Howells 2020-09-22 1196 * netfs_write_begin - Helper to prepare for writing
e1b1240c1ff5f8 David Howells 2020-09-22 1197 * @file: The file to read from
e1b1240c1ff5f8 David Howells 2020-09-22 1198 * @mapping: The mapping to read from
e1b1240c1ff5f8 David Howells 2020-09-22 1199 * @pos: File position at which the write will begin
78525c74d9e7d1 David Howells 2021-08-11 1200 * @len: The length of the write (may extend beyond the end of the folio chosen)
78525c74d9e7d1 David Howells 2021-08-11 1201 * @aop_flags: AOP_* flags
78525c74d9e7d1 David Howells 2021-08-11 1202 * @_folio: Where to put the resultant folio
e1b1240c1ff5f8 David Howells 2020-09-22 1203 * @_fsdata: Place for the netfs to store a cookie
e1b1240c1ff5f8 David Howells 2020-09-22 1204 *
e1b1240c1ff5f8 David Howells 2020-09-22 1205 * Pre-read data for a write-begin request by drawing data from the cache if
e1b1240c1ff5f8 David Howells 2020-09-22 1206 * possible, or the netfs if not. Space beyond the EOF is zero-filled.
e1b1240c1ff5f8 David Howells 2020-09-22 1207 * Multiple I/O requests from different sources will get munged together. If
e1b1240c1ff5f8 David Howells 2020-09-22 1208 * necessary, the readahead window can be expanded in either direction to a
e1b1240c1ff5f8 David Howells 2020-09-22 1209 * more convenient alighment for RPC efficiency or to make storage in the cache
e1b1240c1ff5f8 David Howells 2020-09-22 1210 * feasible.
e1b1240c1ff5f8 David Howells 2020-09-22 1211 *
e1b1240c1ff5f8 David Howells 2020-09-22 1212 * The calling netfs must provide a table of operations, only one of which,
e1b1240c1ff5f8 David Howells 2020-09-22 1213 * issue_op, is mandatory.
e1b1240c1ff5f8 David Howells 2020-09-22 1214 *
e1b1240c1ff5f8 David Howells 2020-09-22 1215 * The check_write_begin() operation can be provided to check for and flush
78525c74d9e7d1 David Howells 2021-08-11 1216 * conflicting writes once the folio is grabbed and locked. It is passed a
e1b1240c1ff5f8 David Howells 2020-09-22 1217 * pointer to the fsdata cookie that gets returned to the VM to be passed to
e1b1240c1ff5f8 David Howells 2020-09-22 1218 * write_end. It is permitted to sleep. It should return 0 if the request
78525c74d9e7d1 David Howells 2021-08-11 1219 * should go ahead; unlock the folio and return -EAGAIN to cause the folio to
78525c74d9e7d1 David Howells 2021-08-11 1220 * be regot; or return an error.
e1b1240c1ff5f8 David Howells 2020-09-22 1221 *
810800743d8a6f David Howells 2021-06-29 1222 * The calling netfs must initialise a netfs context contiguous to the vfs
810800743d8a6f David Howells 2021-06-29 1223 * inode before calling this.
810800743d8a6f David Howells 2021-06-29 1224 *
e1b1240c1ff5f8 David Howells 2020-09-22 1225 * This is usable whether or not caching is enabled.
e1b1240c1ff5f8 David Howells 2020-09-22 1226 */
e1b1240c1ff5f8 David Howells 2020-09-22 1227 int netfs_write_begin(struct file *file, struct address_space *mapping,
78525c74d9e7d1 David Howells 2021-08-11 1228 loff_t pos, unsigned int len, unsigned int aop_flags,
810800743d8a6f David Howells 2021-06-29 1229 struct folio **_folio, void **_fsdata)
e1b1240c1ff5f8 David Howells 2020-09-22 1230 {
e1b1240c1ff5f8 David Howells 2020-09-22 1231 struct netfs_read_request *rreq;
810800743d8a6f David Howells 2021-06-29 1232 struct netfs_i_context *ctx = netfs_i_context(file_inode(file ));
78525c74d9e7d1 David Howells 2021-08-11 1233 struct folio *folio;
78525c74d9e7d1 David Howells 2021-08-11 1234 unsigned int debug_index = 0, fgp_flags;
e1b1240c1ff5f8 David Howells 2020-09-22 1235 pgoff_t index = pos >> PAGE_SHIFT;
e1b1240c1ff5f8 David Howells 2020-09-22 1236 int ret;
e1b1240c1ff5f8 David Howells 2020-09-22 1237
e1b1240c1ff5f8 David Howells 2020-09-22 1238 DEFINE_READAHEAD(ractl, file, NULL, mapping, index);
e1b1240c1ff5f8 David Howells 2020-09-22 1239
e1b1240c1ff5f8 David Howells 2020-09-22 1240 retry:
78525c74d9e7d1 David Howells 2021-08-11 1241 fgp_flags = FGP_LOCK | FGP_WRITE | FGP_CREAT | FGP_STABLE;
78525c74d9e7d1 David Howells 2021-08-11 1242 if (aop_flags & AOP_FLAG_NOFS)
78525c74d9e7d1 David Howells 2021-08-11 1243 fgp_flags |= FGP_NOFS;
78525c74d9e7d1 David Howells 2021-08-11 1244 folio = __filemap_get_folio(mapping, index, fgp_flags,
78525c74d9e7d1 David Howells 2021-08-11 1245 mapping_gfp_mask(mapping));
78525c74d9e7d1 David Howells 2021-08-11 1246 if (!folio)
e1b1240c1ff5f8 David Howells 2020-09-22 1247 return -ENOMEM;
e1b1240c1ff5f8 David Howells 2020-09-22 1248
810800743d8a6f David Howells 2021-06-29 1249 if (ctx->ops->check_write_begin) {
e1b1240c1ff5f8 David Howells 2020-09-22 1250 /* Allow the netfs (eg. ceph) to flush conflicts. */
810800743d8a6f David Howells 2021-06-29 1251 ret = ctx->ops->check_write_begin(file, pos, len, folio, _fsdata);
e1b1240c1ff5f8 David Howells 2020-09-22 1252 if (ret < 0) {
0246f3e5737d0b David Howells 2021-04-06 1253 trace_netfs_failure(NULL, NULL, ret, netfs_fail_check_write_begin);
e1b1240c1ff5f8 David Howells 2020-09-22 1254 if (ret == -EAGAIN)
e1b1240c1ff5f8 David Howells 2020-09-22 1255 goto retry;
e1b1240c1ff5f8 David Howells 2020-09-22 1256 goto error;
e1b1240c1ff5f8 David Howells 2020-09-22 1257 }
e1b1240c1ff5f8 David Howells 2020-09-22 1258 }
e1b1240c1ff5f8 David Howells 2020-09-22 1259
78525c74d9e7d1 David Howells 2021-08-11 1260 if (folio_test_uptodate(folio))
78525c74d9e7d1 David Howells 2021-08-11 1261 goto have_folio;
e1b1240c1ff5f8 David Howells 2020-09-22 1262
2093a555c34cf6 David Howells 2021-07-09 1263 /* If the folio is beyond the EOF, we want to clear it - unless it's
e1b1240c1ff5f8 David Howells 2020-09-22 1264 * within the cache granule containing the EOF, in which case we need
e1b1240c1ff5f8 David Howells 2020-09-22 1265 * to preload the granule.
e1b1240c1ff5f8 David Howells 2020-09-22 1266 */
810800743d8a6f David Howells 2021-06-29 @1267 if (!netfs_is_cache_enabled(ctx) &&
810800743d8a6f David Howells 2021-06-29 1268 netfs_skip_folio_read(folio, pos, len, false)) {
e1b1240c1ff5f8 David Howells 2020-09-22 1269 netfs_stat(&netfs_n_rh_write_zskip);
78525c74d9e7d1 David Howells 2021-08-11 1270 goto have_folio_no_wait;
e1b1240c1ff5f8 David Howells 2020-09-22 1271 }
e1b1240c1ff5f8 David Howells 2020-09-22 1272
e1b1240c1ff5f8 David Howells 2020-09-22 1273 ret = -ENOMEM;
810800743d8a6f David Howells 2021-06-29 1274 rreq = netfs_alloc_read_request(mapping, file);
e1b1240c1ff5f8 David Howells 2020-09-22 1275 if (!rreq)
e1b1240c1ff5f8 David Howells 2020-09-22 1276 goto error;
78525c74d9e7d1 David Howells 2021-08-11 1277 rreq->start = folio_file_pos(folio);
78525c74d9e7d1 David Howells 2021-08-11 1278 rreq->len = folio_size(folio);
78525c74d9e7d1 David Howells 2021-08-11 1279 rreq->no_unlock_folio = folio_index(folio);
78525c74d9e7d1 David Howells 2021-08-11 1280 __set_bit(NETFS_RREQ_NO_UNLOCK_FOLIO, &rreq->flags);
e1b1240c1ff5f8 David Howells 2020-09-22 1281
32d9d354c2bb5e David Howells 2021-08-10 1282 ret = netfs_begin_cache_operation(rreq, ctx);
726218fdc22c9b David Howells 2020-02-06 1283 if (ret == -ENOMEM || ret == -EINTR || ret == -ERESTARTSYS)
726218fdc22c9b David Howells 2020-02-06 1284 goto error_put;
726218fdc22c9b David Howells 2020-02-06 1285
e1b1240c1ff5f8 David Howells 2020-09-22 1286 netfs_stat(&netfs_n_rh_write_begin);
e1b1240c1ff5f8 David Howells 2020-09-22 1287 trace_netfs_read(rreq, pos, len, netfs_read_trace_write_begin);
e1b1240c1ff5f8 David Howells 2020-09-22 1288
e1b1240c1ff5f8 David Howells 2020-09-22 1289 /* Expand the request to meet caching requirements and download
e1b1240c1ff5f8 David Howells 2020-09-22 1290 * preferences.
e1b1240c1ff5f8 David Howells 2020-09-22 1291 */
78525c74d9e7d1 David Howells 2021-08-11 1292 ractl._nr_pages = folio_nr_pages(folio);
e1b1240c1ff5f8 David Howells 2020-09-22 1293 netfs_rreq_expand(rreq, &ractl);
e1b1240c1ff5f8 David Howells 2020-09-22 1294
2093a555c34cf6 David Howells 2021-07-09 1295 /* Set up the output buffer */
2093a555c34cf6 David Howells 2021-07-09 1296 ret = netfs_rreq_set_up_buffer(rreq, &ractl, folio,
2093a555c34cf6 David Howells 2021-07-09 1297 readahead_index(&ractl), readahead_count(&ractl));
2093a555c34cf6 David Howells 2021-07-09 1298 if (ret < 0) {
78525c74d9e7d1 David Howells 2021-08-11 1299 /* We hold the folio locks, so we can drop the references */
78525c74d9e7d1 David Howells 2021-08-11 1300 folio_get(folio);
78525c74d9e7d1 David Howells 2021-08-11 1301 while (readahead_folio(&ractl))
78525c74d9e7d1 David Howells 2021-08-11 1302 ;
2093a555c34cf6 David Howells 2021-07-09 1303 goto error_put;
2093a555c34cf6 David Howells 2021-07-09 1304 }
e1b1240c1ff5f8 David Howells 2020-09-22 1305
2093a555c34cf6 David Howells 2021-07-09 1306 netfs_get_read_request(rreq);
e1b1240c1ff5f8 David Howells 2020-09-22 1307 atomic_set(&rreq->nr_rd_ops, 1);
e1b1240c1ff5f8 David Howells 2020-09-22 1308 do {
e1b1240c1ff5f8 David Howells 2020-09-22 1309 if (!netfs_rreq_submit_slice(rreq, &debug_index))
e1b1240c1ff5f8 David Howells 2020-09-22 1310 break;
e1b1240c1ff5f8 David Howells 2020-09-22 1311
e1b1240c1ff5f8 David Howells 2020-09-22 1312 } while (rreq->submitted < rreq->len);
e1b1240c1ff5f8 David Howells 2020-09-22 1313
e1b1240c1ff5f8 David Howells 2020-09-22 1314 /* Keep nr_rd_ops incremented so that the ref always belongs to us, and
e1b1240c1ff5f8 David Howells 2020-09-22 1315 * the service code isn't punted off to a random thread pool to
e1b1240c1ff5f8 David Howells 2020-09-22 1316 * process.
e1b1240c1ff5f8 David Howells 2020-09-22 1317 */
e1b1240c1ff5f8 David Howells 2020-09-22 1318 for (;;) {
e1b1240c1ff5f8 David Howells 2020-09-22 1319 wait_var_event(&rreq->nr_rd_ops, atomic_read(&rreq->nr_rd_ops) == 1);
e1b1240c1ff5f8 David Howells 2020-09-22 1320 netfs_rreq_assess(rreq, false);
e1b1240c1ff5f8 David Howells 2020-09-22 1321 if (!test_bit(NETFS_RREQ_IN_PROGRESS, &rreq->flags))
e1b1240c1ff5f8 David Howells 2020-09-22 1322 break;
e1b1240c1ff5f8 David Howells 2020-09-22 1323 cond_resched();
e1b1240c1ff5f8 David Howells 2020-09-22 1324 }
e1b1240c1ff5f8 David Howells 2020-09-22 1325
e1b1240c1ff5f8 David Howells 2020-09-22 1326 ret = rreq->error;
0246f3e5737d0b David Howells 2021-04-06 1327 if (ret == 0 && rreq->submitted < rreq->len) {
0246f3e5737d0b David Howells 2021-04-06 1328 trace_netfs_failure(rreq, NULL, ret, netfs_fail_short_write_begin);
e1b1240c1ff5f8 David Howells 2020-09-22 1329 ret = -EIO;
0246f3e5737d0b David Howells 2021-04-06 1330 }
e1b1240c1ff5f8 David Howells 2020-09-22 1331 netfs_put_read_request(rreq, false);
e1b1240c1ff5f8 David Howells 2020-09-22 1332 if (ret < 0)
e1b1240c1ff5f8 David Howells 2020-09-22 1333 goto error;
e1b1240c1ff5f8 David Howells 2020-09-22 1334
78525c74d9e7d1 David Howells 2021-08-11 1335 have_folio:
78525c74d9e7d1 David Howells 2021-08-11 1336 ret = folio_wait_fscache_killable(folio);
e1b1240c1ff5f8 David Howells 2020-09-22 1337 if (ret < 0)
e1b1240c1ff5f8 David Howells 2020-09-22 1338 goto error;
78525c74d9e7d1 David Howells 2021-08-11 1339 have_folio_no_wait:
78525c74d9e7d1 David Howells 2021-08-11 1340 *_folio = folio;
e1b1240c1ff5f8 David Howells 2020-09-22 1341 _leave(" = 0");
e1b1240c1ff5f8 David Howells 2020-09-22 1342 return 0;
e1b1240c1ff5f8 David Howells 2020-09-22 1343
e1b1240c1ff5f8 David Howells 2020-09-22 1344 error_put:
e1b1240c1ff5f8 David Howells 2020-09-22 1345 netfs_put_read_request(rreq, false);
e1b1240c1ff5f8 David Howells 2020-09-22 1346 error:
78525c74d9e7d1 David Howells 2021-08-11 1347 folio_unlock(folio);
78525c74d9e7d1 David Howells 2021-08-11 1348 folio_put(folio);
e1b1240c1ff5f8 David Howells 2020-09-22 1349 _leave(" = %d", ret);
e1b1240c1ff5f8 David Howells 2020-09-22 1350 return ret;
e1b1240c1ff5f8 David Howells 2020-09-22 1351 }
e1b1240c1ff5f8 David Howells 2020-09-22 1352 EXPORT_SYMBOL(netfs_write_begin);
5559c4bc348e31 David Howells 2021-08-20 1353
:::::: The code at line 1267 was first introduced by commit
:::::: 810800743d8a6fd292f870720030771ec9459dcc netfs: Add a netfs inode context
:::::: TO: David Howells <dhowells(a)redhat.com>
:::::: CC: David Howells <dhowells(a)redhat.com>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
8 months
[ammarfaizi2-block:dhowells/linux-fs/netfs-lib 20/24] fs/fscache/stats.c:100: undefined reference to `netfs_stats_show'
by kernel test robot
tree: https://github.com/ammarfaizi2/linux-block dhowells/linux-fs/netfs-lib
head: 12617e48874cc7e301b04f65b22b762cca3aea01
commit: d775438577aaab8808eaf4cfb2963d941a439b8b [20/24] netfs, fscache: Make netfslib depend on fscache
config: i386-randconfig-a013-20220117 (https://download.01.org/0day-ci/archive/20220118/202201180238.MoCstGyZ-lk...)
compiler: gcc-9 (Debian 9.3.0-22) 9.3.0
reproduce (this is a W=1 build):
# https://github.com/ammarfaizi2/linux-block/commit/d775438577aaab8808eaf4c...
git remote add ammarfaizi2-block https://github.com/ammarfaizi2/linux-block
git fetch --no-tags ammarfaizi2-block dhowells/linux-fs/netfs-lib
git checkout d775438577aaab8808eaf4cfb2963d941a439b8b
# save the config file to linux build tree
mkdir build_dir
make W=1 O=build_dir ARCH=i386 SHELL=/bin/bash
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 >>):
ld: fs/fscache/stats.o: in function `fscache_stats_show':
>> fs/fscache/stats.c:100: undefined reference to `netfs_stats_show'
vim +100 fs/fscache/stats.c
8e7a867bb7309f David Howells 2021-10-20 51
1e1236b841166f David Howells 2021-10-20 52 /*
1e1236b841166f David Howells 2021-10-20 53 * display the general statistics
1e1236b841166f David Howells 2021-10-20 54 */
1e1236b841166f David Howells 2021-10-20 55 int fscache_stats_show(struct seq_file *m, void *v)
1e1236b841166f David Howells 2021-10-20 56 {
1e1236b841166f David Howells 2021-10-20 57 seq_puts(m, "FS-Cache statistics\n");
7f3283aba39a0f David Howells 2021-10-20 58 seq_printf(m, "Cookies: n=%d v=%d vcol=%u voom=%u\n",
7f3283aba39a0f David Howells 2021-10-20 59 atomic_read(&fscache_n_cookies),
62ab63352350e8 David Howells 2021-10-20 60 atomic_read(&fscache_n_volumes),
62ab63352350e8 David Howells 2021-10-20 61 atomic_read(&fscache_n_volumes_collision),
62ab63352350e8 David Howells 2021-10-20 62 atomic_read(&fscache_n_volumes_nomem)
62ab63352350e8 David Howells 2021-10-20 63 );
1e1236b841166f David Howells 2021-10-20 64
7f3283aba39a0f David Howells 2021-10-20 65 seq_printf(m, "Acquire: n=%u ok=%u oom=%u\n",
7f3283aba39a0f David Howells 2021-10-20 66 atomic_read(&fscache_n_acquires),
7f3283aba39a0f David Howells 2021-10-20 67 atomic_read(&fscache_n_acquires_ok),
7f3283aba39a0f David Howells 2021-10-20 68 atomic_read(&fscache_n_acquires_oom));
7f3283aba39a0f David Howells 2021-10-20 69
12bb21a29c19aa David Howells 2021-10-20 70 seq_printf(m, "LRU : n=%u exp=%u rmv=%u drp=%u at=%ld\n",
12bb21a29c19aa David Howells 2021-10-20 71 atomic_read(&fscache_n_cookies_lru),
12bb21a29c19aa David Howells 2021-10-20 72 atomic_read(&fscache_n_cookies_lru_expired),
12bb21a29c19aa David Howells 2021-10-20 73 atomic_read(&fscache_n_cookies_lru_removed),
12bb21a29c19aa David Howells 2021-10-20 74 atomic_read(&fscache_n_cookies_lru_dropped),
12bb21a29c19aa David Howells 2021-10-20 75 timer_pending(&fscache_cookie_lru_timer) ?
12bb21a29c19aa David Howells 2021-10-20 76 fscache_cookie_lru_timer.expires - jiffies : 0);
12bb21a29c19aa David Howells 2021-10-20 77
d24af13e2e2358 David Howells 2021-10-20 78 seq_printf(m, "Invals : n=%u\n",
d24af13e2e2358 David Howells 2021-10-20 79 atomic_read(&fscache_n_invalidates));
d24af13e2e2358 David Howells 2021-10-20 80
16a96bdf92d5af David Howells 2021-10-20 81 seq_printf(m, "Updates: n=%u rsz=%u rsn=%u\n",
16a96bdf92d5af David Howells 2021-10-20 82 atomic_read(&fscache_n_updates),
16a96bdf92d5af David Howells 2021-10-20 83 atomic_read(&fscache_n_resizes),
16a96bdf92d5af David Howells 2021-10-20 84 atomic_read(&fscache_n_resizes_null));
7f3283aba39a0f David Howells 2021-10-20 85
7f3283aba39a0f David Howells 2021-10-20 86 seq_printf(m, "Relinqs: n=%u rtr=%u drop=%u\n",
7f3283aba39a0f David Howells 2021-10-20 87 atomic_read(&fscache_n_relinquishes),
7f3283aba39a0f David Howells 2021-10-20 88 atomic_read(&fscache_n_relinquishes_retire),
7f3283aba39a0f David Howells 2021-10-20 89 atomic_read(&fscache_n_relinquishes_dropped));
7f3283aba39a0f David Howells 2021-10-20 90
9f08ebc3438baa David Howells 2021-10-22 91 seq_printf(m, "NoSpace: nwr=%u ncr=%u cull=%u\n",
3929eca769b5a2 David Howells 2021-10-21 92 atomic_read(&fscache_n_no_write_space),
9f08ebc3438baa David Howells 2021-10-22 93 atomic_read(&fscache_n_no_create_space),
9f08ebc3438baa David Howells 2021-10-22 94 atomic_read(&fscache_n_culled));
3929eca769b5a2 David Howells 2021-10-21 95
8e7a867bb7309f David Howells 2021-10-20 96 seq_printf(m, "IO : rd=%u wr=%u\n",
8e7a867bb7309f David Howells 2021-10-20 97 atomic_read(&fscache_n_read),
8e7a867bb7309f David Howells 2021-10-20 98 atomic_read(&fscache_n_write));
8e7a867bb7309f David Howells 2021-10-20 99
1e1236b841166f David Howells 2021-10-20 @100 netfs_stats_show(m);
:::::: The code at line 100 was first introduced by commit
:::::: 1e1236b841166f1d2daf36fdf6bb3e656bc5f5ca fscache: Introduce new driver
:::::: TO: David Howells <dhowells(a)redhat.com>
:::::: CC: David Howells <dhowells(a)redhat.com>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
8 months
Best Delta-8 THC Gummies and Edibles
by jersengamps544@outlook.com
Despite the fact that they are more expensive than other brands, Area 52 Delta 8 THC gummies are a great choice for THC gummies. They are made from organic and non-GMO ingredients and are vegan. The flavoring is also excellent, and they don't have a lot of added sugar. That means they're a good choice for beginners.
While most products contain a bit of THC, Area 52's premium gummies are designed for people who are looking for a more moderate effect. They contain lab-grade terpenes, which are the active ingredients in marijuana. Unlike other brands, Area52 gummies are safe and effective, so you can try them without concern for side effects. There are also several other brands of delta 8 THC infused gummies on the market, so you'll have plenty of options.
For those who prefer a non-GMO option, Area 52 offers a wide variety of flavors. Their tincture, for example, contains 1200 mg of THC and a natural vanilla flavor. You can also buy the brand's 25 mg hemp-derived delta8 gummies, which contain 25 mg of THC. The gummies are also vegan, gluten-free, and low in sugar.
While many companies have jumped into the delta-8 gummy market, Area 52 is the only one that provides a quality, natural product. They offer a variety of delicious flavors and a full entourage effect. In addition to the tasty taste, the company offers lab tests on all its products. They're also able to deliver high-quality Delta 8 THC gummies, so you don't have to worry about getting into trouble with the DEA.
While Area 52's gummies are the best Delta 8 THC gummies, it's important to note that many other brands make similar products. The best Delta-8 THC sativa gummies are typically the most expensive, but they have the highest THC content and the lowest cost per serving. There are other brands that produce higher-quality gummies, but Area52 has the highest price.
The quality of the Delta-8 THC gummies is important. Whether you want a high-potency gummy or a low-potency gummy, you can find the right one with Area52. The gummies contain as much as 25 mg of the delta-8 THC per gram and can be stored in a sealed container for easy access. The gummies contain all-natural organic components and are safe for human consumption.
Area52 is a newer brand that has been in business for a couple of years. The company is known for its delta 8 THC gummies. Each of these tasty treats has up to 25 mg of delta-8 THC, so you should be able to take a couple of them each day. If you're new to THC, Area 52 is a good place to start.
Source: https://area52.com/delta-8-gummies
Related reading: Why Area 52 Has the Best Delta-8 Carts Online (https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org/thread/WZIQN...)
8 months
【Amaozn】お客様のアカウントは停止されました、個人情報を更新してください。
by Amazon.co.jp
Amazonお客様
平素はAmazonをご利用いただき、誠にありがとうございます。
ご利用のAmazonアカウントで異常な活動が検出されたため、アカウントを一時保留にし、保留中のご注文やサブスクリプションをキャンセルいたしました。
クレジットカードの盗難を防ぐため、ログイン後すぐに情報を更新してください。
ご回答をいただけない場合、Amazonのご利用制限が継続されることもございますので、予めご了承ください。
本件についてご迷惑をおかけしましたことをお詫び申し上げます。
何卒、よろしくお願い申し上げます。
詳しくはこちら
Amazonのまたのご利用をお待ちしております。
© 1996-2022, Amazon. Inc. or its affiliates
.
8 months