- Jul 10, 2012
-
-
Ray Strode authored
-
Ray Strode authored
The previous systemd commit introduced a file named systemd-ask-password-plymouth.path.in The makefile was only looking for .service.in files when stripping the .in suffix, so it got installed incorrectly. This commit fixes up the Makefile.
-
Ray Strode authored
-
- Jul 09, 2012
-
-
Ray Strode authored
When plymouth service files were moved from systemd to plymouth two files got lost in the shuffle. This commit adds them. http://bugzilla.freedesktop.org/51573
-
- Jun 25, 2012
-
-
David Herrmann authored
plymouth uses a shadow framebuffer to cache screen contents for quick compositing. This shadow framebuffer may or may not have the same memory layout as the hardware framebuffer. In cases where the size and layout of pixels are the same between the shadow framebuffer and the hardware framebuffer we can memcpy() the pixels line-by-line to the hardware. If the width of area being flushed is the same number of bytes as the width of the hardware buffer, then we can memcpy() the entire flush area in one call to memcpy. The check for this latter fast-path has a miscalculation that tests the number of pixels in the flush area width to number of bytes in the buffer width. This commit adds the * 4 multiplier to correctly compare bytes with bytes instead of pixels with bytes. This commit also adds a sanity check to make sure the byte size of the hardware framebuffer width is equal to the advertised row stride.
-
- Jun 20, 2012
-
-
Ray Strode authored
The udev trigger calls that are there, are actually spurious. udev will coldplug those subsystems at start up anyway, so doing it explicitly is wrong. This commit drops those trigger calls. What does matter is the udevadm settle call. It's what makes things block until the graphics driver is loaded. udevadm settle is a big sledgehammer, though. It blocks until all the triggered events (even stuff unrelated to graphics) are finished. This commit adds a --exit-if-exists argument to udevadm settle, so it will bail early as soon as the graphics devices are up.
-
Ray Strode authored
plymouth-start.service does this sort of hacky "udevadm trigger" stuff before doing plymouth show-splash, to ensure plymouth show-splash is called after the graphcis subsystem is up. It actually does two calls: - one call that triggers any pci devices with the class 0x030000 (which is "vga compatible display device") - another call that triggers the gpu subsystem The first call is borrowed from dracut: http://dracut.git.sourceforge.net/git/gitweb.cgi?p=dracut/dracut;a=commitdiff;h=2c02c8318 and I can't find any historical context on why its needed. As I understand things, the latter should be a superset of the former. Furthermore, the first trigger is missing a --subsystem-match=pci call so it's matching the "class" attribute in every subsystem, which is slow. I'm going to drop the first trigger until I start hitting problems and need to add it back.
-
Ray Strode authored
This reverts commit cf90d3c7. It was wrong. I misunderstood what Kay told me.
-
Ray Strode authored
plymouth-start.service does this sort of hacky "udevadm trigger" call before doing plymouth show-splash, to ensure plymouth show-splash is called after the graphcis subsystem is up. Because this udev trigger call only passes --subsystem-match calls with no corresponding --subsystem call, it will trawl through all subsystems in /sys rather than just the pci subsystem (where all the matches are guaranteed to be). This commit adds --subsystem=pci to stop doing that extra work. All of this will eventually be replaced with plymouthd either listening for the udev events itself (or potentially logind, if logind gains a way to tag a "graphics" capability on a seat).
-
- Jun 13, 2012
-
-
Ray Strode authored
get_os_string either returns a string describing the distribution, or NULL on error. This NULL later causes problems since we run strlen on it. This commit makes get_os_string return "" instead of NULL for error cases. Spotted by Andreas Henriksson.
-
- Jun 08, 2012
-
-
-
-
-
-
-
-
-
-
-
-
Ray Strode authored
Most splash plugins that use random numbers seed the random number generator with the current time, but script fails, too. This commit fixes that. https://bugs.freedesktop.org/show_bug.cgi?id=42632
-
Ray Strode authored
They serve no real purpose. https://bugs.freedesktop.org/show_bug.cgi?id=42285
-
- Jun 06, 2012
-
-
Ray Strode authored
-
Ray Strode authored
Since we support the dumb ioctl now, it's useful to build the drm renderer without support for the individual drivers. This commit allows for that.
-
Ray Strode authored
Now that we have the dumb ioctl there's little reason to build these guys, since it's just as good. I'll probably drop the code entirely soon.
-
Ray Strode authored
Having the dependency is awkward and causes problems, so don't bother. This commit just copy and pastes the relevant bits for inst(). Ideally, this would be an installroot command implemented in C in util-linux, but shrug
-
Ray Strode authored
Right now, we do the end animation immediately if in shutdown mode. This is because shutdown is fast, and we don't try to estimate how long it will take. The code depends on is_idle being true after the end animation is run, but we neglect to do that in the shutdown case. This commit makes shutdown mode just call "become_idle" right away, and deletes the duplicated shutdown code path.
-
Ray Strode authored
When plymouth's VT is not the foreground VT, we tell the kernel not to scan out from the kernel buffer we manage. Also, we don't bother dispatching rendering to the kernel buffer (since it's not getting scanned out anyway). When plymouth's VT becomes the foreground VT, we tell the kernel to start scanning out from our buffer again. Unfortunately, we neglect to flush all the pending drawing that happens while VT switched away. This means we briefly show stale contents. This commit flushes all pending rendering to the kernel, before resetting the scan out buffer, so we get a current view of the splash shown immediately.
-
Ray Strode authored
In the shutdown path we start out on a different vt than where the splash is drawn. Make sure we don't set a mode until the jump. This prevents unnecessary flicker.
-
Ray Strode authored
This reverts commit 3f14f270. Forcing frame-buffer plugin makes multi-monitor look really bad. Instead, depend on the init system to make sure we stay alive until the end.
-
Ray Strode authored
Kay and Lenny want the service files shipped with plymouth instead of systemd, so toss them into the tree.
-
Ray Strode authored
Systemd will cleanse the system of running processes in the hand over from the initrd to the main root filesystem, and at shutdown. In both cases we want to keep on chugging, so we tag ourselves in a way that systemd won't kill us. See http://www.freedesktop.org/wiki/Software/systemd/RootStorageDaemons
-
- May 11, 2012
-
-
Kevin Murphy authored
The drm driver tells us the minimum dimensions it supports for buffer objects. We use this minimum for creating a small temporary 32-bit buffer to test if 32-bit buffers are supported. Unfortunately, some drivers neglect to fill in min_width/min_height and then we try to allocate a buffer with 0 sized dimensions. This commit checks for min_width/min_height being 0, and then bumps them to 1. Minor changes to initial patch by Ray Strode.
-
Steve Langasek authored
In some cases, clients may need a way to ensure that all queued messages have been flushed and are sent to the daemon (before, for instance, exiting). This commit adds an API to block until the outgoing request queue is empty.
-
- May 10, 2012
-
-
Tilmann Bubeck authored
This commit adds four keyboard shortcuts to the developer documentation that were found from reading the source: Esc: Toggle between system console and plymouth boot animation. Ctrl-V: Toogle verbose mode on and off. Ctrl-U or Ctrl-W: erase a line
-
- May 08, 2012
-
-
Ray Strode authored
I just did a quick read through and made various changes here and there.
-
Ray Strode authored
-
Tilmann Bubeck authored
This commit starts to document plymouth to help new contributors get into the code. The aim of the document is to provide useful information, such as the overall architecture, the most important data structures, and howto recipes for typical user cases, like debugging. The document is explicitly not meant to be detailed API documentation. In the future, that type of documentation may be provided with gtk-doc style annotations. The documentation is written in asciidoc (http://www.methods.co.nz/asciidoc/) and is therefore easily readable as its ascii text and can also be translated into more rich formats (like HTML). For example, to get an HTML version of the document: yum install asciidoc (or equivalent for your distribution) cd docs make development.html
-
Tilmann Bubeck authored
When the computer is progressing through its boot up process, plymouth calls into the splash plugin's on_boot_progress function at regular intervals with increasing values for "percent_done". At some point, it gets to 90% done, and that's when two-step begins its finishing animation sequence. As soon as this sequence finishes, two-step pulls its stop trigger, which 1) sets its "is_idle" flag to true and 2) pulls the core plymouthd code's idle trigger, to notify that code that it's at a good animation frame to quit (if the core plymouthd code has an idle trigger set up) During the boot process, the user may need to enter a password (the "plymouth ask-for-password" command). When that happens, the splash waits for the user to enter a password, but boot progresses in the background. If the user then enters a password, the boot animation restarts again (from the display_normal function). This restarting of the boot animation will cause the "is_idle" flag of the splash to get set back to false. Later when plymouthd wants to quit, it calls the become_idle function of the splash plugin. That function notices "is_idle" is false, and the stop_trigger is not NULL. The function isn't suited to work with this combination, and so at this point the splash never tells the code daemon code it's idle. This commit changes on_boot_progress to return before looking at percent_done, if the user is getting asked a question. This way the stop_trigger won't get created prematurely, and is_idle won't get out of sync. https://bugs.freedesktop.org/show_bug.cgi?id=49355
-
- May 03, 2012
-
-
Ray Strode authored
Most distributions no longer use this transition, which relies on plymouth quitting before X starts. For clarity, rename the #define to include the word DEPRECATED
-