Re: [BUG] rc1 rc2 rc3 not bootable - black screen after kernel loading

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Am 2014-07-25 01:20, schrieb Hugh Dickins:
> On Thu, 24 Jul 2014, Martin Kepplinger wrote:
>> Am 2014-06-30 12:39, schrieb Martin Kepplinger:
>>> back to aaeb2554337217dfa4eac2fcc90da7be540b9a73 as the first bad
>>> commit. why is this not revertable exactly? how can I show a complete
>>> list of commits this merge introduces?
>>>
>>
>> It seems that _nobody_ is running a simple 32 bit i915 (acer) laptop.
>> rc6 is still unusable. Black screen directly after kernel-loading. no
>> change since rc1.
>>
>> Seems like I won't be able to use 3.16. I'm happy to test patches and am
>> happy for any advice what to do, when time permits.
> 
> Martin, I know nothing about aaeb25543372 and why it should be relevant,
> but if you're having rc1..rc6 32-bit i915 black screens, please try this
> patch that Daniel Vetter put in his fixes queue on Monday, which I'm
> hoping will reach Linus for -rc7.
> 
> Hugh
> 
> [PATCH] drm/i915: fix freeze with blank screen booting highmem
> 
> x86_64 boots and displays fine, but booting x86_32 with CONFIG_HIGHMEM
> has frozen with a blank screen throughout 3.16-rc on this ThinkPad T420s,
> with i915 generation 6 graphics.
> 
> Fix 9d0a6fa6c5e6 ("drm/i915: add render state initialization"): kunmap()
> takes struct page * argument, not virtual address.  Which the compiler
> kindly points out, if you use the appropriate u32 *batch, instead of
> silencing it with a void *.
> 
> Why did bisection lead decisively to nearby 229b0489aa75 ("drm/i915:
> add null render states for gen6, gen7 and gen8")?  Because the u32
> deposited at that virtual address by the previous stub failed the
> PageHighMem test, and so caused no harm.
> 
> Signed-off-by: Hugh Dickins <hughd@xxxxxxxxxx>
> ---
> 
>  drivers/gpu/drm/i915/i915_gem_render_state.c |    4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
> 
> --- 3.16-rc/drivers/gpu/drm/i915/i915_gem_render_state.c	2014-06-16 00:28:52.384076465 -0700
> +++ linux/drivers/gpu/drm/i915/i915_gem_render_state.c	2014-07-21 20:10:03.824481521 -0700
> @@ -31,7 +31,7 @@
>  struct i915_render_state {
>  	struct drm_i915_gem_object *obj;
>  	unsigned long ggtt_offset;
> -	void *batch;
> +	u32 *batch;
>  	u32 size;
>  	u32 len;
>  };
> @@ -80,7 +80,7 @@ free:
>  
>  static void render_state_free(struct i915_render_state *so)
>  {
> -	kunmap(so->batch);
> +	kunmap(kmap_to_page(so->batch));
>  	i915_gem_object_ggtt_unpin(so->obj);
>  	drm_gem_object_unreference(&so->obj->base);
>  	kfree(so);
> 

yes! thanks Hugh. On top of linus' current tree, that finally fixes my
problem! I hope it'll be included soon!

                              martin

p.s. linux-media removed from thread
--
To unsubscribe from this list: send the line "unsubscribe linux-acpi" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Linux IBM ACPI]     [Linux Power Management]     [Linux Kernel]     [Linux Laptop]     [Kernel Newbies]     [Share Photos]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Video 4 Linux]     [Device Mapper]     [Linux Resources]

  Powered by Linux