[Intel-gfx] [PATCH] RFT drm/i915: Try setting the engine wa_list from the ring (fwd)

Julia Lawall julia.lawall at lip6.fr
Sat Apr 13 19:45:25 UTC 2019


Hello,

It looks like an unlock is missing on line 1279.

julia

---------- Forwarded message ----------
Date: Sun, 14 Apr 2019 03:36:18 +0800
From: kbuild test robot <lkp at intel.com>
To: kbuild at 01.org
Cc: Julia Lawall <julia.lawall at lip6.fr>
Subject: Re: [Intel-gfx] [PATCH] RFT drm/i915: Try setting the engine wa_list
    from the ring

CC: kbuild-all at 01.org
In-Reply-To: <20190413072912.25173-1-chris at chris-wilson.co.uk>
References: <20190413072912.25173-1-chris at chris-wilson.co.uk>
TO: Chris Wilson <chris at chris-wilson.co.uk>
CC: intel-gfx at lists.freedesktop.org
CC:

Hi Chris,

Thank you for the patch! Perhaps something to improve:

[auto build test WARNING on drm-intel/for-linux-next]
[cannot apply to v5.1-rc4 next-20190412]
[if your patch is applied to the wrong git tree, please drop us a note to help improve the system]

url:    https://github.com/0day-ci/linux/commits/Chris-Wilson/RFT-drm-i915-Try-setting-the-engine-wa_list-from-the-ring/20190413-233429
base:   git://anongit.freedesktop.org/drm-intel for-linux-next
:::::: branch date: 4 hours ago
:::::: commit date: 4 hours ago

>> drivers/gpu/drm/i915/intel_workarounds.c:1279:3-9: preceding lock on line 1268

# https://github.com/0day-ci/linux/commit/f86cba74731bd06ab80ba0bb487eda2196300165
git remote add linux-review https://github.com/0day-ci/linux
git remote update linux-review
git checkout f86cba74731bd06ab80ba0bb487eda2196300165
vim +1279 drivers/gpu/drm/i915/intel_workarounds.c

4a15c75c Tvrtko Ursulin 2018-12-03  1252
f86cba74 Chris Wilson   2019-04-13  1253  static int
f86cba74 Chris Wilson   2019-04-13  1254  wa_list_lri(struct i915_request *rq, const struct i915_wa_list *wal)
4a15c75c Tvrtko Ursulin 2018-12-03  1255  {
f86cba74 Chris Wilson   2019-04-13  1256  	struct intel_uncore *uncore = rq->engine->uncore;
f86cba74 Chris Wilson   2019-04-13  1257  	struct i915_wa *wa = wal->list;
f86cba74 Chris Wilson   2019-04-13  1258  	unsigned int rem = wal->count;
f86cba74 Chris Wilson   2019-04-13  1259  	enum forcewake_domains fw;
f86cba74 Chris Wilson   2019-04-13  1260  	unsigned long flags;
f86cba74 Chris Wilson   2019-04-13  1261
f86cba74 Chris Wilson   2019-04-13  1262  	if (!rem)
f86cba74 Chris Wilson   2019-04-13  1263  		return 0;
f86cba74 Chris Wilson   2019-04-13  1264
f86cba74 Chris Wilson   2019-04-13  1265  	fw = wal_get_fw_for_rmw(uncore, wal);
f86cba74 Chris Wilson   2019-04-13  1266
f86cba74 Chris Wilson   2019-04-13  1267  	intel_uncore_forcewake_get__locked(uncore, fw);
f86cba74 Chris Wilson   2019-04-13 @1268  	spin_lock_irqsave(&uncore->lock, flags);
f86cba74 Chris Wilson   2019-04-13  1269
f86cba74 Chris Wilson   2019-04-13  1270  	do {
f86cba74 Chris Wilson   2019-04-13  1271  		unsigned int count;
f86cba74 Chris Wilson   2019-04-13  1272  		u32 *cs;
f86cba74 Chris Wilson   2019-04-13  1273
f86cba74 Chris Wilson   2019-04-13  1274  		count = min(rem, 100u);
f86cba74 Chris Wilson   2019-04-13  1275  		rem -= count;
f86cba74 Chris Wilson   2019-04-13  1276
f86cba74 Chris Wilson   2019-04-13  1277  		cs = intel_ring_begin(rq, 2 * count + 2);
f86cba74 Chris Wilson   2019-04-13  1278  		if (IS_ERR(cs))
f86cba74 Chris Wilson   2019-04-13 @1279  			return PTR_ERR(cs);
f86cba74 Chris Wilson   2019-04-13  1280
f86cba74 Chris Wilson   2019-04-13  1281  		*cs++ = MI_LOAD_REGISTER_IMM(count);
f86cba74 Chris Wilson   2019-04-13  1282  		while (count--) {
f86cba74 Chris Wilson   2019-04-13  1283  			u32 val = intel_uncore_read_fw(uncore, wa->reg);
f86cba74 Chris Wilson   2019-04-13  1284
f86cba74 Chris Wilson   2019-04-13  1285  			*cs++ = i915_mmio_reg_offset(wa->reg);
f86cba74 Chris Wilson   2019-04-13  1286  			*cs++ = (val & ~wa->mask) | wa->val;
f86cba74 Chris Wilson   2019-04-13  1287
f86cba74 Chris Wilson   2019-04-13  1288  			wa++;
f86cba74 Chris Wilson   2019-04-13  1289  		}
f86cba74 Chris Wilson   2019-04-13  1290  		*cs++ = MI_NOOP;
f86cba74 Chris Wilson   2019-04-13  1291
f86cba74 Chris Wilson   2019-04-13  1292  		intel_ring_advance(rq, cs);
f86cba74 Chris Wilson   2019-04-13  1293  	} while (rem);
f86cba74 Chris Wilson   2019-04-13  1294
f86cba74 Chris Wilson   2019-04-13  1295  	intel_uncore_forcewake_put__locked(uncore, fw);
f86cba74 Chris Wilson   2019-04-13  1296  	spin_unlock_irqrestore(&uncore->lock, flags);
f86cba74 Chris Wilson   2019-04-13  1297
f86cba74 Chris Wilson   2019-04-13  1298  	return 0;
f86cba74 Chris Wilson   2019-04-13  1299  }
f86cba74 Chris Wilson   2019-04-13  1300

---
0-DAY kernel test infrastructure                Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all                   Intel Corporation


More information about the Intel-gfx mailing list