All of lore.kernel.org
 help / color / mirror / Atom feed
From: Daniel Vetter <daniel@ffwll.ch>
To: Max Staudt <mstaudt@suse.de>
Cc: b.zolnierkie@samsung.com, linux-fbdev@vger.kernel.org,
	michal@markovi.net, sndirsch@suse.com, oneukum@suse.com,
	tiwai@suse.com, dri-devel@lists.freedesktop.org,
	linux-kernel@vger.kernel.org, bernhard.rosenkranzer@linaro.org,
	philm@manjaro.org
Subject: Re: [RFC PATCH v2 00/13] Kernel based bootsplash
Date: Tue, 19 Dec 2017 17:16:30 +0100	[thread overview]
Message-ID: <20171219161630.GI26573@phenom.ffwll.local> (raw)
In-Reply-To: <20171213194755.3409-1-mstaudt@suse.de>

On Wed, Dec 13, 2017 at 08:47:42PM +0100, Max Staudt wrote:
> Dear fbdev and fbcon developers,
> 
> Thank you very much for your input for the first patch series.
> 
> I've included your feedback into this second roll, and kindly ask for
> your opinion on the new patch series.

Ok I've realized that my assumptions about why you need this aren't
holding up.

So from reading these patches it sounded like you want an in-kernel boot
splash because that would be on the display faster than a userspace one
like plymouth. That's the only reasons I can see for this (if there's
another good justification, please bring it up).

I only know of very embedded setups (tv top boxes, in vehicle
entertainment) where that kind of "time to first image" really matters,
and those systems:
- have a real hw kms driver
- don't have fbcon or fbdev emulation enabled (except for some closed
  source stacks that are a bit slow to adapt to the new world, and we
  don't care about those in gfx).

But from discussions it sounds like you very much want to use this on
servers, which makes 0 sense to me. On a server something like plymouth
should do a perfectly reasonable job.

So, why exactly do we need this?

(let's stop the other thread meanwhile, there's no point discussing
implementation details if the why? question isn't answered yet)

Cheers, Daniel

> 
> 
> Changes from v1 to v2:
> 
>  + Added a user space tool to create splash theme files
>  + Bumped the file format version:
>     - Larger structs for easy future expansion
>     - 2-byte corner offset
>     - Offset either from corner or from center
>     - Fixed padding before header->frame_ms
>  + Moved bootsplash_file.h to uapi/linux
>  + Merged several patches
>  + Theme files are now loaded via request_firmware()
>  + sysfs hook to allow loading of theme files via request_firmware()
>  + Dropped the .enable cmdline option and the default file name.
>    The splash will be shown as soon as a file is specified.
>  + Dropped custom workqueue in favor of the kernel queue
>    and cancel_delayed_work_sync()
>  + Marked loaded data as const, and load/enable it atomically
>  + Reduced global state by moving data into other structures
>  + EXPORT_SYMBOL_GPL for fbcon_set_dummyops()
>  + Atomic and barrier for splash enabled state instead of spinlock
>  + Reduced warnings to infos
>  + Rate limited printk
>  + Changed the multi-line comment layout to kernel style
>  + Simplified the file headers
>  + reST-ed the documentation
> 
> 
> 
> Max
> 
> 
> 
> 
> 
> _______________________________________________
> dri-devel mailing list
> dri-devel@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/dri-devel

-- 
Daniel Vetter
Software Engineer, Intel Corporation
http://blog.ffwll.ch

WARNING: multiple messages have this Message-ID (diff)
From: Daniel Vetter <daniel@ffwll.ch>
To: Max Staudt <mstaudt@suse.de>
Cc: linux-fbdev@vger.kernel.org, michal@markovi.net,
	b.zolnierkie@samsung.com, sndirsch@suse.com, oneukum@suse.com,
	tiwai@suse.com, dri-devel@lists.freedesktop.org,
	linux-kernel@vger.kernel.org, philm@manjaro.org,
	bernhard.rosenkranzer@linaro.org
Subject: Re: [RFC PATCH v2 00/13] Kernel based bootsplash
Date: Tue, 19 Dec 2017 16:16:30 +0000	[thread overview]
Message-ID: <20171219161630.GI26573@phenom.ffwll.local> (raw)
In-Reply-To: <20171213194755.3409-1-mstaudt@suse.de>

On Wed, Dec 13, 2017 at 08:47:42PM +0100, Max Staudt wrote:
> Dear fbdev and fbcon developers,
> 
> Thank you very much for your input for the first patch series.
> 
> I've included your feedback into this second roll, and kindly ask for
> your opinion on the new patch series.

Ok I've realized that my assumptions about why you need this aren't
holding up.

So from reading these patches it sounded like you want an in-kernel boot
splash because that would be on the display faster than a userspace one
like plymouth. That's the only reasons I can see for this (if there's
another good justification, please bring it up).

I only know of very embedded setups (tv top boxes, in vehicle
entertainment) where that kind of "time to first image" really matters,
and those systems:
- have a real hw kms driver
- don't have fbcon or fbdev emulation enabled (except for some closed
  source stacks that are a bit slow to adapt to the new world, and we
  don't care about those in gfx).

But from discussions it sounds like you very much want to use this on
servers, which makes 0 sense to me. On a server something like plymouth
should do a perfectly reasonable job.

So, why exactly do we need this?

(let's stop the other thread meanwhile, there's no point discussing
implementation details if the why? question isn't answered yet)

Cheers, Daniel

> 
> 
> Changes from v1 to v2:
> 
>  + Added a user space tool to create splash theme files
>  + Bumped the file format version:
>     - Larger structs for easy future expansion
>     - 2-byte corner offset
>     - Offset either from corner or from center
>     - Fixed padding before header->frame_ms
>  + Moved bootsplash_file.h to uapi/linux
>  + Merged several patches
>  + Theme files are now loaded via request_firmware()
>  + sysfs hook to allow loading of theme files via request_firmware()
>  + Dropped the .enable cmdline option and the default file name.
>    The splash will be shown as soon as a file is specified.
>  + Dropped custom workqueue in favor of the kernel queue
>    and cancel_delayed_work_sync()
>  + Marked loaded data as const, and load/enable it atomically
>  + Reduced global state by moving data into other structures
>  + EXPORT_SYMBOL_GPL for fbcon_set_dummyops()
>  + Atomic and barrier for splash enabled state instead of spinlock
>  + Reduced warnings to infos
>  + Rate limited printk
>  + Changed the multi-line comment layout to kernel style
>  + Simplified the file headers
>  + reST-ed the documentation
> 
> 
> 
> Max
> 
> 
> 
> 
> 
> _______________________________________________
> dri-devel mailing list
> dri-devel@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/dri-devel

-- 
Daniel Vetter
Software Engineer, Intel Corporation
http://blog.ffwll.ch

WARNING: multiple messages have this Message-ID (diff)
From: Daniel Vetter <daniel@ffwll.ch>
To: Max Staudt <mstaudt@suse.de>
Cc: linux-fbdev@vger.kernel.org, michal@markovi.net,
	b.zolnierkie@samsung.com, sndirsch@suse.com, oneukum@suse.com,
	tiwai@suse.com, dri-devel@lists.freedesktop.org,
	linux-kernel@vger.kernel.org, philm@manjaro.org,
	bernhard.rosenkranzer@linaro.org
Subject: Re: [RFC PATCH v2 00/13] Kernel based bootsplash
Date: Tue, 19 Dec 2017 17:16:30 +0100	[thread overview]
Message-ID: <20171219161630.GI26573@phenom.ffwll.local> (raw)
In-Reply-To: <20171213194755.3409-1-mstaudt@suse.de>

On Wed, Dec 13, 2017 at 08:47:42PM +0100, Max Staudt wrote:
> Dear fbdev and fbcon developers,
> 
> Thank you very much for your input for the first patch series.
> 
> I've included your feedback into this second roll, and kindly ask for
> your opinion on the new patch series.

Ok I've realized that my assumptions about why you need this aren't
holding up.

So from reading these patches it sounded like you want an in-kernel boot
splash because that would be on the display faster than a userspace one
like plymouth. That's the only reasons I can see for this (if there's
another good justification, please bring it up).

I only know of very embedded setups (tv top boxes, in vehicle
entertainment) where that kind of "time to first image" really matters,
and those systems:
- have a real hw kms driver
- don't have fbcon or fbdev emulation enabled (except for some closed
  source stacks that are a bit slow to adapt to the new world, and we
  don't care about those in gfx).

But from discussions it sounds like you very much want to use this on
servers, which makes 0 sense to me. On a server something like plymouth
should do a perfectly reasonable job.

So, why exactly do we need this?

(let's stop the other thread meanwhile, there's no point discussing
implementation details if the why? question isn't answered yet)

Cheers, Daniel

> 
> 
> Changes from v1 to v2:
> 
>  + Added a user space tool to create splash theme files
>  + Bumped the file format version:
>     - Larger structs for easy future expansion
>     - 2-byte corner offset
>     - Offset either from corner or from center
>     - Fixed padding before header->frame_ms
>  + Moved bootsplash_file.h to uapi/linux
>  + Merged several patches
>  + Theme files are now loaded via request_firmware()
>  + sysfs hook to allow loading of theme files via request_firmware()
>  + Dropped the .enable cmdline option and the default file name.
>    The splash will be shown as soon as a file is specified.
>  + Dropped custom workqueue in favor of the kernel queue
>    and cancel_delayed_work_sync()
>  + Marked loaded data as const, and load/enable it atomically
>  + Reduced global state by moving data into other structures
>  + EXPORT_SYMBOL_GPL for fbcon_set_dummyops()
>  + Atomic and barrier for splash enabled state instead of spinlock
>  + Reduced warnings to infos
>  + Rate limited printk
>  + Changed the multi-line comment layout to kernel style
>  + Simplified the file headers
>  + reST-ed the documentation
> 
> 
> 
> Max
> 
> 
> 
> 
> 
> _______________________________________________
> dri-devel mailing list
> dri-devel@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/dri-devel

-- 
Daniel Vetter
Software Engineer, Intel Corporation
http://blog.ffwll.ch
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

  parent reply	other threads:[~2017-12-19 16:16 UTC|newest]

Thread overview: 193+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-12-13 19:47 [RFC PATCH v2 00/13] Kernel based bootsplash Max Staudt
2017-12-13 19:47 ` Max Staudt
2017-12-13 19:47 ` Max Staudt
2017-12-13 19:47 ` [RFC PATCH v2 01/13] bootsplash: Initial implementation showing black screen Max Staudt
2017-12-13 19:47   ` Max Staudt
2017-12-13 19:47   ` Max Staudt
2017-12-13 23:55   ` Randy Dunlap
2017-12-13 23:55     ` Randy Dunlap
2017-12-14 15:37     ` Max Staudt
2017-12-14 15:37       ` Max Staudt
2017-12-13 19:47 ` [RFC PATCH v2 02/13] bootsplash: Add file reading and picture rendering Max Staudt
2017-12-13 19:47   ` Max Staudt
2017-12-13 19:47   ` Max Staudt
2017-12-13 19:47 ` [RFC PATCH v2 03/13] bootsplash: Flush framebuffer after drawing Max Staudt
2017-12-13 19:47   ` Max Staudt
2017-12-13 19:47   ` Max Staudt
2017-12-13 21:35   ` Daniel Vetter
2017-12-13 21:35     ` Daniel Vetter
2017-12-13 21:35     ` Daniel Vetter
2017-12-14 15:36     ` Max Staudt
2017-12-14 15:36       ` Max Staudt
2017-12-14 15:36       ` Max Staudt
2017-12-19 12:23       ` Daniel Vetter
2017-12-19 12:23         ` Daniel Vetter
2017-12-19 12:23         ` Daniel Vetter
2017-12-19 13:34         ` Max Staudt
2017-12-19 13:34           ` Max Staudt
2017-12-19 13:34           ` Max Staudt
2017-12-19 13:57           ` Daniel Vetter
2017-12-19 13:57             ` Daniel Vetter
2017-12-19 14:07             ` Oliver Neukum
2017-12-19 14:07               ` Oliver Neukum
2017-12-31 12:53               ` Alan Cox
2017-12-31 12:53                 ` Alan Cox
2017-12-31 12:53                 ` Alan Cox
2018-01-03 18:04                 ` Max Staudt
2018-01-03 18:04                   ` Max Staudt
2018-01-03 18:04                   ` Max Staudt
2017-12-19 15:41             ` Max Staudt
2017-12-19 15:41               ` Max Staudt
2017-12-19 15:41               ` Max Staudt
2017-12-19 16:02               ` Daniel Vetter
2017-12-19 16:02                 ` Daniel Vetter
2017-12-19 16:02                 ` Daniel Vetter
2017-12-19 16:23                 ` Max Staudt
2017-12-19 16:23                   ` Max Staudt
2017-12-19 16:23                   ` Max Staudt
2017-12-20  9:45                   ` Daniel Vetter
2017-12-20  9:45                     ` Daniel Vetter
2017-12-20  9:45                     ` Daniel Vetter
2017-12-19 16:09               ` Daniel Vetter
2017-12-19 16:09                 ` Daniel Vetter
2017-12-19 16:09                 ` Daniel Vetter
2017-12-19 16:26                 ` Max Staudt
2017-12-19 16:26                   ` Max Staudt
2017-12-19 16:26                   ` Max Staudt
2017-12-19 21:01               ` Ray Strode
2017-12-19 21:01                 ` Ray Strode
2017-12-19 21:01                 ` Ray Strode
2017-12-20 13:14                 ` Max Staudt
2017-12-20 13:14                   ` Max Staudt
2017-12-20 13:14                   ` Max Staudt
2017-12-20 15:35                   ` Ray Strode
2017-12-20 15:35                     ` Ray Strode
2017-12-20 15:35                     ` Ray Strode
2017-12-20 16:52                     ` Max Staudt
2017-12-20 16:52                       ` Max Staudt
2017-12-20 16:52                       ` Max Staudt
2017-12-13 19:47 ` [RFC PATCH v2 04/13] bootsplash: Add corner positioning Max Staudt
2017-12-13 19:47   ` Max Staudt
2017-12-13 19:47   ` Max Staudt
2017-12-13 19:47 ` [RFC PATCH v2 05/13] bootsplash: Add animation support Max Staudt
2017-12-13 19:47   ` Max Staudt
2017-12-13 19:47   ` Max Staudt
2017-12-13 19:47 ` [RFC PATCH v2 06/13] vt: Redraw bootsplash fully on console_unblank Max Staudt
2017-12-13 19:47   ` Max Staudt
2017-12-13 19:47   ` Max Staudt
2017-12-13 19:47 ` [RFC PATCH v2 07/13] vt: Add keyboard hook to disable bootsplash Max Staudt
2017-12-13 19:47   ` Max Staudt
2017-12-13 19:47   ` Max Staudt
2017-12-13 19:47 ` [RFC PATCH v2 08/13] sysrq: Disable bootsplash on SAK Max Staudt
2017-12-13 19:47   ` Max Staudt
2017-12-13 19:47   ` Max Staudt
2017-12-13 19:47 ` [RFC PATCH v2 09/13] fbcon: Disable bootsplash on oops Max Staudt
2017-12-13 19:47   ` Max Staudt
2017-12-13 19:47   ` Max Staudt
2017-12-13 19:47 ` [RFC PATCH v2 10/13] Documentation: Add bootsplash main documentation Max Staudt
2017-12-13 19:47   ` Max Staudt
2017-12-13 19:47   ` Max Staudt
2017-12-13 19:47 ` [RFC PATCH v2 11/13] bootsplash: sysfs entries to load and unload files Max Staudt
2017-12-13 19:47   ` Max Staudt
2017-12-13 19:47   ` Max Staudt
2017-12-13 19:47 ` [RFC PATCH v2 12/13] tools/bootsplash: Add a basic splash file creation tool Max Staudt
2017-12-13 19:47   ` Max Staudt
2017-12-13 19:47   ` Max Staudt
2017-12-13 19:47 ` [RFC PATCH v2 13/13] tools/bootsplash: Add script and data to create sample file Max Staudt
2017-12-13 19:47   ` Max Staudt
2017-12-13 19:47   ` Max Staudt
2017-12-13 19:52 ` [RFC PATCH v2 00/13] Kernel based bootsplash Max Staudt
2017-12-13 19:52   ` Max Staudt
2017-12-13 19:52   ` Max Staudt
2017-12-19 16:16 ` Daniel Vetter [this message]
2017-12-19 16:16   ` Daniel Vetter
2017-12-19 16:16   ` Daniel Vetter
2017-12-19 17:04   ` Max Staudt
2017-12-19 17:04     ` Max Staudt
2017-12-19 17:04     ` Max Staudt
2017-12-19 17:26     ` Daniel Vetter
2017-12-19 17:26       ` Daniel Vetter
2017-12-19 17:26       ` Daniel Vetter
2017-12-19 18:40       ` Max Staudt
2017-12-19 18:40         ` Max Staudt
2017-12-19 18:40         ` Max Staudt
2017-12-20  9:43         ` Daniel Vetter
2017-12-20  9:43           ` Daniel Vetter
2017-12-20  9:43           ` Daniel Vetter
2017-12-20 10:06           ` Neil Armstrong
2017-12-20 10:06             ` Neil Armstrong
2017-12-20 10:06             ` Neil Armstrong
2017-12-20 10:14             ` Daniel Vetter
2017-12-20 10:14               ` Daniel Vetter
2017-12-20 10:14               ` Daniel Vetter
2017-12-20 14:55               ` Max Staudt
2017-12-20 14:55                 ` Max Staudt
2017-12-20 15:11                 ` Daniel Vetter
2017-12-20 15:11                   ` Daniel Vetter
2017-12-20 15:11                   ` Daniel Vetter
2017-12-20 15:19                   ` Daniel Vetter
2017-12-20 15:19                     ` Daniel Vetter
2017-12-20 15:19                     ` Daniel Vetter
2017-12-20 15:22                     ` Daniel Vetter
2017-12-20 15:22                       ` Daniel Vetter
2017-12-20 15:22                       ` Daniel Vetter
2017-12-20 16:23                     ` Max Staudt
2017-12-20 16:23                       ` Max Staudt
2017-12-20 16:23                       ` Max Staudt
2017-12-20 16:15                   ` Max Staudt
2017-12-20 16:15                     ` Max Staudt
2017-12-20 16:15                     ` Max Staudt
2017-12-31 12:44                   ` Alan Cox
2017-12-31 12:44                     ` Alan Cox
2017-12-31 12:44                     ` Alan Cox
2018-01-03 18:00                     ` Max Staudt
2018-01-03 18:00                       ` Max Staudt
2017-12-20 14:16             ` Max Staudt
2017-12-20 14:16               ` Max Staudt
2017-12-20 14:16               ` Max Staudt
2017-12-20 14:10           ` Max Staudt
2017-12-20 14:10             ` Max Staudt
2017-12-20 14:10             ` Max Staudt
2017-12-31 12:35         ` Alan Cox
2017-12-31 12:35           ` Alan Cox
2017-12-31 12:35           ` Alan Cox
2018-01-03 17:56           ` Max Staudt
2018-01-03 17:56             ` Max Staudt
2018-01-03 17:56             ` Max Staudt
2017-12-19 20:30     ` Ray Strode
2017-12-19 20:30       ` Ray Strode
2017-12-19 20:30       ` Ray Strode
2017-12-20 13:03       ` Max Staudt
2017-12-20 13:03         ` Max Staudt
2017-12-20 13:03         ` Max Staudt
2017-12-20 15:21         ` Ray Strode
2017-12-20 15:21           ` Ray Strode
2017-12-20 15:21           ` Ray Strode
2017-12-20 16:44           ` Max Staudt
2017-12-20 16:44             ` Max Staudt
2017-12-20 16:44             ` Max Staudt
2017-12-21 14:51             ` Ray Strode
2017-12-21 14:51               ` Ray Strode
2017-12-21 14:51               ` Ray Strode
2017-12-21 16:32               ` Max Staudt
2017-12-21 16:32                 ` Max Staudt
2017-12-20 11:08   ` Johannes Thumshirn
2017-12-20 11:08     ` Johannes Thumshirn
2017-12-20 11:22     ` Daniel Stone
2017-12-20 11:22       ` Daniel Stone
2017-12-20 11:22       ` Daniel Stone
2017-12-20 12:48       ` Johannes Thumshirn
2017-12-20 12:48         ` Johannes Thumshirn
2017-12-29 17:13   ` Jani Nikula
2017-12-29 17:13     ` Jani Nikula
2017-12-29 17:13     ` Jani Nikula
2018-01-03 17:38     ` Max Staudt
2018-01-03 17:38       ` Max Staudt
2017-12-21  9:48 ` Daniel Vetter
2017-12-21  9:48   ` Daniel Vetter
2017-12-21  9:48   ` Daniel Vetter
2017-12-21 16:52   ` Max Staudt
2017-12-21 16:52     ` Max Staudt
2017-12-21 16:52     ` Max Staudt
2017-12-21 15:00 ` Philip Müller
2017-12-21 15:00   ` Philip Müller

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20171219161630.GI26573@phenom.ffwll.local \
    --to=daniel@ffwll.ch \
    --cc=b.zolnierkie@samsung.com \
    --cc=bernhard.rosenkranzer@linaro.org \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=linux-fbdev@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=michal@markovi.net \
    --cc=mstaudt@suse.de \
    --cc=oneukum@suse.com \
    --cc=philm@manjaro.org \
    --cc=sndirsch@suse.com \
    --cc=tiwai@suse.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.