Zbigniew Jędrzejewski-Szmek
ce2f43797a
journal-remote: reduce scope of variable
...
https://github.com/systemd/systemd/pull/11953/files#r264188513
2019-10-21 21:12:42 +02:00
Hans de Goede
cd8ad5965f
hwdb: Add Medion Akoya E2215T MD60198 sensor orientation quirk
...
Add sensor orientation quirk for the Medion Akoya E2215T so that
desktop-environments show their graphics the right way up.
2019-10-21 15:32:24 +02:00
Daniel
44354dcecc
Add Schneider SCT101CTM to sensor hwdb
2019-10-21 09:31:38 +02:00
Zbigniew Jędrzejewski-Szmek
0325f71926
udev: tag any display devices as master-of-seat when nomodeset is used
...
Fixes #13773 . See also https://bugzilla.redhat.com/show_bug.cgi?id=1728240 ,
https://github.com/sddm/sddm/issues/1204 .
When nomodeset is used on the kernel command line, there is no graphics
device that the kernel knows, so we don't tag anything as master-of-seat,
and seat0 has CanGraphical=no.
$ loginctl seat-status seat0 ; loginctl show-seat seat0
seat0
Devices:
├─/sys/devices/LNXSYSTM:00/LNXPWRBN:00/input/input0
│ input:input0 "Power Button"
├─/sys/devices/pci0000:00/0000:00:02.1/0000:02:00.0/usb1
│ usb:usb1
│ └─/sys/devices/pci0000:00/0000:00:02.1/0000:02:00.0/usb1/1-1/1-1:1.0/0003:0627:0001.0001/input/input4
│ input:input4 "QEMU QEMU USB Tablet"
├─/sys/devices/pci0000:00/0000:00:02.1/0000:02:00.0/usb2
│ usb:usb2
├─/sys/devices/pci0000:00/0000:00:1b.0/sound/card0
│ sound:card0 "Intel"
├─/sys/devices/platform/i8042/serio0/input/input1
│ input:input1 "AT Translated Set 2 keyboard"
│ ├─/sys/devices/platform/i8042/serio0/input/input1/input1::capslock
│ │ leds:input1::capslock
│ ├─/sys/devices/platform/i8042/serio0/input/input1/input1::numlock
│ │ leds:input1::numlock
│ └─/sys/devices/platform/i8042/serio0/input/input1/input1::scrolllock
│ leds:input1::scrolllock
└─/sys/devices/platform/i8042/serio1/input/input3
input:input3 "ImExPS/2 Generic Explorer Mouse"
Id=seat0
CanMultiSession=yes
CanTTY=yes
CanGraphical=no
Sessions=
IdleHint=yes
IdleSinceHint=0
IdleSinceHintMonotonic=0
Let's tag the PCI device with "master-of-seat", so we get CanGraphical=yes, and "seat",
so it is show as part of the seat:
[fedora@f31-bios ~]$ loginctl seat-status seat0 ; loginctl show-seat seat0
seat0
Devices:
├─/sys/devices/LNXSYSTM:00/LNXPWRBN:00/input/input0
│ input:input0 "Power Button"
├─/sys/devices/pci0000:00/0000:00:01.0
│ [MASTER] pci:0000:00:01.0
├─/sys/devices/pci0000:00/0000:00:02.1/0000:02:00.0/usb1
│ usb:usb1
│ └─/sys/devices/pci0000:00/0000:00:02.1/0000:02:00.0/usb1/1-1/1-1:1.0/0003:0627:0001.0001/input/input4
│ input:input4 "QEMU QEMU USB Tablet"
├─/sys/devices/pci0000:00/0000:00:02.1/0000:02:00.0/usb2
│ usb:usb2
├─/sys/devices/pci0000:00/0000:00:1b.0/sound/card0
│ sound:card0 "Intel"
├─/sys/devices/platform/i8042/serio0/input/input1
│ input:input1 "AT Translated Set 2 keyboard"
│ ├─/sys/devices/platform/i8042/serio0/input/input1/input1::capslock
│ │ leds:input1::capslock
│ ├─/sys/devices/platform/i8042/serio0/input/input1/input1::numlock
│ │ leds:input1::numlock
│ └─/sys/devices/platform/i8042/serio0/input/input1/input1::scrolllock
│ leds:input1::scrolllock
└─/sys/devices/platform/i8042/serio1/input/input3
input:input3 "ImExPS/2 Generic Explorer Mouse"
Id=seat0
CanMultiSession=yes
CanTTY=yes
CanGraphical=yes
Sessions=
IdleHint=yes
IdleSinceHint=0
IdleSinceHintMonotonic=0
2019-10-19 20:52:42 +02:00
Anita Zhang
d2fc7d22cb
Merge pull request #13795 from ddstreet/test-41
...
WIP: test: debug TEST-41 failure on Ubuntu CI
2019-10-18 18:36:48 -07:00
Dan Streetman
dfec314d41
test: correct TEST-41 StartLimitBurst test
...
TEST-41 verifies that the StartLimitBurst property will correctly
limit the number of unit restarts, but the test currently doesn't
adjust the StartLimitIntervalSec which defaults to 10 seconds.
On Ubuntu CI, running under un-accelerated qemu, it can take more than
10 seconds to perform all 3 restarts, which avoids the burst limit,
and fails the test.
Instead, specify a long StartLimitIntervalSec in the test, so we can
be sure to correctly test StartLimitBurst even on slow testbeds.
Fixes #13794 .
2019-10-18 15:51:43 -04:00
David Tardon
02baf239d8
add test for ExecStopPost
...
This is a follow-up to #4843 .
2019-10-18 16:13:47 +02:00
Benjamin Bouvier
e4fc745547
systemd-fsck: fix systemd-fsck/fsck pipe bad closure
...
Currently, when console is disabled but progress is tracked, pipe opened
for communication between systemd-fsck and fsck may be closed
inadvertently (when opening of /dev/console return in error). That lead
to finish fsck prematurely (because it receives a SIGPIPE) and so fsck
may not check correctly filesystems and do not have time to fix memory
corruptions.
This commit changes the opening of /dev/console to be done previously to
pipe creation and so fix the bug described just above.
2019-10-18 16:07:00 +02:00
Aaron Plattner
ab84cf9191
coredump: Include module offsets in stack traces
...
These offsets can be useful to decode stack traces through modules that don't
have symbol names. For example, with a simple test that crashes after calling
through several static functions, systemd-coredump reports this:
Oct 17 : Process 640333 (a.out) of user 1000 dumped core.
Stack trace of thread 640333:
#0 0x00005562c2b9f11d n/a (/tmp/a.out)
#1 0x00005562c2b9f12d n/a (/tmp/a.out)
#2 0x00005562c2b9f139 n/a (/tmp/a.out)
#3 0x00005562c2b9f145 n/a (/tmp/a.out)
#4 0x00007fc768b39153 __libc_start_main (libc.so.6)
#5 0x00005562c2b9f04e n/a (/tmp/a.out)
With this change:
Stack trace of thread 666897:
#0 0x0000555668fbe11d n/a (/tmp/a.out + 0x111d)
#1 0x0000555668fbe12d n/a (/tmp/a.out + 0x112d)
#2 0x0000555668fbe139 n/a (/tmp/a.out + 0x1139)
#3 0x0000555668fbe145 n/a (/tmp/a.out + 0x1145)
#4 0x00007f7b5c828153 __libc_start_main (libc.so.6 + 0x27153)
#5 0x0000555668fbe04e n/a (/tmp/a.out + 0x104e)
Disassembling the test binary shows that these offsets line up:
0000000000001119 <crash>:
1119: 55 push %rbp
111a: 48 89 e5 mov %rsp,%rbp
111d: 0f 0b ud2 <---- #0
000000000000111f <b>:
111f: 55 push %rbp
1120: 48 89 e5 mov %rsp,%rbp
1123: b8 00 00 00 00 mov $0x0,%eax
1128: e8 ec ff ff ff callq 1119 <crash>
112d: 90 nop <---- #1
112e: 5d pop %rbp
112f: c3 retq
0000000000001130 <a>:
1130: 55 push %rbp
1131: 48 89 e5 mov %rsp,%rbp
1134: e8 e6 ff ff ff callq 111f <b>
1139: 90 nop <---- #2
113a: 5d pop %rbp
113b: c3 retq
000000000000113c <main>:
113c: 55 push %rbp
113d: 48 89 e5 mov %rsp,%rbp
1140: e8 eb ff ff ff callq 1130 <a>
1145: b8 00 00 00 00 mov $0x0,%eax <---- #3
114a: 5d pop %rbp
114b: c3 retq
114c: 0f 1f 40 00 nopl 0x0(%rax)
(from libc.so.6)
0000000000027060 <__libc_start_main>:
27060: f3 0f 1e fa endbr64
27064: 41 56 push %r14
27066: 31 c0 xor %eax,%eax
[...]
2714c: 48 8b 44 24 18 mov 0x18(%rsp),%rax
27151: ff d0 callq *%rax
27153: 89 c7 mov %eax,%edi <---- #4
27155: e8 e6 76 01 00 callq 3e840 <exit>
2019-10-18 15:26:47 +02:00
Dan Streetman
626fbf7f70
test: blacklist TEST-41 on Ubuntu CI
...
This test has been failing on Ubuntu CI since introduced, let's
blacklist it until we can debug what's causing it to fail.
2019-10-18 15:21:32 +02:00
Jonas Jelten
c4742de6d8
ceph is a network filesystem
2019-10-18 10:03:51 +09:00
Jan Synacek
a7ab6b7e6b
rule-syntax-check: add CONST
2019-10-18 10:02:35 +09:00
Chris Down
959daf9bfc
Merge pull request #13743 from anitazha/dropin_all_the_things
...
core: support top level drop-ins through -.service.d for service units
2019-10-16 23:10:05 -04:00
Yu Watanabe
7f66ff56eb
Merge pull request #13784 from keszybz/constify-unit-pointers
...
Constify unit pointers
2019-10-17 09:41:36 +09:00
Anita Zhang
d727acb650
Merge pull request #13754 from claudiozz/master
...
Allow restart for oneshot units
2019-10-16 14:21:59 -07:00
Anita Zhang
f19ede6814
Merge pull request #13786 from keszybz/systemctl-start-glob-warning
...
systemctl: emit warning if start is used with globs
2019-10-16 13:50:10 -07:00
Claudio Zumbo
10e72727ee
Allow restart for oneshot units
...
Picked up from https://github.com/systemd/systemd/pull/7474 , so
coauthored by @robermorales.
2019-10-16 09:44:20 -07:00
Zbigniew Jędrzejewski-Szmek
1d56bc094c
systemctl: emit warning if start is used with globs
...
Fixes #6379 .
2019-10-16 17:33:40 +02:00
Zbigniew Jędrzejewski-Szmek
abc9fa1cf1
core/load-fragment: remove unnecessary intialization
...
manager_load_unit() better set it on success, and unit_set_slice() asserts
that the argument is not NULL, so initializing it to NULL is not useful.
2019-10-16 16:33:54 +02:00
Zbigniew Jędrzejewski-Szmek
47538b7686
core/load-fragment: constify Unit* arguments where possible
...
This makes it easy to tell that the function only uses the Unit* for
reporting, and only makes changes to the other argument (which most likely
also points at the same Unit structure) for modifications.
2019-10-16 16:32:45 +02:00
Zbigniew Jędrzejewski-Szmek
a2262bcafa
core: mark unit_*_printf() functions as taking a const Unit*
...
They should never modify the unit argument, let's make this clear.
Also see 303ee60151 .
2019-10-16 16:21:56 +02:00
Zbigniew Jędrzejewski-Szmek
c8966bffdd
Merge pull request #13663 from ssahani/dhcp-send-option-data
...
network: DHCPv4 client- add support to send arbitary option and data
2019-10-16 11:31:22 +02:00
RoadrunnerWMC
f0bad11fac
Add Acer Switch SW312-31 to sensor hwdb
...
See issue #13732
2019-10-16 11:30:25 +02:00
Franck Bui
a03cdb173e
logind: make session_prepare_vt() static
2019-10-16 10:45:25 +09:00
Anita Zhang
74f632aca4
Merge pull request #13726 from bluca/portable_detach_symlink
...
portabled: allow to detach an image with a unit in linked-runtime state
2019-10-15 17:16:51 -07:00
Anita Zhang
d272467882
shared/dropin: support -.service.d/ top level drop-in for service units
...
Closes #12830
2019-10-15 11:14:54 -07:00
Yu Watanabe
7acb7707ff
test-network: disable IPv6AcceptRA= to speed up tests
2019-10-15 00:14:09 +09:00
Susant Sahani
cb29c15605
network: DHCPv4 client: add support to send arbitary option and data
2019-10-15 00:14:02 +09:00
Yu Watanabe
7d94934b9d
Merge pull request #13760 from keszybz/unit-loading-unification
...
Unit loading unification
2019-10-14 23:35:54 +09:00
Yu Watanabe
3adf85b72f
Merge pull request #13735 from ssahani/ip-nexthop
...
network: introduce ip nexthop routing
2019-10-14 23:25:23 +09:00
Jan Synacek
4801d8afe2
udev: introduce CONST key name
...
Currently, there is no way to match against system-wide constants, such
as architecture or virtualization type, without forking helper binaries.
That potentially results in a huge number of spawned processes which
output always the same answer.
This patch introduces a special CONST keyword which takes a hard-coded
string as its key and returns a value assigned to that key. Currently
implemented are CONST{arch} and CONST{virt}, which can be used to match
against the system's architecture and virtualization type.
2019-10-14 22:01:11 +09:00
Yu Watanabe
086bcf5dca
test-network: add a test case for nexthop
2019-10-14 21:55:57 +09:00
Yu Watanabe
4abcdaa08c
network: update comment as DHCP is deprecated now
2019-10-14 21:33:22 +09:00
Susant Sahani
c16c780804
network: introduce ip nexthop routing
...
Used to manipulate entries in the kernel's nexthop tables.
Example:
```
[NextHop]
Id=3
Gateway=192.168.5.1
```
2019-10-14 21:32:48 +09:00
Yu Watanabe
55d3fdcf5e
network: ndisc: do not drop all prefixes when a prefix matches a blacklist
...
Fixes #13767 .
2019-10-14 20:54:43 +09:00
Yu Watanabe
c94f7809e3
Merge pull request #13761 from dtardon/program-name
...
udev: do not hardcode program name
2019-10-14 20:17:28 +09:00
Yu Watanabe
0486a7d15b
Merge pull request #13765 from yuwata/udev-memleak-13764
...
udev,systemctl: fix memleak caused by wrong cleanup function
2019-10-14 20:16:58 +09:00
Yu Watanabe
13f697b7b1
systemctl: fix memleak caused by wrong cleanup func
2019-10-14 01:18:41 +09:00
Yu Watanabe
f4f6f2c740
udev: fix memleak caused by wrong cleanup function
...
Fixes #13764 .
2019-10-13 00:35:53 +09:00
David Tardon
9e385314b0
udev: do not hardcode program name
2019-10-11 14:45:02 +02:00
David Tardon
9b2aee4170
udev/fido_id: fix program name in usage output
2019-10-11 14:44:53 +02:00
Zbigniew Jędrzejewski-Szmek
2cea199ec1
core: pass around pointer, not struct
...
Since this is a static function, the compiler is likely to optimize it away
anyway, but let's do the normal thing here.
2019-10-11 13:46:05 +02:00
Zbigniew Jędrzejewski-Szmek
27e946a5b3
shared/bus-unit-util: remove some empty lines
...
We generally don't add empty lines after if. It looks especially strange
when the block has is just a single line without braces.
2019-10-11 13:46:05 +02:00
Zbigniew Jędrzejewski-Szmek
75193d4128
core: adjust load functions for other unit types to be more like service
...
No functional change, just adjusting code to follow the same pattern
everywhere. In particular, never call _verify() on an already loaded unit,
but return early from the caller instead. This makes the code a bit easier
to follow.
2019-10-11 13:46:05 +02:00
Zbigniew Jędrzejewski-Szmek
c3784a7d78
core: simplify unit_load() a bit
...
Now all unit types define .load. But even if it wasn't defined, we'd need
to call unit_load_fragment_and_dropin() anyway, so this code would not have
worked correctly.
Also, unit_load_fragment_and_dropin() either returns -ENOENT or changes
UNIT_STUB to UNIT_LOADED, so we don't need to repeat this here.
2019-10-11 11:25:04 +02:00
Zbigniew Jędrzejewski-Szmek
e0cfed4c59
core/service: use common implementation of unit_load_fragment_and_dropin()
...
There is a slight functional change when load_state == UNIT_MERGED. Before,
we would not call unit_load_dropin(), but now we do. I'm not sure if this
causes an actual difference in behaviour, but since all other unit types do
this, I think it's better to do the same thing here too.
2019-10-11 11:25:04 +02:00
Zbigniew Jędrzejewski-Szmek
c362077087
core: turn unit_load_fragment_and_dropin_optional() into a flag
...
unit_load_fragment_and_dropin() and unit_load_fragment_and_dropin_optional()
are really the same, with one minor difference in behaviour. Let's drop
the second function.
"_optional" in the name suggests that it's the "dropin" part that is optional.
(Which it is, but in this case, we mean the fragment to be optional.)
I think the new version with a flag is easier to understand.
2019-10-11 10:45:33 +02:00
Yu Watanabe
349176ae6c
Merge pull request #13749 from keszybz/pyparsing-2.4
...
Compatibility with pyparsing 2.4
2019-10-11 08:43:10 +09:00
Zbigniew Jędrzejewski-Szmek
2382a2e32b
parse_hwdb: fix compatibility with pyparsing 2.4.*
...
pyparsing 2.3.1/2.4.0 had some changes to grouping of And matches, and as a
result we'd report 0 properties and 0 matches, and not really do any checks.
With this change we get identical behaviour for pyparsing 2.3.1, 2.4.0, 2.4.2:
$ hwdb/parse_hwdb.py
hwdb/60-evdev.hwdb: 72 match groups, 94 matches, 262 properties
hwdb/60-input-id.hwdb: 3 match groups, 3 matches, 4 properties
hwdb/60-keyboard.hwdb: 173 match groups, 256 matches, 872 properties
Keycode KBD_LCD_MENU1 unknown
Keycode KBD_LCD_MENU4 unknown
Keycode KBD_LCD_MENU2 unknown
Keycode KBD_LCD_MENU3 unknown
hwdb/60-sensor.hwdb: 101 match groups, 120 matches, 105 properties
hwdb/70-joystick.hwdb: 2 match groups, 3 matches, 2 properties
hwdb/70-mouse.hwdb: 104 match groups, 119 matches, 123 properties
hwdb/70-pointingstick.hwdb: 8 match groups, 30 matches, 11 properties
hwdb/70-touchpad.hwdb: 6 match groups, 9 matches, 6 properties
2019-10-10 09:48:23 +02:00
Zbigniew Jędrzejewski-Szmek
b32ae3aa7b
parse_hwdb: process files in order
...
Also, make the pattern more general. There are some plans to add more files
there, let's make sure we don't miss them.
2019-10-10 09:48:23 +02:00