On Wed, 10 Dec 2014, Daniel Vetter <daniel@xxxxxxxx> wrote: > On Wed, Dec 10, 2014 at 08:17:11AM +0000, Chris Wilson wrote: >> This added as a BUG_ON as it considered that no one would ever request >> an unaligned object. However, it turns out that some BIOSes will >> allocate a scanout that is offset from 0 and not aligned to a page >> boundary, and we were passing this through and hitting the BUG_ON during >> boot. >> >> Quietly reject such a request to reserve the unaligned stolen object and >> let the boot continue, restoring previous behaviour (i.e. no BIOS >> framebuffer preservation). >> >> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=86883 >> Signed-off-by: Chris Wilson <chris@xxxxxxxxxxxxxxxxxx> >> Cc: stable@xxxxxxxxxxxxxxx >> --- >> drivers/gpu/drm/i915/i915_gem_stolen.c | 10 ++++++---- >> 1 file changed, 6 insertions(+), 4 deletions(-) >> >> diff --git a/drivers/gpu/drm/i915/i915_gem_stolen.c b/drivers/gpu/drm/i915/i915_gem_stolen.c >> index 5c616ec2c5c8..a3bc0fa07c6c 100644 >> --- a/drivers/gpu/drm/i915/i915_gem_stolen.c >> +++ b/drivers/gpu/drm/i915/i915_gem_stolen.c >> @@ -646,13 +646,15 @@ i915_gem_object_create_stolen_for_preallocated(struct drm_device *dev, >> DRM_DEBUG_KMS("creating preallocated stolen object: stolen_offset=%x, gtt_offset=%x, size=%x\n", >> stolen_offset, gtt_offset, size); >> >> - /* KISS and expect everything to be page-aligned */ >> - BUG_ON(stolen_offset & 4095); >> - BUG_ON(size & 4095); >> - >> if (WARN_ON(size == 0)) >> return NULL; >> >> + /* KISS and expect everything to be GTT page-aligned */ >> + if ((stolen_offset | size) & 4095) { > > Imo we should stil WARN_ON and fixup up the takeover code to align things > properly ... Can we fix the regression with Chris' patch and do proper stuff when we figure out what we want to do? BR, Jani. > -daniel > >> + DRM_DEBUG_KMS("request for unaligned stolen object, denied\n"); >> + return NULL; >> + } >> + >> stolen = kzalloc(sizeof(*stolen), GFP_KERNEL); >> if (!stolen) >> return NULL; >> -- >> 2.1.3 >> >> _______________________________________________ >> Intel-gfx mailing list >> Intel-gfx@xxxxxxxxxxxxxxxxxxxxx >> http://lists.freedesktop.org/mailman/listinfo/intel-gfx > > -- > Daniel Vetter > Software Engineer, Intel Corporation > +41 (0) 79 365 57 48 - http://blog.ffwll.ch > _______________________________________________ > Intel-gfx mailing list > Intel-gfx@xxxxxxxxxxxxxxxxxxxxx > http://lists.freedesktop.org/mailman/listinfo/intel-gfx -- Jani Nikula, Intel Open Source Technology Center _______________________________________________ Intel-gfx mailing list Intel-gfx@xxxxxxxxxxxxxxxxxxxxx http://lists.freedesktop.org/mailman/listinfo/intel-gfx