Hi Luigi,
First bad commit (maybe != root cause):
tree:
https://chromium.googlesource.com/chromiumos/third_party/kernel chromeos-5.4
head: 24749eed5fac1eacc18abc523b99f9e5b5e57c06
commit: 355a9aab75d60ff9590fe424f8b1a0a9bbeb1692 [13/28] CHROMIUM: drm: add img-rogue to
the drm build system
config: arm64-allyesconfig (attached as .config)
compiler: aarch64-linux-gcc (GCC) 7.5.0
reproduce:
wget
https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O
~/bin/make.cross
chmod +x ~/bin/make.cross
git checkout 355a9aab75d60ff9590fe424f8b1a0a9bbeb1692
# save the attached .config to linux build tree
GCC_VERSION=7.5.0 make.cross ARCH=arm64
If you fix the issue, kindly add following tag
Reported-by: kbuild test robot <lkp(a)intel.com>
All warnings (new ones prefixed by >>):
drivers/gpu/drm/img-rogue/1.10/rgxfwutils.c: In function 'RGXSetupCCB':
> drivers/gpu/drm/img-rogue/1.10/rgxfwutils.c:1165:2: warning: ISO
C90 forbids variable length array 'sCCBCtlName' [-Wvla]
IMG_CHAR
sCCBCtlName[ui32MaxTotalStrSize];
^~~~~~~~
--
In file included from drivers/gpu/drm/img-rogue/1.10/allocmem.h:48:0,
from drivers/gpu/drm/img-rogue/1.10/ri_server.c:46:
drivers/gpu/drm/img-rogue/1.10/ri_server.c: In function 'RIGetListEntryKM':
> drivers/gpu/drm/img-rogue/1.10/pvr_debug.h:234:33: warning: this
statement may fall through [-Wimplicit-fallthrough=]
#define
__PVR_DPF_0x002UL(...) PVRSRVDebugPrintf(DBGPRIV_ERROR, __VA_ARGS__)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> drivers/gpu/drm/img-rogue/1.10/pvr_debug.h:270:30: note: in
expansion of macro '__PVR_DPF_0x002UL'
#define __PVR_DPF(lvl, ...)
__PVR_DPF_ ## lvl (__FILE__, __LINE__, __VA_ARGS__)
^~~~~~~~~~
> drivers/gpu/drm/img-rogue/1.10/pvr_debug.h:276:21: note: in
expansion of macro '__PVR_DPF'
#define PVR_DPF(x) __PVR_DPF x
^~~~~~~~~
> drivers/gpu/drm/img-rogue/1.10/ri_server.c:1434:3: note: in
expansion of macro 'PVR_DPF'
PVR_DPF((PVR_DBG_ERROR, "%s: Bad
%d)",__func__, g_bNextGetState));
^~~~~~~
drivers/gpu/drm/img-rogue/1.10/ri_server.c:1436:2: note: here
case RI_GET_STATE_END:
^~~~
vim +/sCCBCtlName +1165 drivers/gpu/drm/img-rogue/1.10/rgxfwutils.c
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1128
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1129 /*!
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1130
*******************************************************************************
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1131 @Function RGXSetupCCB
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1132 @Description Allocate and initialise
the kernel CCB
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1133 @Input psDevInfo
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1134 @Input ppsCCBCtl
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1135 @Input ppsCCBCtlMemDesc
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1136 @Input ppui8CCB
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1137 @Input ppsCCBMemDesc
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1138 @Input psCCBCtlFWAddr
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1139 @Input ui32NumCmdsLog2
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1140 @Input ui32CmdSize
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1141 @Input pszName
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1142
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1143 @Return PVRSRV_ERROR
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1144
******************************************************************************/
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1145 static PVRSRV_ERROR
RGXSetupCCB(PVRSRV_RGXDEV_INFO *psDevInfo,
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1146 RGXFWIF_CCB_CTL **ppsCCBCtl,
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1147 DEVMEM_MEMDESC **ppsCCBCtlMemDesc,
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1148 IMG_UINT8 **ppui8CCB,
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1149 DEVMEM_MEMDESC **ppsCCBMemDesc,
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1150 PRGXFWIF_CCB_CTL *psCCBCtlFWAddr,
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1151 PRGXFWIF_CCB *psCCBFWAddr,
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1152 IMG_UINT32 ui32NumCmdsLog2,
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1153 IMG_UINT32 ui32CmdSize,
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1154 DEVMEM_FLAGS_T uiCCBMemAllocFlags,
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1155 const IMG_CHAR *pszName)
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1156 {
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1157 const IMG_UINT32 ui32MaxInputStrSize =
13;
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1158 const IMG_UINT32 ui32AppendStrSize =
7;
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1159 const IMG_UINT32 ui32MaxTotalStrSize =
ui32MaxInputStrSize + ui32AppendStrSize +1;
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1160 const IMG_CHAR sAppend[] =
"Control";
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1161 PVRSRV_ERROR eError;
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1162 RGXFWIF_CCB_CTL *psCCBCtl;
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1163 DEVMEM_FLAGS_T uiCCBCtlMemAllocFlags;
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1164 IMG_UINT32 ui32CCBSize = (1U <<
ui32NumCmdsLog2);
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 @1165
IMG_CHAR sCCBCtlName[ui32MaxTotalStrSize];
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1166
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1167 PVR_ASSERT(strlen(sAppend) ==
ui32AppendStrSize);
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1168 PVR_ASSERT(strlen(pszName) <=
ui32MaxInputStrSize);
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1169
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1170 uiCCBCtlMemAllocFlags =
PVRSRV_MEMALLOCFLAG_DEVICE_FLAG(PMMETA_PROTECT) |
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1171 PVRSRV_MEMALLOCFLAG_GPU_READABLE |
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1172 PVRSRV_MEMALLOCFLAG_GPU_WRITEABLE |
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1173 PVRSRV_MEMALLOCFLAG_CPU_READABLE |
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1174 PVRSRV_MEMALLOCFLAG_CPU_WRITEABLE |
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1175
PVRSRV_MEMALLOCFLAG_KERNEL_CPU_MAPPABLE |
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1176 PVRSRV_MEMALLOCFLAG_UNCACHED |
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1177 PVRSRV_MEMALLOCFLAG_ZERO_ON_ALLOC;
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1178
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1179 /* Append "Control" to the
name for the control struct. */
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1180 strcpy(sCCBCtlName, pszName);
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1181 strncat(sCCBCtlName, sAppend,
ui32AppendStrSize);
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1182
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1183 /* Allocate memory for the CCB
control.*/
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1184 PDUMPCOMMENT("Allocate memory for
%s", sCCBCtlName);
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1185 eError = DevmemFwAllocate(psDevInfo,
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1186 sizeof(RGXFWIF_CCB_CTL),
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1187 uiCCBCtlMemAllocFlags,
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1188 sCCBCtlName,
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1189 ppsCCBCtlMemDesc);
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1190
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1191 if (eError != PVRSRV_OK)
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1192 {
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1193 PVR_DPF((PVR_DBG_ERROR,"%s:
Failed to allocate %s (%u)", __func__, sCCBCtlName, eError));
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1194 goto fail;
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1195 }
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1196
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1197 /*
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1198 * Allocate memory for the CCB.
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1199 * (this will reference further command
data in non-shared CCBs)
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1200 */
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1201 PDUMPCOMMENT("Allocate memory for
%s", pszName);
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1202 eError = DevmemFwAllocate(psDevInfo,
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1203 ui32CCBSize * ui32CmdSize,
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1204 uiCCBMemAllocFlags,
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1205 pszName,
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1206 ppsCCBMemDesc);
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1207
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1208 if (eError != PVRSRV_OK)
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1209 {
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1210 PVR_DPF((PVR_DBG_ERROR,"%s:
Failed to allocate %s (%u)", __func__, pszName, eError));
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1211 goto fail;
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1212 }
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1213
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1214 /*
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1215 Map the CCB control to the kernel.
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1216 */
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1217 eError =
DevmemAcquireCpuVirtAddr(*ppsCCBCtlMemDesc,
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1218 (void **)ppsCCBCtl);
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1219 if (eError != PVRSRV_OK)
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1220 {
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1221 PVR_DPF((PVR_DBG_ERROR,"%s:
Failed to acquire cpu %s (%u)", __func__, sCCBCtlName, eError));
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1222 goto fail;
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1223 }
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1224
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1225 /*
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1226 * Map the CCB to the kernel.
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1227 */
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1228 eError =
DevmemAcquireCpuVirtAddr(*ppsCCBMemDesc,
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1229 (void **)ppui8CCB);
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1230 if (eError != PVRSRV_OK)
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1231 {
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1232 PVR_DPF((PVR_DBG_ERROR,"%s:
Failed to acquire cpu %s (%u)", __func__, pszName, eError));
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1233 goto fail;
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1234 }
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1235
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1236 /*
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1237 * Initialise the CCB control.
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1238 */
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1239 psCCBCtl = *ppsCCBCtl;
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1240 psCCBCtl->ui32WriteOffset = 0;
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1241 psCCBCtl->ui32ReadOffset = 0;
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1242 psCCBCtl->ui32WrapMask = ui32CCBSize
- 1;
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1243 psCCBCtl->ui32CmdSize =
ui32CmdSize;
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1244
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1245 /*
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1246 * Set-up RGXFWIfCtl pointers to access
the kCCB
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1247 */
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1248 RGXSetFirmwareAddress(psCCBCtlFWAddr,
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1249 *ppsCCBCtlMemDesc,
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1250 0, RFW_FWADDR_NOREF_FLAG);
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1251
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1252 RGXSetFirmwareAddress(psCCBFWAddr,
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1253 *ppsCCBMemDesc,
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1254 0, RFW_FWADDR_NOREF_FLAG);
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1255
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1256 /*
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1257 * Pdump the CCB control.
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1258 */
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1259 PDUMPCOMMENT("Initialise %s",
sCCBCtlName);
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1260 DevmemPDumpLoadMem(*ppsCCBCtlMemDesc,
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1261 0,
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1262 sizeof(RGXFWIF_CCB_CTL),
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1263 0);
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1264
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1265 return PVRSRV_OK;
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1266
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1267 fail:
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1268 RGXFreeCCB(psDevInfo,
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1269 ppsCCBCtl,
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1270 ppsCCBCtlMemDesc,
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1271 ppui8CCB,
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1272 ppsCCBMemDesc);
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1273
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1274 PVR_ASSERT(eError != PVRSRV_OK);
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1275 return eError;
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1276 }
8023dfb4dc0d07 Luigi Santivetti 2019-10-31 1277
:::::: The code at line 1165 was first introduced by commit
:::::: 8023dfb4dc0d07510b36f48b2ba2442aa99c89bf CHROMIUM: drm/img-rogue: Add 1.10 IMG
PowerVR Rogue driver
:::::: TO: Luigi Santivetti <luigi.santivetti(a)imagination.corp-partner.google.com>
:::::: CC: Commit Bot <commit-bot(a)chromium.org>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org