parent
22b893aeaa
commit
7f5ac6c57e
@ -1,68 +0,0 @@
|
|||||||
From b0997076c194b1cb72fc4380c8ebbe67b0ebc58a Mon Sep 17 00:00:00 2001
|
|
||||||
From: David Edmundson <kde@davidedmundson.co.uk>
|
|
||||||
Date: Thu, 8 Apr 2021 11:59:44 +0100
|
|
||||||
Subject: [PATCH 279/382] [startkde] Reset systemd failed units on login
|
|
||||||
|
|
||||||
If a service has recently failed multiple times, systemd will (quite
|
|
||||||
cleverly) not restart it. This includes DBus activation so is indepdent
|
|
||||||
of the systemd boot.
|
|
||||||
|
|
||||||
If a service gets into a broken state on a previous session where ithas
|
|
||||||
different environment variables and a different display server, we
|
|
||||||
shouldn't treat it as failed for a new session.
|
|
||||||
|
|
||||||
This shouldn't be needed with the other recent fixes, but it seems like
|
|
||||||
a good practice nevertheless.
|
|
||||||
|
|
||||||
Gnome are doing something similar:
|
|
||||||
https://gitlab.gnome.org/GNOME/gnome-session/-/blob/master/gnome-session/main.c#L565
|
|
||||||
---
|
|
||||||
startkde/startplasma.cpp | 12 ++++++++++++
|
|
||||||
startkde/startplasma.h | 1 +
|
|
||||||
2 files changed, 13 insertions(+)
|
|
||||||
|
|
||||||
diff --git a/startkde/startplasma.cpp b/startkde/startplasma.cpp
|
|
||||||
index 778242538..997f91e88 100644
|
|
||||||
--- a/startkde/startplasma.cpp
|
|
||||||
+++ b/startkde/startplasma.cpp
|
|
||||||
@@ -447,6 +447,17 @@ QProcess *setupKSplash()
|
|
||||||
return p;
|
|
||||||
}
|
|
||||||
|
|
||||||
+// If something went on an endless restart crash loop it will get blacklisted, as this is a clean login we will want to reset those counters
|
|
||||||
+// This is independent of whether we use the Plasma systemd boot
|
|
||||||
+void resetSystemdFailedUnits()
|
|
||||||
+{
|
|
||||||
+ QDBusMessage message = QDBusMessage::createMethodCall(QStringLiteral("org.freedesktop.systemd1"),
|
|
||||||
+ QStringLiteral("/org/freedesktop/systemd1"),
|
|
||||||
+ QStringLiteral("org.freedesktop.systemd1.Manager"),
|
|
||||||
+ QStringLiteral("ResetFailed"));
|
|
||||||
+ QDBusConnection::sessionBus().call(message);
|
|
||||||
+}
|
|
||||||
+
|
|
||||||
bool hasSystemdService(const QString &serviceName)
|
|
||||||
{
|
|
||||||
auto msg = QDBusMessage::createMethodCall(QStringLiteral("org.freedesktop.systemd1"),
|
|
||||||
@@ -489,6 +500,7 @@ bool useSystemdBoot()
|
|
||||||
|
|
||||||
bool startPlasmaSession(bool wayland)
|
|
||||||
{
|
|
||||||
+ resetSystemdFailedUnits();
|
|
||||||
OrgKdeKSplashInterface iface(QStringLiteral("org.kde.KSplash"), QStringLiteral("/KSplash"), QDBusConnection::sessionBus());
|
|
||||||
iface.setStage(QStringLiteral("kinit"));
|
|
||||||
// finally, give the session control to the session manager
|
|
||||||
diff --git a/startkde/startplasma.h b/startkde/startplasma.h
|
|
||||||
index 5283ed8e2..40a78a0c2 100644
|
|
||||||
--- a/startkde/startplasma.h
|
|
||||||
+++ b/startkde/startplasma.h
|
|
||||||
@@ -51,6 +51,7 @@ bool startPlasmaSession(bool wayland);
|
|
||||||
|
|
||||||
void waitForKonqi();
|
|
||||||
|
|
||||||
+static void resetSystemdFailedUnits();
|
|
||||||
static bool hasSystemdService(const QString &serviceName);
|
|
||||||
static bool useSystemdBoot();
|
|
||||||
|
|
||||||
--
|
|
||||||
2.31.1
|
|
||||||
|
|
@ -1,30 +0,0 @@
|
|||||||
From 64db2f098f4fd015684605deb4fd8290cce16e29 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Aleix Pol <aleixpol@kde.org>
|
|
||||||
Date: Wed, 5 May 2021 13:20:13 +0200
|
|
||||||
Subject: [PATCH] Announce which buffer types are available on thumbnails
|
|
||||||
elements
|
|
||||||
|
|
||||||
We recently changed it so kwin defaults to memptr because some clients
|
|
||||||
couldn't deal with dmabuf. We still want dmabuf to be used as it's less
|
|
||||||
stressful to the system and we support it just fine.
|
|
||||||
---
|
|
||||||
libtaskmanager/declarative/pipewiresourcestream.cpp | 4 +++-
|
|
||||||
1 file changed, 3 insertions(+), 1 deletion(-)
|
|
||||||
|
|
||||||
diff --git a/libtaskmanager/declarative/pipewiresourcestream.cpp b/libtaskmanager/declarative/pipewiresourcestream.cpp
|
|
||||||
index 9acc562b1..0118b1c2b 100644
|
|
||||||
--- a/libtaskmanager/declarative/pipewiresourcestream.cpp
|
|
||||||
+++ b/libtaskmanager/declarative/pipewiresourcestream.cpp
|
|
||||||
@@ -93,7 +93,9 @@ void PipeWireSourceStream::onStreamParamChanged(void *data, uint32_t id, const s
|
|
||||||
SPA_PARAM_BUFFERS_stride,
|
|
||||||
SPA_POD_CHOICE_RANGE_Int(stride, stride, INT32_MAX),
|
|
||||||
SPA_PARAM_BUFFERS_align,
|
|
||||||
- SPA_POD_Int(16));
|
|
||||||
+ SPA_POD_Int(16),
|
|
||||||
+ SPA_PARAM_BUFFERS_dataType,
|
|
||||||
+ SPA_POD_Int((1 << SPA_DATA_MemPtr) | (1 << SPA_DATA_MemFd) | (1 << SPA_DATA_DmaBuf)));
|
|
||||||
pw_stream_update_params(pw->pwStream, ¶m, 1);
|
|
||||||
}
|
|
||||||
|
|
||||||
--
|
|
||||||
GitLab
|
|
Loading…
Reference in new issue