1
0
mirror of https://github.com/systemd/systemd synced 2025-10-04 03:04:44 +02:00

Compare commits

..

No commits in common. "41c14f9d4389c26aba5af105ea3dd427c4209671" and "1d51b4d092a67812ec3433c93ba2d3a66a16a6fb" have entirely different histories.

218 changed files with 3487 additions and 13559 deletions

View File

@ -27,7 +27,6 @@ PACKAGES=(
isc-dhcp-client
itstool
kbd
libarchive-dev
libblkid-dev
libbpf-dev
libcap-dev
@ -44,6 +43,7 @@ PACKAGES=(
libqrencode-dev
libssl-dev
libtss2-dev
libxen-dev
libxkbcommon-dev
libxtables-dev
libzstd-dev
@ -70,10 +70,6 @@ LINKER="${LINKER:?}"
CRYPTOLIB="${CRYPTOLIB:?}"
RELEASE="$(lsb_release -cs)"
if [ "$(uname -m)" = "aarch64" ] || [ "$(uname -m)" = "x86_64" ]; then
PACKAGES+=(libxen-dev)
fi
# Note: As we use postfixed clang/gcc binaries, we need to override $AR
# as well, otherwise meson falls back to ar from binutils which
# doesn't work with LTO
@ -100,7 +96,7 @@ if [[ "$COMPILER" == clang ]]; then
sudo tee /etc/apt/sources.list.d/llvm-toolchain.list
fi
PACKAGES+=("clang-$COMPILER_VERSION" "lldb-$COMPILER_VERSION" "python3-lldb-$COMPILER_VERSION" "lld-$COMPILER_VERSION" "clangd-$COMPILER_VERSION" "llvm-$COMPILER_VERSION")
PACKAGES+=("clang-$COMPILER_VERSION" "lldb-$COMPILER_VERSION" "python3-lldb-$COMPILER_VERSION" "lld-$COMPILER_VERSION" "clangd-$COMPILER_VERSION")
elif [[ "$COMPILER" == gcc ]]; then
CC="gcc-$COMPILER_VERSION"
CXX="g++-$COMPILER_VERSION"
@ -114,11 +110,7 @@ elif [[ "$COMPILER" == gcc ]]; then
sudo add-apt-repository -y --no-update ppa:ubuntu-toolchain-r/test
fi
PACKAGES+=("gcc-$COMPILER_VERSION")
if [ "$(uname -m)" = "x86_64" ]; then
# Only needed for ia32 EFI builds
PACKAGES+=("gcc-$COMPILER_VERSION-multilib")
fi
PACKAGES+=("gcc-$COMPILER_VERSION" "gcc-$COMPILER_VERSION-multilib")
else
fatal "Unknown compiler: $COMPILER"
fi

View File

@ -35,4 +35,4 @@ jobs:
- name: Repository checkout
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
- name: Build check
run: .github/workflows/build-test.sh
run: .github/workflows/build_test.sh

View File

@ -50,7 +50,7 @@ jobs:
languages: ${{ matrix.language }}
config-file: ./.github/codeql-config.yml
- run: sudo -E .github/workflows/unit-tests.sh SETUP
- run: sudo -E .github/workflows/unit_tests.sh SETUP
- name: Autobuild
uses: github/codeql-action/autobuild@b56ba49b26e50535fa1e7f7db0f4f7b4bf65d80d

View File

@ -24,7 +24,7 @@ jobs:
steps:
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
- uses: systemd/mkosi@655baf24474a6f0732ec1b82a71c2f6fe4eeeb49
- uses: systemd/mkosi@5e739ef1ed02a4f3b6ae64e50a8ee186cbcb21c2
# Freeing up disk space with rm -rf can take multiple minutes. Since we don't need the extra free space
# immediately, we remove the files in the background. However, we first move them to a different location
@ -49,6 +49,9 @@ jobs:
- name: Configure
run: |
# XXX: drop after the HyperV bug that breaks secure boot KVM guests is solved
sed -i "s/'firmware'\s*:\s*'auto'/'firmware' : 'uefi'/g" test/*/meson.build
tee mkosi/mkosi.local.conf <<EOF
[Distribution]
Distribution=arch
@ -113,8 +116,6 @@ jobs:
# used in integration-test-wrapper.py to construct the `gh` command line to download the journals
# of failed tests.
sudo --preserve-env mkosi sandbox -- \
env \
TEST_RUNNER=ubuntu-24.04 \
meson test \
-C build \
--no-rebuild \

View File

@ -25,6 +25,6 @@ jobs:
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
# Reuse the setup phase of the unit test script to avoid code duplication
- name: Install build dependencies
run: sudo -E .github/workflows/unit-tests.sh SETUP
run: sudo -E .github/workflows/unit_tests.sh SETUP
- name: Build & upload the results
run: tools/coverity.sh

View File

@ -36,7 +36,7 @@ jobs:
VALIDATE_ALL_CODEBASE: false
VALIDATE_GITHUB_ACTIONS: true
- uses: systemd/mkosi@655baf24474a6f0732ec1b82a71c2f6fe4eeeb49
- uses: systemd/mkosi@5e739ef1ed02a4f3b6ae64e50a8ee186cbcb21c2
- name: Check that tabs are not used in Python code
run: sh -c '! git grep -P "\\t" -- src/ukify/ukify.py test/integration-tests/integration-test-wrapper.py'

View File

@ -113,7 +113,7 @@ jobs:
steps:
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
- uses: systemd/mkosi@655baf24474a6f0732ec1b82a71c2f6fe4eeeb49
- uses: systemd/mkosi@5e739ef1ed02a4f3b6ae64e50a8ee186cbcb21c2
# Freeing up disk space with rm -rf can take multiple minutes. Since we don't need the extra free space
# immediately, we remove the files in the background. However, we first move them to a different location
@ -128,14 +128,14 @@ jobs:
run: |
truncate --size=100G btrfs.raw
mkfs.btrfs btrfs.raw
sudo mkdir -p /mnt/mkosi
sudo mkdir /mnt/mkosi
LOOP="$(sudo losetup --find --show --direct-io=on btrfs.raw)"
rm -f btrfs.raw
rm btrfs.raw
sudo mount "$LOOP" /mnt/mkosi --options compress=zstd:1,user_subvol_rm_allowed,noatime,discard=async,space_cache=v2
sudo chown "$(id -u):$(id -g)" /mnt/mkosi
mkdir -p /mnt/mkosi/tmp
mkdir /mnt/mkosi/tmp
echo "TMPDIR=/mnt/mkosi/tmp" >>"$GITHUB_ENV"
ln -sf /mnt/mkosi/build build
ln -s /mnt/mkosi/build build
- name: Configure
run: |

View File

@ -19,11 +19,12 @@ ADDITIONAL_DEPS=(
libxkbcommon-dev
libzstd-dev
python3-libevdev
python3-pip
python3-pefile
python3-pyelftools
python3-pyparsing
python3-pytest
rpm
systemd-boot-efi
zstd
)
@ -42,11 +43,6 @@ set -ex
MESON_ARGS=(-Dcryptolib=${CRYPTOLIB:-auto})
if [ "$(uname -m)" = "aarch64" ] || [ "$(uname -m)" = "x86_64" ]; then
ADDITIONAL_DEPS+=(python3-pefile)
ADDITIONAL_DEPS+=(systemd-boot-efi)
fi
# (Re)set the current oom-{score-}adj. For some reason root on GH actions is able to _decrease_
# its oom-score even after dropping all capabilities (including CAP_SYS_RESOURCE), until the
# score is explicitly changed after sudo. No idea what's going on, but it breaks

View File

@ -38,8 +38,8 @@ jobs:
sudo sed -i '/^XDG_/d' /etc/environment
# Pass only specific env variables through sudo, to avoid having
# the already existing XDG_* stuff on the "other side"
sudo --preserve-env=CRYPTOLIB,GITHUB_ACTIONS,CI .github/workflows/unit-tests.sh SETUP
sudo --preserve-env=CRYPTOLIB,GITHUB_ACTIONS,CI .github/workflows/unit_tests.sh SETUP
- name: Build & test
run: sudo --preserve-env=CRYPTOLIB,GITHUB_ACTIONS,CI .github/workflows/unit-tests.sh RUN_${{ matrix.run_phase }}
run: sudo --preserve-env=CRYPTOLIB,GITHUB_ACTIONS,CI .github/workflows/unit_tests.sh RUN_${{ matrix.run_phase }}
env:
CRYPTOLIB: ${{ matrix.cryptolib }}

View File

@ -70,8 +70,8 @@ The following exceptions apply:
- src/fundamental/sha1-fundamental.c
- src/fundamental/sha1-fundamental.h
* the following files are licensed under **BSD-3-Clause** license:
- src/boot/chid.c
- src/boot/chid.h
- src/boot/efi/chid.c
- src/boot/efi/chid.h
* Heebo fonts under docs/fonts/ are licensed under the **SIL Open Font License 1.1**,
* any files under test/ without an explicit license we assume non-copyrightable
(eg: computer-generated fuzzer data)

View File

@ -25,6 +25,7 @@ support_sed = 's~%SUPPORT_URL%~@0@~'.format(support_url)
foreach file : in_files
catalogs += custom_target(
file,
input : file + '.in',
output: file,
command : [sed, support_sed, '@INPUT@'],

View File

@ -351,13 +351,12 @@ All tools:
default is not appropriate for a given system. Defaults to `5`, accepts
positive integers.
* `$SYSTEMD_DEFAULT_MOUNT_RATE_LIMIT_INTERVAL_SEC` — can be set to override the
mount units interval rate limit for parsing `/proc/self/mountinfo`. Similar
to `$SYSTEMD_DEFAULT_MOUNT_RATE_LIMIT_BURST`, the interval limit maybe
adjusted when the default is not appropriate for a given system. The default
value is 1, the default application time unit is second, and the time unit
can be overridden as usual by specifying it explicitly, see the
systemd.time(7) man page.
* `$SYSTEMD_DEFAULT_MOUNT_RATE_LIMIT_INTERVAL_SEC` — can be set to override the mount
units interval rate limit for parsing `/proc/self/mountinfo`. Similar to
`$SYSTEMD_DEFAULT_MOUNT_RATE_LIMIT_BURST`, the interval limit maybe adjusted when
the default is not appropriate for a given system. The default value is 1 and the
default application time unit is second, and the time unit can beoverriden as usual
by specifying it explicitly, see the systemd.time(7) man page.
`systemd-remount-fs`:

View File

@ -16,10 +16,6 @@ measurements listed below are (by default) only done if a system is booted with
to systemd's UEFI-mode measurements, and if the latter are not done the former
aren't made either.
See
[Linux TPM PCR Registry](https://uapi-group.org/specifications/specs/linux_tpm_pcr_registry/)
for an overview of PCRs.
systemd will measure to PCRs 5 (`boot-loader-config`), 11 (`kernel-boot`),
12 (`kernel-config`), 13 (`sysexts`), 15 (`system-identity`).
@ -45,7 +41,7 @@ used for new, additional measurements.
## PCR Measurements Made by `systemd-boot` (UEFI)
### PCR 5, `EV_EVENT_TAG`, `loader.conf`
### PCS 5, `EV_EVENT_TAG`, `loader.conf`
The content of `systemd-boot`'s configuration file, `loader/loader.conf`, is
measured as a tagged event.

View File

@ -1,6 +1,7 @@
# SPDX-License-Identifier: LGPL-2.1-or-later
custom_target(
'README',
input : 'README.in',
output : 'README',
command : [jinja2_cmdline, '@INPUT@', '@OUTPUT@'],

View File

@ -3,6 +3,7 @@
factory_etc_dir = factorydir / 'etc'
custom_target(
'locale.conf',
input : 'locale.conf.in',
output : 'locale.conf',
command : [jinja2_cmdline, '@INPUT@', '@OUTPUT@'],
@ -10,6 +11,7 @@ custom_target(
install_dir : factory_etc_dir)
custom_target(
'vconsole.conf',
input : 'vconsole.conf.in',
output : 'vconsole.conf',
command : [jinja2_cmdline, '@INPUT@', '@OUTPUT@'],

File diff suppressed because it is too large Load Diff

View File

@ -228,9 +228,6 @@ acpi:ISIC*:
acpi:JMIC*:
ID_VENDOR_FROM_DATABASE=Shenzhen Jaguar Microsystems Co.,Ltd.
acpi:JPMC*:
ID_VENDOR_FROM_DATABASE=JP Morgan Chase N.A.
acpi:JSYS*:
ID_VENDOR_FROM_DATABASE=Juniper Systems, Inc.
@ -330,9 +327,6 @@ acpi:RKCP*:
acpi:ROKL*:
ID_VENDOR_FROM_DATABASE=Rockwell Automation, Inc
acpi:ROKU*:
ID_VENDOR_FROM_DATABASE=Roku, Inc.
acpi:RPIL*:
ID_VENDOR_FROM_DATABASE=Raspberry Pi

View File

@ -1,5 +1,5 @@
--- 20-acpi-vendor.hwdb.base 2025-08-04 12:23:12.909334713 +0100
+++ 20-acpi-vendor.hwdb 2025-08-04 12:23:12.917334855 +0100
--- 20-acpi-vendor.hwdb.base 2025-05-15 10:42:40.716482750 +0200
+++ 20-acpi-vendor.hwdb 2025-05-15 10:42:40.720482763 +0200
@@ -3,6 +3,8 @@
# Data imported from:
# https://uefi.org/uefi-pnp-export
@ -19,7 +19,7 @@
acpi:AMDI*:
ID_VENDOR_FROM_DATABASE=AMD
@@ -424,6 +423,9 @@
@@ -418,6 +417,9 @@
acpi:AAA*:
ID_VENDOR_FROM_DATABASE=Avolites Ltd
@ -29,7 +29,7 @@
acpi:AAE*:
ID_VENDOR_FROM_DATABASE=Anatek Electronics Inc.
@@ -451,6 +453,9 @@
@@ -445,6 +447,9 @@
acpi:ABO*:
ID_VENDOR_FROM_DATABASE=D-Link Systems Inc
@ -39,7 +39,7 @@
acpi:ABS*:
ID_VENDOR_FROM_DATABASE=Abaco Systems, Inc.
@@ -496,7 +501,7 @@
@@ -490,7 +495,7 @@
acpi:ACO*:
ID_VENDOR_FROM_DATABASE=Allion Computer Inc.
@ -48,7 +48,7 @@
ID_VENDOR_FROM_DATABASE=Aspen Tech Inc
acpi:ACR*:
@@ -775,6 +780,9 @@
@@ -769,6 +774,9 @@
acpi:AMT*:
ID_VENDOR_FROM_DATABASE=AMT International Industry
@ -58,7 +58,7 @@
acpi:AMX*:
ID_VENDOR_FROM_DATABASE=AMX LLC
@@ -823,6 +831,9 @@
@@ -817,6 +825,9 @@
acpi:AOA*:
ID_VENDOR_FROM_DATABASE=AOpen Inc.
@ -68,7 +68,7 @@
acpi:AOE*:
ID_VENDOR_FROM_DATABASE=Advanced Optics Electronics, Inc.
@@ -832,6 +843,9 @@
@@ -826,6 +837,9 @@
acpi:AOT*:
ID_VENDOR_FROM_DATABASE=Alcatel
@ -78,7 +78,7 @@
acpi:APC*:
ID_VENDOR_FROM_DATABASE=American Power Conversion
@@ -1013,7 +1027,7 @@
@@ -1007,7 +1021,7 @@
ID_VENDOR_FROM_DATABASE=ALPS ALPINE CO., LTD.
acpi:AUO*:
@ -87,7 +87,7 @@
acpi:AUR*:
ID_VENDOR_FROM_DATABASE=Aureal Semiconductor
@@ -1093,6 +1107,9 @@
@@ -1087,6 +1101,9 @@
acpi:AXE*:
ID_VENDOR_FROM_DATABASE=Axell Corporation
@ -97,7 +97,7 @@
acpi:AXI*:
ID_VENDOR_FROM_DATABASE=American Magnetics
@@ -1252,6 +1269,9 @@
@@ -1246,6 +1263,9 @@
acpi:BML*:
ID_VENDOR_FROM_DATABASE=BIOMED Lab
@ -107,7 +107,7 @@
acpi:BMS*:
ID_VENDOR_FROM_DATABASE=BIOMEDISYS
@@ -1264,6 +1284,9 @@
@@ -1258,6 +1278,9 @@
acpi:BNO*:
ID_VENDOR_FROM_DATABASE=Bang & Olufsen
@ -117,7 +117,7 @@
acpi:BNS*:
ID_VENDOR_FROM_DATABASE=Boulder Nonlinear Systems
@@ -1510,6 +1533,9 @@
@@ -1504,6 +1527,9 @@
acpi:CHA*:
ID_VENDOR_FROM_DATABASE=Chase Research PLC
@ -127,7 +127,7 @@
acpi:CHD*:
ID_VENDOR_FROM_DATABASE=ChangHong Electric Co.,Ltd
@@ -1675,6 +1701,9 @@
@@ -1669,6 +1695,9 @@
acpi:COD*:
ID_VENDOR_FROM_DATABASE=CODAN Pty. Ltd.
@ -137,7 +137,7 @@
acpi:COI*:
ID_VENDOR_FROM_DATABASE=Codec Inc.
@@ -2093,7 +2122,7 @@
@@ -2087,7 +2116,7 @@
ID_VENDOR_FROM_DATABASE=Dragon Information Technology
acpi:DJE*:
@ -146,7 +146,7 @@
acpi:DJP*:
ID_VENDOR_FROM_DATABASE=Maygay Machines, Ltd
@@ -2446,6 +2475,9 @@
@@ -2440,6 +2469,9 @@
acpi:EIN*:
ID_VENDOR_FROM_DATABASE=Elegant Invention
@ -156,7 +156,7 @@
acpi:EKA*:
ID_VENDOR_FROM_DATABASE=MagTek Inc.
@@ -2716,6 +2748,9 @@
@@ -2710,6 +2742,9 @@
acpi:FCG*:
ID_VENDOR_FROM_DATABASE=First International Computer Ltd
@ -166,7 +166,7 @@
acpi:FCS*:
ID_VENDOR_FROM_DATABASE=Focus Enhancements, Inc.
@@ -3092,7 +3127,7 @@
@@ -3086,7 +3121,7 @@
ID_VENDOR_FROM_DATABASE=General Standards Corporation
acpi:GSM*:
@ -175,7 +175,7 @@
acpi:GSN*:
ID_VENDOR_FROM_DATABASE=Grandstream Networks, Inc.
@@ -3202,6 +3237,9 @@
@@ -3196,6 +3231,9 @@
acpi:HEC*:
ID_VENDOR_FROM_DATABASE=Hisense Electric Co., Ltd.
@ -185,7 +185,7 @@
acpi:HEL*:
ID_VENDOR_FROM_DATABASE=Hitachi Micro Systems Europe Ltd
@@ -3337,6 +3375,9 @@
@@ -3331,6 +3369,9 @@
acpi:HSD*:
ID_VENDOR_FROM_DATABASE=HannStar Display Corp
@ -195,7 +195,7 @@
acpi:HSM*:
ID_VENDOR_FROM_DATABASE=AT&T Microelectronics
@@ -3463,6 +3504,9 @@
@@ -3457,6 +3498,9 @@
acpi:ICI*:
ID_VENDOR_FROM_DATABASE=Infotek Communication Inc
@ -205,7 +205,7 @@
acpi:ICM*:
ID_VENDOR_FROM_DATABASE=Intracom SA
@@ -3559,6 +3603,9 @@
@@ -3553,6 +3597,9 @@
acpi:IKE*:
ID_VENDOR_FROM_DATABASE=Ikegami Tsushinki Co. Ltd.
@ -215,7 +215,7 @@
acpi:IKS*:
ID_VENDOR_FROM_DATABASE=Ikos Systems Inc
@@ -3607,6 +3654,9 @@
@@ -3601,6 +3648,9 @@
acpi:IMX*:
ID_VENDOR_FROM_DATABASE=arpara Technology Co., Ltd.
@ -225,7 +225,7 @@
acpi:INA*:
ID_VENDOR_FROM_DATABASE=Inventec Corporation
@@ -4135,6 +4185,9 @@
@@ -4129,6 +4179,9 @@
acpi:LAN*:
ID_VENDOR_FROM_DATABASE=Sodeman Lancom Inc
@ -235,7 +235,7 @@
acpi:LAS*:
ID_VENDOR_FROM_DATABASE=LASAT Comm. A/S
@@ -4186,6 +4239,9 @@
@@ -4180,6 +4233,9 @@
acpi:LED*:
ID_VENDOR_FROM_DATABASE=Long Engineering Design Inc
@ -245,7 +245,7 @@
acpi:LEG*:
ID_VENDOR_FROM_DATABASE=Legerity, Inc
@@ -4204,6 +4260,9 @@
@@ -4198,6 +4254,9 @@
acpi:LGD*:
ID_VENDOR_FROM_DATABASE=LG Display
@ -255,7 +255,7 @@
acpi:LGI*:
ID_VENDOR_FROM_DATABASE=Logitech Inc
@@ -4270,6 +4329,9 @@
@@ -4264,6 +4323,9 @@
acpi:LND*:
ID_VENDOR_FROM_DATABASE=Land Computer Company Ltd
@ -265,7 +265,7 @@
acpi:LNK*:
ID_VENDOR_FROM_DATABASE=Link Tech Inc
@@ -4304,7 +4366,7 @@
@@ -4298,7 +4360,7 @@
ID_VENDOR_FROM_DATABASE=Design Technology
acpi:LPL*:
@ -274,7 +274,7 @@
acpi:LSC*:
ID_VENDOR_FROM_DATABASE=LifeSize Communications
@@ -4480,6 +4542,9 @@
@@ -4474,6 +4536,9 @@
acpi:MCX*:
ID_VENDOR_FROM_DATABASE=Millson Custom Solutions Inc.
@ -284,7 +284,7 @@
acpi:MDA*:
ID_VENDOR_FROM_DATABASE=Media4 Inc
@@ -4726,6 +4791,9 @@
@@ -4720,6 +4785,9 @@
acpi:MOM*:
ID_VENDOR_FROM_DATABASE=Momentum Data Systems
@ -294,7 +294,7 @@
acpi:MOS*:
ID_VENDOR_FROM_DATABASE=Moses Corporation
@@ -4966,6 +5034,9 @@
@@ -4960,6 +5028,9 @@
acpi:NAL*:
ID_VENDOR_FROM_DATABASE=Network Alchemy
@ -304,7 +304,7 @@
acpi:NAT*:
ID_VENDOR_FROM_DATABASE=NaturalPoint Inc.
@@ -5506,6 +5577,9 @@
@@ -5500,6 +5571,9 @@
acpi:PCX*:
ID_VENDOR_FROM_DATABASE=PC Xperten
@ -314,7 +314,7 @@
acpi:PDM*:
ID_VENDOR_FROM_DATABASE=Psion Dacom Plc.
@@ -5569,9 +5643,6 @@
@@ -5563,9 +5637,6 @@
acpi:PHE*:
ID_VENDOR_FROM_DATABASE=Philips Medical Systems Boeblingen GmbH
@ -324,7 +324,7 @@
acpi:PHL*:
ID_VENDOR_FROM_DATABASE=Philips Consumer Electronics Company
@@ -5662,9 +5733,6 @@
@@ -5656,9 +5727,6 @@
acpi:PNL*:
ID_VENDOR_FROM_DATABASE=Panelview, Inc.
@ -334,7 +334,7 @@
acpi:PNR*:
ID_VENDOR_FROM_DATABASE=Planar Systems, Inc.
@@ -6142,9 +6210,6 @@
@@ -6136,9 +6204,6 @@
acpi:RTI*:
ID_VENDOR_FROM_DATABASE=Rancho Tech Inc
@ -344,7 +344,7 @@
acpi:RTL*:
ID_VENDOR_FROM_DATABASE=Realtek Semiconductor Company Ltd
@@ -6319,9 +6384,6 @@
@@ -6313,9 +6378,6 @@
acpi:SEE*:
ID_VENDOR_FROM_DATABASE=SeeColor Corporation
@ -354,7 +354,7 @@
acpi:SEI*:
ID_VENDOR_FROM_DATABASE=Seitz & Associates Inc
@@ -6805,6 +6867,9 @@
@@ -6799,6 +6861,9 @@
acpi:SVD*:
ID_VENDOR_FROM_DATABASE=SVD Computer
@ -364,7 +364,7 @@
acpi:SVI*:
ID_VENDOR_FROM_DATABASE=Sun Microsystems
@@ -6889,6 +6954,9 @@
@@ -6883,6 +6948,9 @@
acpi:SZM*:
ID_VENDOR_FROM_DATABASE=Shenzhen MTC Co., Ltd
@ -374,7 +374,7 @@
acpi:TAA*:
ID_VENDOR_FROM_DATABASE=Tandberg
@@ -6979,6 +7047,9 @@
@@ -6973,6 +7041,9 @@
acpi:TDG*:
ID_VENDOR_FROM_DATABASE=Six15 Technologies
@ -384,7 +384,7 @@
acpi:TDM*:
ID_VENDOR_FROM_DATABASE=Tandem Computer Europe Inc
@@ -7021,6 +7092,9 @@
@@ -7015,6 +7086,9 @@
acpi:TEV*:
ID_VENDOR_FROM_DATABASE=Televés, S.A.
@ -394,7 +394,7 @@
acpi:TEZ*:
ID_VENDOR_FROM_DATABASE=Tech Source Inc.
@@ -7150,9 +7224,6 @@
@@ -7144,9 +7218,6 @@
acpi:TNC*:
ID_VENDOR_FROM_DATABASE=TNC Industrial Company Ltd
@ -404,7 +404,7 @@
acpi:TNM*:
ID_VENDOR_FROM_DATABASE=TECNIMAGEN SA
@@ -7465,14 +7536,14 @@
@@ -7459,14 +7530,14 @@
acpi:UNC*:
ID_VENDOR_FROM_DATABASE=Unisys Corporation
@ -425,7 +425,7 @@
acpi:UNI*:
ID_VENDOR_FROM_DATABASE=Uniform Industry Corp.
@@ -7507,6 +7578,9 @@
@@ -7501,6 +7572,9 @@
acpi:USA*:
ID_VENDOR_FROM_DATABASE=Utimaco Safeware AG
@ -435,7 +435,7 @@
acpi:USD*:
ID_VENDOR_FROM_DATABASE=U.S. Digital Corporation
@@ -7768,9 +7842,6 @@
@@ -7762,9 +7836,6 @@
acpi:WAL*:
ID_VENDOR_FROM_DATABASE=Wave Access
@ -445,7 +445,7 @@
acpi:WAV*:
ID_VENDOR_FROM_DATABASE=Wavephore
@@ -7898,7 +7969,7 @@
@@ -7892,7 +7963,7 @@
ID_VENDOR_FROM_DATABASE=WyreStorm Technologies LLC
acpi:WYS*:
@ -454,7 +454,7 @@
acpi:WYT*:
ID_VENDOR_FROM_DATABASE=Wooyoung Image & Information Co.,Ltd.
@@ -7912,9 +7983,6 @@
@@ -7906,9 +7977,6 @@
acpi:XDM*:
ID_VENDOR_FROM_DATABASE=XDM Ltd.
@ -464,7 +464,7 @@
acpi:XES*:
ID_VENDOR_FROM_DATABASE=Extreme Engineering Solutions, Inc.
@@ -7948,9 +8016,6 @@
@@ -7942,9 +8010,6 @@
acpi:XNT*:
ID_VENDOR_FROM_DATABASE=XN Technologies, Inc.
@ -474,7 +474,7 @@
acpi:XQU*:
ID_VENDOR_FROM_DATABASE=SHANGHAI SVA-DAV ELECTRONICS CO., LTD
@@ -8017,6 +8082,9 @@
@@ -8011,6 +8076,9 @@
acpi:ZBX*:
ID_VENDOR_FROM_DATABASE=Zebax Technologies

View File

@ -395,9 +395,6 @@ pci:v*d*sv*sd*bc08sc05*
pci:v*d*sv*sd*bc08sc06*
ID_PCI_SUBCLASS_FROM_DATABASE=IOMMU
pci:v*d*sv*sd*bc08sc07*
ID_PCI_SUBCLASS_FROM_DATABASE=Root Complex Event Collector
pci:v*d*sv*sd*bc08sc80*
ID_PCI_SUBCLASS_FROM_DATABASE=System peripheral

File diff suppressed because it is too large Load Diff

View File

@ -119,12 +119,6 @@ usb:v017C*
usb:v017Cp145F*
ID_MODEL_FROM_DATABASE=Trust Deskset
usb:v019C*
ID_VENDOR_FROM_DATABASE=mek
usb:v019Cp0042*
ID_MODEL_FROM_DATABASE=mek_42
usb:v0200*
ID_VENDOR_FROM_DATABASE=TP-Link
@ -155,15 +149,6 @@ usb:v02AD*
usb:v02ADp138C*
ID_MODEL_FROM_DATABASE=PVR Mass Storage
usb:v0300*
ID_VENDOR_FROM_DATABASE=Ajazz
usb:v0300p1010*
ID_MODEL_FROM_DATABASE=Akp153E Desktop Controller
usb:v0300p1020*
ID_MODEL_FROM_DATABASE=AKP153R Desktop Controller
usb:v0303*
ID_VENDOR_FROM_DATABASE=Mini Automation Controller
@ -243,7 +228,7 @@ usb:v03E8p8004*
ID_MODEL_FROM_DATABASE=Aox 99001
usb:v03E9*
ID_VENDOR_FROM_DATABASE=Melexis (formerly Thesys Microelectronics)
ID_VENDOR_FROM_DATABASE=Thesys Microelectronics
usb:v03EA*
ID_VENDOR_FROM_DATABASE=Data Broadcasting Corp.
@ -728,12 +713,6 @@ usb:v03F0p042A*
usb:v03F0p0441*
ID_MODEL_FROM_DATABASE=Prime [NW280AA, G8X92AA]
usb:v03F0p046B*
ID_MODEL_FROM_DATABASE=Dock G5
usb:v03F0p0483*
ID_MODEL_FROM_DATABASE=Engage Go 10 Tablet
usb:v03F0p0504*
ID_MODEL_FROM_DATABASE=DeskJet 885c
@ -761,9 +740,6 @@ usb:v03F0p051D*
usb:v03F0p052A*
ID_MODEL_FROM_DATABASE=LaserJet M1212nf MFP
usb:v03F0p0583*
ID_MODEL_FROM_DATABASE=Engage Go 10 Tablet
usb:v03F0p0601*
ID_MODEL_FROM_DATABASE=ScanJet 6300c
@ -791,9 +767,6 @@ usb:v03F0p0641*
usb:v03F0p0653*
ID_MODEL_FROM_DATABASE=DeskJet 3700 series
usb:v03F0p0683*
ID_MODEL_FROM_DATABASE=Engage Go 10 Tablet
usb:v03F0p0701*
ID_MODEL_FROM_DATABASE=ScanJet 5300c/5370c
@ -944,9 +917,6 @@ usb:v03F0p1104*
usb:v03F0p1105*
ID_MODEL_FROM_DATABASE=ScanJet 5470c/5490c
usb:v03F0p110C*
ID_MODEL_FROM_DATABASE=Pocket Media Drive
usb:v03F0p1111*
ID_MODEL_FROM_DATABASE=OfficeJet v60
@ -3011,9 +2981,6 @@ usb:v0408p3001*
usb:v0408p3008*
ID_MODEL_FROM_DATABASE=Optical Touch Screen
usb:v0408p4033*
ID_MODEL_FROM_DATABASE=HD Webcam
usb:v0408pA060*
ID_MODEL_FROM_DATABASE=HD Webcam
@ -3062,9 +3029,6 @@ usb:v0409p004F*
usb:v0409p0050*
ID_MODEL_FROM_DATABASE=7-port hub
usb:v0409p0056*
ID_MODEL_FROM_DATABASE=uPD720133 IDE bridge
usb:v0409p0058*
ID_MODEL_FROM_DATABASE=HighSpeed Hub
@ -4436,9 +4400,6 @@ usb:v041Ep4097*
usb:v041Ep4099*
ID_MODEL_FROM_DATABASE=Creative VF0800 [RealSense Camera SR300]
usb:v041Ep40A3*
ID_MODEL_FROM_DATABASE=Live! Cam V3 2K [VF-0900]
usb:v041Ep4100*
ID_MODEL_FROM_DATABASE=Nomad Jukebox 2
@ -5858,9 +5819,6 @@ usb:v043Dp010F*
usb:v043Dp0142*
ID_MODEL_FROM_DATABASE=X3650 (Printer, Scanner, Copier)
usb:v043Dp01BD*
ID_MODEL_FROM_DATABASE=S800 Series Scanner
usb:v043Dp01FA*
ID_MODEL_FROM_DATABASE=S310 series
@ -5930,9 +5888,6 @@ usb:v043Ep9A11*
usb:v043Ep9A39*
ID_MODEL_FROM_DATABASE=27UP850 - WK.AEUDCSN - External Monitor 4K
usb:v043Ep9A57*
ID_MODEL_FROM_DATABASE=UltraGear Monitor
usb:v043Ep9C01*
ID_MODEL_FROM_DATABASE=LGE Sync
@ -6008,9 +5963,6 @@ usb:v044E*
usb:v044Ep1104*
ID_MODEL_FROM_DATABASE=Japanese Keyboard
usb:v044Ep1218*
ID_MODEL_FROM_DATABASE=Electric Touchpad
usb:v044Ep2002*
ID_MODEL_FROM_DATABASE=MD-5500 Printer
@ -8201,12 +8153,6 @@ usb:v046Ap01A4*
usb:v046Ap01A6*
ID_MODEL_FROM_DATABASE=MX BOARD 2.0S FL RGB DE Keyboard
usb:v046Ap0201*
ID_MODEL_FROM_DATABASE=Smart Board 1150
usb:v046Ap0202*
ID_MODEL_FROM_DATABASE=Smart Terminal 1150
usb:v046ApB090*
ID_MODEL_FROM_DATABASE=Keyboard
@ -8549,9 +8495,6 @@ usb:v046Dp08E0*
usb:v046Dp08E1*
ID_MODEL_FROM_DATABASE=Labtec Webcam
usb:v046Dp08E4*
ID_MODEL_FROM_DATABASE=C505e HD Webcam
usb:v046Dp08E5*
ID_MODEL_FROM_DATABASE=C920 PRO HD Webcam
@ -9005,9 +8948,6 @@ usb:v046DpC092*
usb:v046DpC093*
ID_MODEL_FROM_DATABASE=M500s Optical Mouse
usb:v046DpC09D*
ID_MODEL_FROM_DATABASE=G102 LIGHTSYNC Gaming Mouse
usb:v046DpC101*
ID_MODEL_FROM_DATABASE=UltraX Media Remote
@ -9182,9 +9122,6 @@ usb:v046DpC24E*
usb:v046DpC24F*
ID_MODEL_FROM_DATABASE=G29 Driving Force Racing Wheel [PS3]
usb:v046DpC251*
ID_MODEL_FROM_DATABASE=GamePanel for Dell XPS M1730
usb:v046DpC260*
ID_MODEL_FROM_DATABASE=G29 Driving Force Racing Wheel [PS4]
@ -9224,9 +9161,6 @@ usb:v046DpC298*
usb:v046DpC299*
ID_MODEL_FROM_DATABASE=G25 Racing Wheel
usb:v046DpC29A*
ID_MODEL_FROM_DATABASE=Driving Force GT
usb:v046DpC29B*
ID_MODEL_FROM_DATABASE=G27 Racing Wheel
@ -9338,9 +9272,6 @@ usb:v046DpC336*
usb:v046DpC33A*
ID_MODEL_FROM_DATABASE=G413 Gaming Keyboard
usb:v046DpC33E*
ID_MODEL_FROM_DATABASE=G915 Mechanical Keyboard
usb:v046DpC33F*
ID_MODEL_FROM_DATABASE=G815 Mechanical Keyboard
@ -10088,9 +10019,6 @@ usb:v047CpFFFF*
usb:v047D*
ID_VENDOR_FROM_DATABASE=Kensington
usb:v047Dp00F2*
ID_MODEL_FROM_DATABASE=VeriMark Desktop
usb:v047Dp1001*
ID_MODEL_FROM_DATABASE=Mouse*in*a*Box
@ -10688,9 +10616,6 @@ usb:v0486*
usb:v0486p0185*
ID_MODEL_FROM_DATABASE=EeePC T91MT HID Touch Panel
usb:v0486p573C*
ID_MODEL_FROM_DATABASE=Xreal Light Microcontroller
usb:v0487*
ID_VENDOR_FROM_DATABASE=Stewart Connector
@ -11006,9 +10931,6 @@ usb:v0499p1037*
usb:v0499p103C*
ID_MODEL_FROM_DATABASE=MOTIF-RACK ES
usb:v0499p1045*
ID_MODEL_FROM_DATABASE=MM6
usb:v0499p1054*
ID_MODEL_FROM_DATABASE=S90XS Keyboard/Music Synthesizer
@ -11696,9 +11618,6 @@ usb:v04A9p106E*
usb:v04A9p1070*
ID_MODEL_FROM_DATABASE=S530D
usb:v04A9p1071*
ID_MODEL_FROM_DATABASE=Sony MPR-501
usb:v04A9p1072*
ID_MODEL_FROM_DATABASE=I850 Printer
@ -11708,9 +11627,6 @@ usb:v04A9p1073*
usb:v04A9p1074*
ID_MODEL_FROM_DATABASE=S330 Printer
usb:v04A9p1075*
ID_MODEL_FROM_DATABASE=Sony MPR-505
usb:v04A9p1076*
ID_MODEL_FROM_DATABASE=i70
@ -12185,9 +12101,6 @@ usb:v04A9p178D*
usb:v04A9p180B*
ID_MODEL_FROM_DATABASE=PIXMA MG3000 series
usb:v04A9p183B*
ID_MODEL_FROM_DATABASE=PIXMA MG3110 Series
usb:v04A9p1856*
ID_MODEL_FROM_DATABASE=PIXMA TS6250
@ -12209,9 +12122,6 @@ usb:v04A9p1906*
usb:v04A9p1907*
ID_MODEL_FROM_DATABASE=CanoScan LiDE 700F
usb:v04A9p1908*
ID_MODEL_FROM_DATABASE=CanoScan 9000F
usb:v04A9p1909*
ID_MODEL_FROM_DATABASE=CanoScan LiDE 110
@ -13895,9 +13805,6 @@ usb:v04B0p0436*
usb:v04B0p043F*
ID_MODEL_FROM_DATABASE=D5600
usb:v04B0p0455*
ID_MODEL_FROM_DATABASE=Z50II
usb:v04B0p0F03*
ID_MODEL_FROM_DATABASE=PD-10 Wireless Printer Adapter
@ -14756,15 +14663,9 @@ usb:v04B8p0892*
usb:v04B8p0893*
ID_MODEL_FROM_DATABASE=EP-774A
usb:v04B8p08D1*
ID_MODEL_FROM_DATABASE=L220/L360 Series
usb:v04B8p0E03*
ID_MODEL_FROM_DATABASE=Thermal Receipt Printer [TM-T20]
usb:v04B8p0E31*
ID_MODEL_FROM_DATABASE=Thermal Receipt Printer [TM-L100]
usb:v04B8p1114*
ID_MODEL_FROM_DATABASE=XP-440 [Expression Home Small-in-One Printer]
@ -14777,24 +14678,6 @@ usb:v04B8p1129*
usb:v04B8p1168*
ID_MODEL_FROM_DATABASE=Workforce WF-7820/7840 Series
usb:v04B8p1186*
ID_MODEL_FROM_DATABASE=ET-2820 Series [ET-2820 EcoTank All-in-One]
usb:v04B8p118A*
ID_MODEL_FROM_DATABASE=ET-2810/L3250 Series [EcoTank ET-2810/L3250]
usb:v04B8p118B*
ID_MODEL_FROM_DATABASE=ET-2850/L4260 Series [EcoTank ET-2850/L4260]
usb:v04B8p11B0*
ID_MODEL_FROM_DATABASE=XP-4200 Series [Expression Home XP-4200]
usb:v04B8p11B9*
ID_MODEL_FROM_DATABASE=ET-2830/L3550 Series [EcoTank ET-2830/L3550]
usb:v04B8p11C8*
ID_MODEL_FROM_DATABASE=ET-2860/L3270 Series [EcoTank ET-2860/L3270]
usb:v04B9*
ID_VENDOR_FROM_DATABASE=Rainbow Technologies, Inc.
@ -15047,15 +14930,6 @@ usb:v04BFp1304*
usb:v04BFp1305*
ID_MODEL_FROM_DATABASE=i3 Multi Sensing Module
usb:v04BFp1400*
ID_MODEL_FROM_DATABASE=Javelin Module Recovery
usb:v04BFp1401*
ID_MODEL_FROM_DATABASE=Javelin Module
usb:v04BFp1500*
ID_MODEL_FROM_DATABASE=Gas sensor demo board
usb:v04C1*
ID_VENDOR_FROM_DATABASE=U.S. Robotics (3Com)
@ -15170,15 +15044,9 @@ usb:v04C5p125A*
usb:v04C5p132E*
ID_MODEL_FROM_DATABASE=fi-7160
usb:v04C5p1526*
ID_MODEL_FROM_DATABASE=PalmSecure-F Pro
usb:v04C5p159F*
ID_MODEL_FROM_DATABASE=ScanSnap iX1500
usb:v04C5p15FF*
ID_MODEL_FROM_DATABASE=Fi-8170 Document Scanner [Ricoh fi-8170: High Performance Desktop Scanner - PFU]
usb:v04C5p200F*
ID_MODEL_FROM_DATABASE=Sigma DP2 (Mass Storage)
@ -15275,9 +15143,6 @@ usb:v04CAp3014*
usb:v04CAp3015*
ID_MODEL_FROM_DATABASE=Qualcomm Atheros QCA9377 Bluetooth
usb:v04CAp3802*
ID_MODEL_FROM_DATABASE=MediaTek Bluetooth MT7921
usb:v04CAp7022*
ID_MODEL_FROM_DATABASE=HP HD Webcam
@ -46073,24 +45938,6 @@ usb:v0E25*
usb:v0E26*
ID_VENDOR_FROM_DATABASE=J-Phone East Co., Ltd
usb:v0E2C*
ID_VENDOR_FROM_DATABASE=Materialise Motion NV
usb:v0E2Cp0012*
ID_MODEL_FROM_DATABASE=footscan pressure plate (0.5m)
usb:v0E2Cp0013*
ID_MODEL_FROM_DATABASE=footscan pressure plate (1.0m)
usb:v0E2Cp0018*
ID_MODEL_FROM_DATABASE=footscan 2D interface box
usb:v0E2Cp0020*
ID_MODEL_FROM_DATABASE=footscan pressure plate (1.5m)
usb:v0E2Cp002D*
ID_MODEL_FROM_DATABASE=footscan heavy duty pressure plate (1.0m)
usb:v0E2E*
ID_VENDOR_FROM_DATABASE=Brady Worldwide, Inc.

View File

@ -259,8 +259,6 @@ usb:v06CBp0104*
usb:v06CBp0106*
usb:v06CBp0107*
usb:v06CBp0108*
usb:v06CBp0109*
usb:v06CBp010A*
usb:v06CBp0123*
usb:v06CBp0124*
usb:v06CBp0126*
@ -271,7 +269,6 @@ usb:v06CBp016C*
usb:v06CBp0173*
usb:v06CBp0174*
usb:v06CBp019D*
usb:v06CBp019F*
ID_AUTOSUSPEND=1
ID_PERSIST=0

View File

@ -243,7 +243,6 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnAcer*:pnNitro*AN*515-58:pvr*
# Nitro ANV15-51
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnAcer*:pnNitro*ANV*15-51:pvr*
KEYBOARD_KEY_66=micmute # Microphone mute button
KEYBOARD_KEY_f5=prog1 # NitroSense button
###########################################################
# Alienware
@ -285,21 +284,6 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnASUS:pn*:*
KEYBOARD_KEY_ee=volumedown
KEYBOARD_KEY_ef=mute
# Asus ROG series
# Prevents the keyboard from sending POWER and SLEEP key presses
# when the keyboard goes to sleep.
evdev:input:b*v0B05p*e0111*
KEYBOARD_KEY_10081=reserved
KEYBOARD_KEY_10082=reserved
KEYBOARD_KEY_70070=reserved
KEYBOARD_KEY_70071=reserved
KEYBOARD_KEY_70072=reserved
KEYBOARD_KEY_70073=reserved
KEYBOARD_KEY_70074=reserved
KEYBOARD_KEY_70075=reserved
KEYBOARD_KEY_70076=reserved
KEYBOARD_KEY_70077=reserved
# Asus TF103C misses the home button in its PNP0C40 GPIO resources
# causing the volume-button mappings to be off by one, correct this
evdev:name:gpio-keys:phys:gpio-keys/input0:ev:3:dmi:*:svnASUSTeKCOMPUTERINC.:pnTF103C*:*
@ -1817,7 +1801,7 @@ evdev:input:b0003v258Ap001E*
###########################################################
evdev:atkbd:dmi:bvn*:bvr*:bd*:svn*:pn*:pvr*:rvnQuanta:rn30B7:rvr65.2B:*
KEYBOARD_KEY_88=media # quick play
KEYBOARD_KEY_88=media # "quick play
###########################################################
# Redmi
@ -2303,11 +2287,6 @@ evdev:name:SIPODEV USB Composite Device:dmi:bvn*:bvr*:svnPositivoTecnologiaSA:pn
KEYBOARD_KEY_7006d=prog3 # Programmable button
KEYBOARD_KEY_7006e=prog4 # Programmable button
# Positivo (K116J)
evdev:name:AT Translated Set 2 keyboard:dmi:bvn*:svnPositivo*:pn*:pvr*:rvnPositivo*:rnK116J*
KEYBOARD_KEY_69=www
KEYBOARD_KEY_6e=search
###########################################################
# Multilaser
###########################################################
@ -2347,7 +2326,7 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnDIXONSP:pnDIXON*:*
# The layout must be an xkb compatible layout (defined with XKB_FIXED_LAYOUT),
# with an accompanying variant (defined with XKB_FIXED_VARIANT) if necessary.
# Yubico Yubico Yubikey II
# Yubico Yubico Yubikey II"
evdev:input:b0003v1050p0010*
# Yubico Yubikey NEO OTP+CCID
evdev:input:b0003v1050p0111*

View File

@ -654,7 +654,7 @@ sensor:modalias:acpi:SMO8840*:dmi:*:svnHUAWEI:pnBOHK-WAX9X:*
sensor:modalias:acpi:KIOX000A*:dmi:bvnAmericanMegatrendsInc.:*:svnTobefilledbyO.E.M.:pnTW891:pvrTobefilledbyO.E.M.:rvnTobefilledbyO.E.M.:rnTW891:rvr1.0:cvnToBeFilledByO.E.M.:ct3:cvrToBeFilledByO.E.M.:*
ACCEL_MOUNT_MATRIX=0, 1, 0; 1, 0, 0; 0, 0, 1
# I.T.Works TW701 7 inch windows tablet, same hw as Trekstor ST70416-6
# I.T.Works TW701 7" windows tablet, same hw as Trekstor ST70416-6
sensor:modalias:acpi:BMA250*:dmi:*:bvritWORKS.G.WI71C.JGBMRB*:*:svnInsyde:pni71c:*
ACCEL_MOUNT_MATRIX=0, 1, 0; 1, 0, 0; 0, 0, 1
@ -866,14 +866,6 @@ sensor:modalias:acpi:KIOX000A*:dmi:*:rvnMETAPHYUNI:rnMetawillBook01:*
ACCEL_MOUNT_MATRIX=-1, 0, 0; 0, -1, 0; 0, 0, -1
ACCEL_LOCATION=display
#########################################
# Microtech
#########################################
# Microtech e-tab Pro
sensor:modalias:acpi:KIOX000A*:dmi:*:svnMicrotech:pne-tabPro:*
ACCEL_MOUNT_MATRIX=-1, 0, 0; 0, 1, 0; 0, 0, 1
#########################################
# MPMAN
#########################################
@ -908,7 +900,7 @@ sensor:modalias:acpi:KIOX010A*:dmi:*:svnCompletElectroServSA:pnMY8312:*
# Nuvision (TMax)
#########################################
# Nuvision/TMAX 8 inch Windows signature edition. TM800W560L
# Nuvision/TMAX 8" Windows signature edition. TM800W560L
sensor:modalias:acpi:KIOX000A*:dmi:*:svnTMAX:pnTM800W560L:*
ACCEL_MOUNT_MATRIX=1, 0, 0; 0, -1, 0; 0, 0, 1

View File

@ -68,5 +68,5 @@ usb:v2B71p000E*
# PowerSpec Ultra 3DPrinter
usb:v0315p0001*
usb:v2B71p00F6*
usb:v2B71p00FF*
usb:v2B71p00FF
ID_MAKER_TOOL=1

View File

@ -136,5 +136,3 @@ IDEMIA,IDEM,06/26/2018
"Rockwell Automation, Inc",ROKL,04/18/2025
"JUMPtec GmbH",JUMP,04/22/2025
"Fsas Technologies Inc.",FSAS,04/30/2025
"JP Morgan Chase N.A.",JPMC,05/30/2025
"Roku, Inc.",ROKU,07/15/2025
1 Company ACPI ID Approved On Date
136 Rockwell Automation, Inc ROKL 04/18/2025
137 JUMPtec GmbH JUMP 04/22/2025
138 Fsas Technologies Inc. FSAS 04/30/2025
JP Morgan Chase N.A. JPMC 05/30/2025
Roku, Inc. ROKU 07/15/2025

File diff suppressed because it is too large Load Diff

View File

@ -872,6 +872,12 @@ C4-A1-0E (hex) Ayla Networks (Shenzhen) Co., Ltd.
Shenzhen 518000
CN
70-50-E7 (hex) Shenzhen Dangs Science and Technology CO.,Ltd.
800000-8FFFFF (base 16) Shenzhen Dangs Science and Technology CO.,Ltd.
9th Floor of GDC Building, Gaoxin Middle 3rd St.,Nanshan District
Shenzhen GuangDong 518063
CN
C4-A1-0E (hex) Connectlab SRL
D00000-DFFFFF (base 16) Connectlab SRL
via donatello 30
@ -7151,6 +7157,18 @@ F0-12-04 (hex) MetaX
Shanghai 200000
CN
2C-7A-F4 (hex) Kegao Intelligent Garden Technology(Guangdong) Co.,Ltd.
400000-4FFFFF (base 16) Kegao Intelligent Garden Technology(Guangdong) Co.,Ltd.
8/F Building D,No.39, East Keji Avenue, Shishan Town Nanhai District
Foshan Guangdong 528225
CN
2C-7A-F4 (hex) Shenzhen Yitoa Digital Technology Co., Ltd.
300000-3FFFFF (base 16) Shenzhen Yitoa Digital Technology Co., Ltd.
7th floor, Building 1, Jiancang Technology Park, Bao'an, Shenzhen, China
Shenzhen GuangDong 518000
CN
2C-7A-F4 (hex) ShangYu Auto Technology Co.,Ltd
600000-6FFFFF (base 16) ShangYu Auto Technology Co.,Ltd
No. 69 Yuanda Road, Anting Town, Jiading District, Shanghai
@ -7163,137 +7181,17 @@ F0-12-04 (hex) MetaX
Xi'An Shaanxi 710000
CN
2C-7A-F4 (hex) Shenzhen Yitoa Digital Technology Co., Ltd.
300000-3FFFFF (base 16) Shenzhen Yitoa Digital Technology Co., Ltd.
7th floor, Building 1, Jiancang Technology Park, Bao'an, Shenzhen, China
Shenzhen GuangDong 518000
CN
2C-7A-F4 (hex) Kegao Intelligent Garden Technology(Guangdong) Co.,Ltd.
400000-4FFFFF (base 16) Kegao Intelligent Garden Technology(Guangdong) Co.,Ltd.
8/F Building D,No.39, East Keji Avenue, Shishan Town Nanhai District
Foshan Guangdong 528225
CN
FC-A2-DF (hex) TiGHT AV
C00000-CFFFFF (base 16) TiGHT AV
Uggledalsvägen 23
Billdal 427 40
SE
FC-A2-DF (hex) PAVONE SISTEMI SRL
300000-3FFFFF (base 16) PAVONE SISTEMI SRL
Via Tiberio Bianchi 11-13-15
Concorezzo MB 20863
IT
FC-A2-DF (hex) Solink Corporation
000000-0FFFFF (base 16) Solink Corporation
110-390 March Road
Ottawa Ontario K2K 0G7
CA
FC-A2-DF (hex) Lumentum
B00000-BFFFFF (base 16) Lumentum
60/129 Moo 19, Klongnueng
Klongluang Pathumthani 12120
TH
04-58-5D (hex) Chengdu Juxun Electronic Technology Co.,Ltd
B00000-BFFFFF (base 16) Chengdu Juxun Electronic Technology Co.,Ltd
No.327 Xingye Road, Industrial East District, Xindu District, Chengdu City, China
Chengdu Sichuan 610500
CN
04-58-5D (hex) Shenzhen C & D Electronics Co., Ltd.
E00000-EFFFFF (base 16) Shenzhen C & D Electronics Co., Ltd.
9th FIoor, Building 9, No.1 Qingxiang road, BaoNeng Science and TechnoIogy Industrial Park, Longhua New District
ShenZhen GuangDong 518000
CN
B0-CC-CE (hex) Steelco SpA
000000-0FFFFF (base 16) Steelco SpA
via Balegante 27
Riese Pio X (TV) 31039
IT
B0-CC-CE (hex) MULTI-FIELD LOW TEMPERATURE TECHNOLOGY(BEIJING) CO., LTD.
600000-6FFFFF (base 16) MULTI-FIELD LOW TEMPERATURE TECHNOLOGY(BEIJING) CO., LTD.
Room 505, 5th Floor, Building 2, No. 11, Xingke East Street, Yanqi Economic Development Zone, Huairou District, Beijing, P.R.China
北京 101400
CN
B0-CC-CE (hex) 4MOD Technology
200000-2FFFFF (base 16) 4MOD Technology
4 Rue de la Cornouaille
Nantes 44300
FR
70-50-E7 (hex) Shenzhen Dangs Science and Technology CO.,Ltd.
800000-8FFFFF (base 16) Shenzhen Dangs Science and Technology CO.,Ltd.
9th Floor of GDC Building, Gaoxin Middle 3rd St.,Nanshan District
Shenzhen GuangDong 518063
CN
B0-CC-CE (hex) Shanghai CloudPrime.ai Technology Co, Ltd
800000-8FFFFF (base 16) Shanghai CloudPrime.ai Technology Co, Ltd
Room 202, Building 11, No. 789, Puxing Road, Minhang District
Shanghai 200000
CN
78-78-35 (hex) Jiaxing Cyber Sensor Intelligent Technology Co., Ltd.
400000-4FFFFF (base 16) Jiaxing Cyber Sensor Intelligent Technology Co., Ltd.
Room 301, Building 9, No.89 YueMing Road
Tongxiang Zhejiang 314500
CN
78-78-35 (hex) MAICUN Information Technology(Shanghai)Co.,Ltd
600000-6FFFFF (base 16) MAICUN Information Technology(Shanghai)Co.,Ltd
Room 312,No. 2525, Chun shen Road, Minhang District
shanghai 210000
CN
FC-E4-98 (hex) SATEL Ltd
A00000-AFFFFF (base 16) SATEL Ltd
21, Balakirevsky pereulok
Moscow 105082
RU
FC-E4-98 (hex) TIH Microelectronics Technology Co. Ltd.
E00000-EFFFFF (base 16) TIH Microelectronics Technology Co. Ltd.
Room 3611, 36th Floor, Building A, Shandong Big Data Industry Base, Jinan City, Shandong Province, China
Jinan SHANDONG 250101
CN
34-B5-F3 (hex) Bethlabs(Tianjin)Technology Co.,Ltd.
A00000-AFFFFF (base 16) Bethlabs(Tianjin)Technology Co.,Ltd.
Suite 109, 24 Minhe Road, Xiqing Economic and Technological Development Zone
Tianjin Tianjin 300380
CN
34-B5-F3 (hex) ADDSOFT TECHNOLOGIES LIMITED
000000-0FFFFF (base 16) ADDSOFT TECHNOLOGIES LIMITED
647/2219, NUAPATNA, TELENGAPENTHA
CUTTACK ODISHA 754001
IN
00-6A-5E (hex) Jiangsu Alstom NUG Propulsion System Co., Ltd
700000-7FFFFF (base 16) Jiangsu Alstom NUG Propulsion System Co., Ltd
No.199 South Fenglin Rd.,WujinNational Hi-tech Development Zone
CHANGZHOU JIANGSU 213166
CN
00-6A-5E (hex) Hilti Corporation
800000-8FFFFF (base 16) Hilti Corporation
Feldkircherstrasse 100
Schaan 9494
LI
00-6A-5E (hex) Oppermann Regelgeräte GmbH
E00000-EFFFFF (base 16) Oppermann Regelgeräte GmbH
Im Spitzhau 1
Leinfelden-Echterdingen 70771
DE
FC-A2-DF (hex) TiGHT AV
C00000-CFFFFF (base 16) TiGHT AV
Uggledalsvägen 23
Billdal 427 40
SE
B8-4C-87 (hex) Shenzhen Link-all Technology Co., Ltd
300000-3FFFFF (base 16) Shenzhen Link-all Technology Co., Ltd
@ -13928,132 +13826,6 @@ FC-A2-DF (hex) Hangzhou Laizhi Technology Co.,Ltd
hangzhou zhejiang 310011
CN
04-58-5D (hex) HKC Security Ltd.
700000-7FFFFF (base 16) HKC Security Ltd.
Parkway Business Centre
Ballymount Dublin D24 WY49
IE
04-58-5D (hex) TELEPLATFORMS
A00000-AFFFFF (base 16) TELEPLATFORMS
Polbina st., 3/1
Moscow 109388
RU
D4-A0-FB (hex) Parpro System Corporation
800000-8FFFFF (base 16) Parpro System Corporation
6F, No. 478, Sec. 5, ZhongShan N. Rd.,
Taipei Select State 111005
TW
D4-A0-FB (hex) Hangteng (HK) Technology Co., Limited
900000-9FFFFF (base 16) Hangteng (HK) Technology Co., Limited
銅鑼灣 伊榮街9號欣榮商業大廈 16 樓 1602 室
HONGKONG 1
HK
B0-CC-CE (hex) Faaftech
C00000-CFFFFF (base 16) Faaftech
Rua 90, N 929, Setor Sul
Goiânia Goias 74093020
BR
B0-CC-CE (hex) MICROTEST
E00000-EFFFFF (base 16) MICROTEST
14 F.-6, No. 79, Sec. 1, Xintai 5th Rd., Xizhi Dist.
New Taipei 221432
TW
B0-CC-CE (hex) Shenzhen Xtooltech Intelligent Co.,Ltd.
400000-4FFFFF (base 16) Shenzhen Xtooltech Intelligent Co.,Ltd.
17&18/F, A2 Building, Creative City, Liuxian Avenue, Nanshan District, Shenzhen, China
Shenzhen Guangdong 518052
CN
B0-CC-CE (hex) EBI Patient Care, Inc.
700000-7FFFFF (base 16) EBI Patient Care, Inc.
484 Calle E
Guaynabo PR 00969
US
78-78-35 (hex) Skylight
A00000-AFFFFF (base 16) Skylight
101a Clay Street #144
San Francisco CA 94111
US
78-78-35 (hex) EHTech (Beijing)Co., Ltd.
200000-2FFFFF (base 16) EHTech (Beijing)Co., Ltd.
2nd Floor, Building 6 (Block D), No.5 Shengfang Road, Daxing District
Beijing 102627
CN
FC-E4-98 (hex) GIGA Copper Networks GmbH
B00000-BFFFFF (base 16) GIGA Copper Networks GmbH
Rückerstraße 10
Düsseldorf 40470
DE
FC-E4-98 (hex) Shenzhen C & D Electronics Co., Ltd.
300000-3FFFFF (base 16) Shenzhen C & D Electronics Co., Ltd.
9th FIoor, Building 9, No.1 Qingxiang road, BaoNeng Science and TechnoIogy Industrial Park, Longhua New District
ShenZhen GuangDong 518000
CN
FC-E4-98 (hex) TScale Electronics Mfg. (Kunshan) Co., Ltd
400000-4FFFFF (base 16) TScale Electronics Mfg. (Kunshan) Co., Ltd
No. 99 Jingwei Road, Zhoushi
Kunshan 215300
CN
FC-E4-98 (hex) ART Finex Co.,Ltd.
200000-2FFFFF (base 16) ART Finex Co.,Ltd.
6-1-33,KAMIKOBATACHO,SABAE-SHI
Fukui-ken 916-0037
JP
FC-E4-98 (hex) NTCSOFT
000000-0FFFFF (base 16) NTCSOFT
A925, A926, Gwangmyeong G-Tower, 190, Soha-Ro
Gwangmyeong-Si, Gyeonggi-do 14322
KR
34-B5-F3 (hex) JENESIS(SHEN ZHEN)CO.,LTD.
600000-6FFFFF (base 16) JENESIS(SHEN ZHEN)CO.,LTD.
6th Floor, Building A, Tiange Science and Technology Park, No. 2 Luo Zu Industrial Avenue, Luo Zu Community, Shiyan Street, Bao'an District
Shenzhen Guangdong 518108
CN
34-B5-F3 (hex) Kyokuto Solutions Inc.
500000-5FFFFF (base 16) Kyokuto Solutions Inc.
5-9-3 Nishitenma Kita-ku
Osaka-shi Osaka 530-0047
JP
00-6A-5E (hex) Shenzhen Lightx Technology Co., Ltd
600000-6FFFFF (base 16) Shenzhen Lightx Technology Co., Ltd
RM 1006, 10/F PO YIP BLDG, 23 HING YIP ST, Kwun Tong, Kowloon, Hong Kong
Hong Kong 000
HK
00-6A-5E (hex) CYBERTEL BRIDGE
C00000-CFFFFF (base 16) CYBERTEL BRIDGE
9th floor, Hansin IT Tower, 272, Digital-ro,Guro-gu
Seoul 08389
KR
00-6A-5E (hex) Annapurna labs
A00000-AFFFFF (base 16) Annapurna labs
Matam Scientific Industries Center, Building 8.2
Mail box 15123 Haifa 3508409
IL
00-6A-5E (hex) Beijing Lingji Innovations technology Co,LTD.
D00000-DFFFFF (base 16) Beijing Lingji Innovations technology Co,LTD.
Room 106, 1st Floor, A-1 Building, Zhongguancun Dongsheng Science and Technology Park, No. 66 Xixiaokou Road, Haidian District, Beijing
Beijing Beijing 100190
CN
B8-4C-87 (hex) Altronix , Corp
A00000-AFFFFF (base 16) Altronix , Corp
140 58th St. Bldg A, Ste 2N
@ -18740,6 +18512,12 @@ A4-58-0F (hex) Ksenia Security srl
Mail box 15123 Haifa 3508409
IL
7C-CB-E2 (hex) Aplex Technology Inc.
E00000-EFFFFF (base 16) Aplex Technology Inc.
501-5B01,Xintianxia phase 2 building,Wankecheng community,Bantian township,Longgang district
Shenzhen City Guangdong 518129
CN
7C-CB-E2 (hex) Hangzhou Haohaokaiche Technology Co.,Ltd.
900000-9FFFFF (base 16) Hangzhou Haohaokaiche Technology Co.,Ltd.
Building 7, Haichuang Park, No.998 Wenyi West Road, Yuhang District
@ -20411,6 +20189,12 @@ C4-CC-37 (hex) KAIS Co.,Ltd.
Farmingdale NY 11735
US
60-A4-34 (hex) Hangzhou Zhongxinhui lntelligent Technology Co.,Ltd.
200000-2FFFFF (base 16) Hangzhou Zhongxinhui lntelligent Technology Co.,Ltd.
Room 17337, No. 260 Jiangshu Road, Xixing Street, Binjiang District, Hangzhou City, Zhejiang Province
Hangzhou 310000
CN
C8-FF-BF (hex) Cognizant Mobility GmbH
200000-2FFFFF (base 16) Cognizant Mobility GmbH
Ingolstädter Str. 45
@ -21059,6 +20843,12 @@ A00000-AFFFFF (base 16) TECHWIN SOLUTIONS PVT LTD
NEW DELHI DELHI 110020
IN
F8-2B-E6 (hex) Maia Tech, Inc
C00000-CFFFFF (base 16) Maia Tech, Inc
77 S. Bedford Street
Burlington MA 01803
US
F8-2B-E6 (hex) Hitek Electronics Co.,Ltd
800000-8FFFFF (base 16) Hitek Electronics Co.,Ltd
203-404,397 Seokcheon-ro,Ojeong-gu,Bucheon-si,Gyeonggi-do,14449,Republic of korea
@ -21155,192 +20945,12 @@ B00000-BFFFFF (base 16) Arira Platforms, LLC
San Jose CA 95110
US
FC-A2-DF (hex) shenzhen zovoton electronic co.,ltd
600000-6FFFFF (base 16) shenzhen zovoton electronic co.,ltd
1F 4 Blok, jinrui zhonghe industrial park, huarong road, tongsheng community, dalang street, longhua district, Shenzhen city, Guangdong province, china
shenzhen guangdong 518100
CN
FC-A2-DF (hex) Beijing KSL Electromechanical Technology Development Co.,Ltd
900000-9FFFFF (base 16) Beijing KSL Electromechanical Technology Development Co.,Ltd
Room 501-1, 5th Floor, Building 23, Courtyard 6, Haiying Road, Fengtai District, Beijing, China
Beijing 100071
CN
60-A4-34 (hex) Hangzhou Zhongxinhui lntelligent Technology Co.,Ltd.
200000-2FFFFF (base 16) Hangzhou Zhongxinhui lntelligent Technology Co.,Ltd.
Room 809, Building B, No. 567 Yueming Road, Xixing Street,
Hangzhou Binjiang Distric 310000
CN
FC-A2-DF (hex) Orion Power Systems, Inc.
E00000-EFFFFF (base 16) Orion Power Systems, Inc.
2939 W. Beaver Street
Jacksonville FL 32254
US
04-58-5D (hex) VERTE Elektronik San. Ve Tic. A.Ş.
600000-6FFFFF (base 16) VERTE Elektronik San. Ve Tic. A.Ş.
Ankara Teknopark, Serhat Mahallesi, 2224. Cadde, No:1/43, (Z13) F Blok Zemin Kat Tax Office: İvedik Tax Number: 9250982676
Yenimahalle ANKARA 06374
TR
04-58-5D (hex) Rexon Technology
C00000-CFFFFF (base 16) Rexon Technology
No. 261, Renhua Rd., Dali Dist.
Taichung City 412037
TW
04-58-5D (hex) Research Laboratory of Design Automation, Ltd.
100000-1FFFFF (base 16) Research Laboratory of Design Automation, Ltd.
8 Birzhevoy Spusk
Taganrog 347900
RU
D4-A0-FB (hex) Skyfri Corp
700000-7FFFFF (base 16) Skyfri Corp
800 North State Street Suite 403
City of Dover DE 19901
US
B0-CC-CE (hex) Watermark Systems (India) Private Limited
B00000-BFFFFF (base 16) Watermark Systems (India) Private Limited
1010, Maker Chambers 5, Nariman Point, Mumbai
Mumbai Maharashtra 400021
IN
B0-CC-CE (hex) Gateview Technologies
300000-3FFFFF (base 16) Gateview Technologies
2616 Port Industrial Drive
JACKSONVILLE FL 32226
US
D4-A0-FB (hex) Snap-on Tools
C00000-CFFFFF (base 16) Snap-on Tools
19220 San Jose Ave.
City of Industry CA 91748
US
B0-CC-CE (hex) Beijing Viazijing Technology Co., Ltd.
500000-5FFFFF (base 16) Beijing Viazijing Technology Co., Ltd.
9 Xue Qing Road, Hai Dian District
Beijing 100085
CN
B0-CC-CE (hex) Xiaomi EV Technology Co., Ltd.
D00000-DFFFFF (base 16) Xiaomi EV Technology Co., Ltd.
Room 618, Floor 6, Building 5, Yard 15, Kechuang Tenth Street, Beijing Economic and Technological Development Zone, Beijing
Beijing Beijing 100176
CN
78-78-35 (hex) Ambient Life Inc.
700000-7FFFFF (base 16) Ambient Life Inc.
321 Walnut St, #325Newton MA 02460
Newton MA 02460
US
F8-2B-E6 (hex) MaiaEdge, Inc.
C00000-CFFFFF (base 16) MaiaEdge, Inc.
77 S. Bedford Street
Burlington MA 01803
US
FC-E4-98 (hex) Siretta Ltd
C00000-CFFFFF (base 16) Siretta Ltd
Basingstoke Rd, Spencers Wood, Reading
Reading RG7 1PW
GB
78-78-35 (hex) BLOOM VIEW LIMITED
900000-9FFFFF (base 16) BLOOM VIEW LIMITED
Room 1502 ,Easey Commercial Building
WANCHAI HONG KONG
HK
FC-E4-98 (hex) Changzhou Leading Weighing Technology Co., Ltd
800000-8FFFFF (base 16) Changzhou Leading Weighing Technology Co., Ltd
Builing 31, No.9 Caoxi Road, Changzhou,Jiangsu
Changzhou 213000
CN
7C-CB-E2 (hex) Aplex Technology Inc.
E00000-EFFFFF (base 16) Aplex Technology Inc.
15F-1, No.186, Jian Yi Road
Zhonghe District New Taipei City 235 -
TW
FC-E4-98 (hex) SM Instruments
500000-5FFFFF (base 16) SM Instruments
20, Yuseong-daero 1184beon-gil
Daejeon Yuseong-gu 34109
KR
34-B5-F3 (hex) WEAD GmbH
300000-3FFFFF (base 16) WEAD GmbH
Retzfeld 7
Sankt Georgen an der Gusen 4222
AT
34-B5-F3 (hex) Shanghai Sigen New Energy Technology Co., Ltd
800000-8FFFFF (base 16) Shanghai Sigen New Energy Technology Co., Ltd
Room 514 The 5th Floor, No.175 Weizhan Road China (Shanghai) Plilot Free Trade Zone
Shanghai 201306
CN
00-6A-5E (hex) Rayneo (wuxi) ltd
500000-5FFFFF (base 16) Rayneo (wuxi) ltd
No. 6 Huaqing Innovation Park, Huishan District, Wuxi City
WUXI JiangSu 214100
CN
34-B5-F3 (hex) Shenzhen Mifasuolla Smart Co.,Ltd
C00000-CFFFFF (base 16) Shenzhen Mifasuolla Smart Co.,Ltd
No. 15 Hongbu Road, Majialong Community, Nantou Subdistrict, Nanshan District
Shenzhen Guangdong 518052
CN
34-B5-F3 (hex) Digicom
D00000-DFFFFF (base 16) Digicom
The 4th floor, Building No.4, Xiangshan South Road 105#, Shijingshan, Beijing, China
BEIJING 100144
CN
34-B5-F3 (hex) Viettel Manufacturing Corporation One Member Limited Liability Company
E00000-EFFFFF (base 16) Viettel Manufacturing Corporation One Member Limited Liability Company
An Binh Hamlet, An Khanh Commune
Ha Noi Ha Noi 100000
VN
00-6A-5E (hex) Creative Communication
200000-2FFFFF (base 16) Creative Communication
113/1, Parahupur, Mughalsarai,
Mughalsarai Uttar Pradesh(UP) 232101
IN
00-6A-5E (hex) Shenzhen yeahmoo Technology Co., Ltd.
300000-3FFFFF (base 16) Shenzhen yeahmoo Technology Co., Ltd.
Room 103, 1st Floor, Building 4, Yunli Intelligent Park, No. 3 Changfa Middle Road,Yangmei Community, Bantian Street, Longgang District,
Shenzhen Guangdong Province 518100
CN
04-58-5D (hex) HDS Otomasyon Güvenlik ve Yazılım Teknolojileri Sanayi Ticaret Limited Şirketi
D00000-DFFFFF (base 16) HDS Otomasyon Güvenlik ve Yazılım Teknolojileri Sanayi Ticaret Limited Şirketi
Merkez Mahallesi Sadabad Cad. Kapı No:20
İstanbul Kağıthane 34406
TR
00-6A-5E (hex) Continental Brasil Indústria Automotiva Ltda.
B00000-BFFFFF (base 16) Continental Brasil Indústria Automotiva Ltda.
Av. Senador Adolf Schindling, 131
Guarulhos São Paulo 07042-020
BR
F4-97-9D (hex) LUXSHARE - ICT(NGHE AN) LIMITED
700000-7FFFFF (base 16) LUXSHARE - ICT(NGHE AN) LIMITED
No. 18, Road No. 03, VSIP Nghe An Industrial Park, Hung Nguyen Commune, Nghe An Province, Vietnam
Nghe An Nghe An 460000
VN
D0-14-11 (hex) P.B. Elettronica srl
100000-1FFFFF (base 16) P.B. Elettronica srl
Via Santorelli, 8
@ -28214,132 +27824,6 @@ FC-A2-DF (hex) SpacemiT
zhuhai guangdong 519000
CN
D4-A0-FB (hex) Shenzhen Dijiean Technology Co., Ltd
400000-4FFFFF (base 16) Shenzhen Dijiean Technology Co., Ltd
Floor 6,Building B,Tongxie Industrial Zone,No.80 Shilong Road,Shiyan Street,Baoan District
Shenzhen City Guangdong 518000
CN
04-58-5D (hex) Wetatronics Limited
000000-0FFFFF (base 16) Wetatronics Limited
45 Bath StreetParnell
Auckland Auckland 1052
NZ
D4-A0-FB (hex) M2MD Technologies, Inc.
000000-0FFFFF (base 16) M2MD Technologies, Inc.
525 Chestnut Rose Ln
Atlanta GA 30327
US
D4-A0-FB (hex) Corelase Oy
500000-5FFFFF (base 16) Corelase Oy
Kauhakorvenkatu 52
Tampere Pirkanmaa 33720
FI
04-58-5D (hex) JRK VISION
800000-8FFFFF (base 16) JRK VISION
A-1107, 135, Gasan digital 2-ro, Geumcheon-gu
SEOUL 08504
KR
D4-A0-FB (hex) Spatial Hover Inc
B00000-BFFFFF (base 16) Spatial Hover Inc
10415 A Westpark Dr.
Houston TX 77042
US
D4-A0-FB (hex) NEXXUS NETWORKS INDIA PRIVATE LIMITED
300000-3FFFFF (base 16) NEXXUS NETWORKS INDIA PRIVATE LIMITED
HD-592, C-001/A2 MAX TOWER SECTOR-16B We Work Berger Delhi One Noida Gautam Buddha Nagar U.P
GAUTAM BUDDHA NAGAR UTTAR PRADESH 201301
IN
D4-A0-FB (hex) Huizhou Jiemeisi Technology Co.,Ltd.
600000-6FFFFF (base 16) Huizhou Jiemeisi Technology Co.,Ltd.
NO.63, HUMEI STREET, DASHULING, XIAOJINKOU HUICHENG
Huizhou Guangdong 516023
CN
B0-CC-CE (hex) Agrisys A/S
100000-1FFFFF (base 16) Agrisys A/S
Cypresvej 3
Herning 7400
DK
78-78-35 (hex) Shandong Xintong Electronics Co., Ltd
800000-8FFFFF (base 16) Shandong Xintong Electronics Co., Ltd
No. 18 Liuyishan Road
Zibo High-tech Zone Shandong 255000
CN
78-78-35 (hex) IRISS Inc.
500000-5FFFFF (base 16) IRISS Inc.
10306 Technology Terrace
Bradenton FL 34211
US
78-78-35 (hex) ATsens
000000-0FFFFF (base 16) ATsens
TOWER GALLERY 6F,321 Hwangsaeul-ro, Bundang-gu, Seongnam-si, Gyeonggi-do
Seongnam 13590
KR
FC-E4-98 (hex) QuEL, Inc.
100000-1FFFFF (base 16) QuEL, Inc.
ON Build. 5F 4-7-14 Myojincho
Hachioji Tokyo 192-0046
JP
FC-E4-98 (hex) Infinity Electronics Ltd
D00000-DFFFFF (base 16) Infinity Electronics Ltd
167-169 Great Portland Street
London Surrey W1W 5PF
GB
D4-A0-FB (hex) Intersvyaz IT
100000-1FFFFF (base 16) Intersvyaz IT
Prospekt Pobedy, 288, room 7
Chelyabinsk 454112
RU
FC-E4-98 (hex) AVCON Information Technology Co.,Ltd.
900000-9FFFFF (base 16) AVCON Information Technology Co.,Ltd.
Building A6, Wangu Science and Technology Park, 1688 Guoquan North Road, Yangpu District
Shanghai Shanghai 021-55666588
CN
34-B5-F3 (hex) Hyatta Digital Technology Co., Ltd.
700000-7FFFFF (base 16) Hyatta Digital Technology Co., Ltd.
1405, Building A, Huizhi R&D Center, No. 287 Guangshen Road, Xixiang Street, Bao'an District
Shenzhen Guangdong 518101
CN
34-B5-F3 (hex) Aeterlink Corp.
B00000-BFFFFF (base 16) Aeterlink Corp.
13th Floor, Mitsubishi Building, 2-5-2 Marunouchi
Chiyoda-ku Tokyo 100-0005
JP
34-B5-F3 (hex) Inspired Flight
200000-2FFFFF (base 16) Inspired Flight
225 SUBURBAN RD
SAN LUIS OBISPO CA 93401
US
34-B5-F3 (hex) Shenzhen PeakVic Technology Co.,Ltd
900000-9FFFFF (base 16) Shenzhen PeakVic Technology Co.,Ltd
Room 310, 3rd Floor, Zhenhua Times Square, No. 21 Heping Road, Qinghua Community, Longhua Street, Longhua District
Shenzhen Guangdong 518000
CN
00-6A-5E (hex) Evercomm (Pty) Ltd
400000-4FFFFF (base 16) Evercomm (Pty) Ltd
363 Rivonia Boulevard, 1st Floor, Euro Centre Building, Edenburg
Johannesburg Gauteng 2128
ZA
C8-5C-E2 (hex) Fela Management AG
000000-0FFFFF (base 16) Fela Management AG
Basadingerstrasse 18
@ -35339,170 +34823,8 @@ C00000-CFFFFF (base 16) Reonel Oy
ji nan shi shandong 250031
CN
FC-A2-DF (hex) PDI COMMUNICATION SYSTEMS INC.
200000-2FFFFF (base 16) PDI COMMUNICATION SYSTEMS INC.
40 GREENWOOD LN
SPRINGBORO OH 45066
US
FC-A2-DF (hex) Annapurna labs
500000-5FFFFF (base 16) Annapurna labs
Matam Scientific Industries Center, Building 8.2
Mail box 15123 Haifa 3508409
IL
FC-A2-DF (hex) BPL MEDICAL TECHNOLOGIES PRIVATE LIMITED
A00000-AFFFFF (base 16) BPL MEDICAL TECHNOLOGIES PRIVATE LIMITED
11KM BANNERGHATTA MAIN ROAD ARAKERE BANGALORE
BANGALORE KARNATAKA 560076
IN
FC-A2-DF (hex) MBio Diagnostics, Inc.
D00000-DFFFFF (base 16) MBio Diagnostics, Inc.
4550 Byrd Dr
Loveland 80538
US
04-58-5D (hex) Foxconn Brasil Industria e Comercio Ltda
200000-2FFFFF (base 16) Foxconn Brasil Industria e Comercio Ltda
Av. Marginal da Rodovia dos Bandeirantes, 800 - Distrito Industrial
Jundiaí Sao Paulo 13213-008
BR
04-58-5D (hex) Dron Edge India Private Limited
900000-9FFFFF (base 16) Dron Edge India Private Limited
A 93 SECTOR 65 NOIDA 201301
201301 Uttar Pradesh 201301
IN
04-58-5D (hex) Integrated Technical Vision Ltd
400000-4FFFFF (base 16) Integrated Technical Vision Ltd
Mykoly Hrinchenka str. 2/1
Kyiv Kyiv 03038
UA
04-58-5D (hex) REXXON GmbH
300000-3FFFFF (base 16) REXXON GmbH
Mads-Clausen-Str. 7
Flensburg Schleswig-Holstein 24939
DE
04-58-5D (hex) Sercomm Japan Corporation
500000-5FFFFF (base 16) Sercomm Japan Corporation
8F, 3-1, YuanQu St., NanKang, Taipei 115, Taiwan
Taipei 115
TW
D4-A0-FB (hex) IMPULSE CCTV NETWORKS INDIA PVT. LTD.
A00000-AFFFFF (base 16) IMPULSE CCTV NETWORKS INDIA PVT. LTD.
H.O:- 4th Floor, Tower-A1,Flat No 402Eros Sampoornam, Sec-2,Greater Noida,Gautambuddha Nagar, Uttar Pradesh, 201306
GREATER NOIDA WEST UTTAR PRADESH 201306
IN
D4-A0-FB (hex) Beijing Lingji Innovations technology Co,LTD.
200000-2FFFFF (base 16) Beijing Lingji Innovations technology Co,LTD.
Room 106, 1st Floor, A-1 Building, Zhongguancun Dongsheng Science and Technology Park, No. 66 Xixiaokou Road, Haidian District, Beijing
Beijing Beijing 100190
CN
D4-A0-FB (hex) FASTWEL ELECTRONICS INDIA PRIVATE LIMITED
D00000-DFFFFF (base 16) FASTWEL ELECTRONICS INDIA PRIVATE LIMITED
DORASWANIPALYA , NO 3, ARKER MICOLAYOUT, ARKERE , BENGALURE(BANGLORE) URBAN
BENGALURU KARNATAKA 560076
IN
D4-A0-FB (hex) GTEK GLOBAL CO.,LTD
E00000-EFFFFF (base 16) GTEK GLOBAL CO.,LTD
No3/2/13 Ta Thanh Oai, Thanh Tri district
Hanoi Vietnam 10000
VN
B0-CC-CE (hex) Shenzhen Dangs Science and Technology CO.,Ltd.
A00000-AFFFFF (base 16) Shenzhen Dangs Science and Technology CO.,Ltd.
9th Floor of GDC Building, Gaoxin Middle 3rd St.,Nanshan District
Shenzhen Guangdong 518063
CN
78-78-35 (hex) Suzhou Chena Information Technology Co., Ltd.
D00000-DFFFFF (base 16) Suzhou Chena Information Technology Co., Ltd.
3rd Floor, Building B6, No. 8 Yanghua Road, Suzhou Industrial Park
Suzhou Free Trade Zone Jiangsu Province 215000
CN
B0-CC-CE (hex) Taiv Inc
900000-9FFFFF (base 16) Taiv Inc
400-321 McDermot Ave
Winnipeg Manitoba R3A 0A3
CA
78-78-35 (hex) NEOARK Corporation
E00000-EFFFFF (base 16) NEOARK Corporation
Nakano-machi2073-1
Hachioji Tokyo 1920015
JP
78-78-35 (hex) SHENZHEN CHUANGWEI ELECTRONIC APPLIANCE TECH CO., LTD.
300000-3FFFFF (base 16) SHENZHEN CHUANGWEI ELECTRONIC APPLIANCE TECH CO., LTD.
6F Floor, Overseas Factory, Skyworth Technology Industrial Park, Tangtou Community, Shiyan Street, Bao'an District
Shenzhen Guangdong 518000
CN
78-78-35 (hex) ENQT GmbH
100000-1FFFFF (base 16) ENQT GmbH
Spaldingstrasse 210
Hamburg Hamburg 20097
DE
78-78-35 (hex) DBG Communications Technology Co.,Ltd.
C00000-CFFFFF (base 16) DBG Communications Technology Co.,Ltd.
Building A, No.5(DBG Factory), Yongda Road, Xiangshui River Industrial Area, Daya Bay, Huizhou
Huizhou Gangdong 516083
CN
78-78-35 (hex) Shanghai Intchains Technology Co., Ltd.
B00000-BFFFFF (base 16) Shanghai Intchains Technology Co., Ltd.
Building 1&2, No.333 Haiyang No.1 Road Lingang Science and Technology Park Pudon
shanghai shanghai 200120
CN
FC-E4-98 (hex) Videonetics Technology Private Limited
600000-6FFFFF (base 16) Videonetics Technology Private Limited
Videonetics Technology Private LimitedPlot No. AI/154/1, Action Area - 1A, 4th Floor, Utility Building
Kolkata West Bengal 700156
IN
FC-E4-98 (hex) E Haute Intelligent Technology Co., Ltd
700000-7FFFFF (base 16) E Haute Intelligent Technology Co., Ltd
Room 01-05, 40/F, Building C, Longhua Digital Innovation Center, Longhua District
Shenzhen Guangdong 518000
CN
00-6A-5E (hex) TRULY ELECTRONICS MFG.,LTD
000000-0FFFFF (base 16) TRULY ELECTRONICS MFG.,LTD
Truly industry cityshanwei guangdongP.R.C
shanwei guangdong 516600
CN
00-6A-5E (hex) BroadMaster Biotech Corp
100000-1FFFFF (base 16) BroadMaster Biotech Corp
No. 91 Xiyuan RD. Zhongli City
Taoyuan Select State 32057
TW
00-6A-5E (hex) Annapurna labs
900000-9FFFFF (base 16) Annapurna labs
Matam Scientific Industries Center, Building 8.2
Mail box 15123 Haifa 3508409
IL
34-B5-F3 (hex) LAUMAS Elettronica s.r.l.
400000-4FFFFF (base 16) LAUMAS Elettronica s.r.l.
via I Maggio, 6 - IT01661140341
Montechiarugolo 43022
IT
34-B5-F3 (hex) Satco Europe GmbH
100000-1FFFFF (base 16) Satco Europe GmbH
Waidhauserstr. 3
Vohenstrauß 92546
DE

File diff suppressed because it is too large Load Diff

View File

@ -31,7 +31,6 @@ hwdb_files_test = files(
'70-cameras.hwdb',
'70-hardware-wallets.hwdb',
'70-joystick.hwdb',
'70-maker-tools.hwdb',
'70-mouse.hwdb',
'70-pda.hwdb',
'70-pointingstick.hwdb',
@ -42,6 +41,7 @@ hwdb_files_test = files(
if conf.get('ENABLE_HWDB') == 1
auto_suspend_rules = custom_target(
'60-autosuspend-chromiumos.hwdb',
output : '60-autosuspend-chromiumos.hwdb',
command : make_autosuspend_rules_py,
capture : true,

File diff suppressed because it is too large Load Diff

View File

@ -9,8 +9,8 @@
# The latest version can be obtained from
# http://www.linux-usb.org/usb.ids
#
# Version: 2025.07.26
# Date: 2025-07-26 20:34:01
# Version: 2025.04.01
# Date: 2025-04-01 20:34:02
#
# Vendors, devices and interfaces. Please keep sorted.
@ -59,8 +59,6 @@
0112 Card Reader
017c MLK
145f Trust Deskset
019c mek
0042 mek_42
0200 TP-Link
0201 MA180 UMTS Modem
0204 Chipsbank Microelectronics Co., Ltd
@ -71,9 +69,6 @@
0231 Sonuus Limited
02ad HUMAX Co., Ltd.
138c PVR Mass Storage
0300 Ajazz
1010 Akp153E Desktop Controller
1020 AKP153R Desktop Controller
0303 Mini Automation Controller
0324 OCZ Technology Inc
bc06 OCZ ATV USB 2.0 Flash Drive
@ -100,7 +95,7 @@
0015 ATAPI Enclosure
2123 SiPix StyleCam Deluxe
8004 Aox 99001
03e9 Melexis (formerly Thesys Microelectronics)
03e9 Thesys Microelectronics
03ea Data Broadcasting Corp.
03eb Atmel Corp.
0902 4-Port Hub
@ -262,8 +257,6 @@
0423 HS-COMBO Cardreader
042a LaserJet M1132 MFP
0441 Prime [NW280AA, G8X92AA]
046b Dock G5
0483 Engage Go 10 Tablet
0504 DeskJet 885c
0505 ScanJet 2100c
0507 DVD+RW
@ -273,7 +266,6 @@
0517 LaserJet 1000
051d Bluetooth Interface
052a LaserJet M1212nf MFP
0583 Engage Go 10 Tablet
0601 ScanJet 6300c
0604 DeskJet 840c
0605 ScanJet 2200c
@ -283,7 +275,6 @@
0624 Bluetooth Dongle
0641 X1200 Optical Mouse
0653 DeskJet 3700 series
0683 Engage Go 10 Tablet
0701 ScanJet 5300c/5370c
0704 DeskJet 825c
0705 ScanJet 4400c
@ -334,7 +325,6 @@
1102 PhotoSmart 240 series
1104 DeskJet 959c
1105 ScanJet 5470c/5490c
110c Pocket Media Drive
1111 OfficeJet v60
1116 Jornada 568 Pocket PC
1117 LaserJet 1300n
@ -1023,7 +1013,6 @@
3000 Optical dual-touch panel
3001 Optical Touch Screen
3008 Optical Touch Screen
4033 HD Webcam
a060 HD Webcam
0409 NEC Corp.
0011 PC98 Series Layout Keyboard Mouse
@ -1040,7 +1029,6 @@
004e SuperScript 1400 Series
004f Wireless Keyboard with One-touch start buttons
0050 7-port hub
0056 uPD720133 IDE bridge
0058 HighSpeed Hub
0059 HighSpeed Hub
005a HighSpeed Hub
@ -1498,7 +1486,6 @@
4095 Live! Cam Sync HD [VF0770]
4097 Live! Cam Chat HD [VF0700/VF0790]
4099 Creative VF0800 [RealSense Camera SR300]
40a3 Live! Cam V3 2K [VF-0900]
4100 Nomad Jukebox 2
4101 Nomad Jukebox 3
4102 NOMAD MuVo^2
@ -1972,7 +1959,6 @@
010d 3500-4500 series
010f 6500 series
0142 X3650 (Printer, Scanner, Copier)
01bd S800 Series Scanner
01fa S310 series
020e RICOH Aficio SP 4410SF
4303 Xerox WorkCentre Pro 412
@ -1996,7 +1982,6 @@
9a10 34UC88-B
9a11 34UC88-B
9a39 27UP850 - WK.AEUDCSN - External Monitor 4K
9a57 UltraGear Monitor
9c01 LGE Sync
043f RadiSys Corp.
0440 Eizo Nanao Corp.
@ -2022,7 +2007,6 @@
044d Siemens Nixdorf AG
044e Alps Electric Co., Ltd
1104 Japanese Keyboard
1218 Electric Touchpad
2002 MD-5500 Printer
2014 Bluetooth Device
3001 UGTZ4 Bluetooth
@ -2753,8 +2737,6 @@
0180 Strait 3.0
01a4 MC 2.1 Mouse
01a6 MX BOARD 2.0S FL RGB DE Keyboard
0201 Smart Board 1150
0202 Smart Terminal 1150
b090 Keyboard
b091 Mouse
c099 Stream Keyboard TKL
@ -2869,7 +2851,6 @@
08dd QuickCam for Notebooks
08e0 QuickCam Express
08e1 Labtec Webcam
08e4 C505e HD Webcam
08e5 C920 PRO HD Webcam
08f0 QuickCam Messenger
08f1 QuickCam Express
@ -3021,7 +3002,6 @@
c08e G MX518 Gaming Mouse (MU0053)
c092 G102/G203 LIGHTSYNC Gaming Mouse
c093 M500s Optical Mouse
c09d G102 LIGHTSYNC Gaming Mouse
c101 UltraX Media Remote
c110 Harmony 785/880/885 Remote
c111 Harmony 525 Remote
@ -3080,7 +3060,6 @@
c24d G710 Gaming Keyboard
c24e G500s Laser Gaming Mouse
c24f G29 Driving Force Racing Wheel [PS3]
c251 GamePanel for Dell XPS M1730
c260 G29 Driving Force Racing Wheel [PS4]
c262 G920 Driving Force Racing Wheel
c281 WingMan Force
@ -3094,7 +3073,6 @@
c295 Momo Force Steering Wheel
c298 Driving Force Pro
c299 G25 Racing Wheel
c29a Driving Force GT
c29b G27 Racing Wheel
c29c Speed Force Wireless Wheel for Wii
c2a0 Wingman Force Feedback Mouse
@ -3132,7 +3110,6 @@
c335 G910 Orion Spectrum Mechanical Keyboard
c336 G213 Prodigy Gaming Keyboard
c33a G413 Gaming Keyboard
c33e G915 Mechanical Keyboard
c33f G815 Mechanical Keyboard
c401 TrackMan Marble Wheel
c402 Marble Mouse (2-button)
@ -3382,7 +3359,6 @@
047c Dell Computer Corp.
ffff UPS Tower 500W LV
047d Kensington
00f2 VeriMark Desktop
1001 Mouse*in*a*Box
1002 Expert Mouse Pro
1003 Orbit TrackBall
@ -3582,7 +3558,6 @@
0485 Nokia Monitors
0486 ASUS Computers, Inc.
0185 EeePC T91MT HID Touch Panel
573c Xreal Light Microcontroller
0487 Stewart Connector
0488 Cirque Corp.
0489 Foxconn / Hon Hai
@ -3688,7 +3663,6 @@
1033 DGX-505
1037 PSR-E403
103c MOTIF-RACK ES
1045 MM6
1054 S90XS Keyboard/Music Synthesizer
160f P-105
1613 Clavinova CLP535
@ -3918,11 +3892,9 @@
106d S750 Printer
106e S820D
1070 S530D
1071 Sony MPR-501
1072 I850 Printer
1073 I550 Printer
1074 S330 Printer
1075 Sony MPR-505
1076 i70
1077 i950
107a S830D
@ -4081,7 +4053,6 @@
178a PIXMA MG3600 Series
178d PIXMA MG6853
180b PIXMA MG3000 series
183b PIXMA MG3110 Series
1856 PIXMA TS6250
1900 CanoScan LiDE 90
1901 CanoScan 8800F
@ -4089,7 +4060,6 @@
1905 CanoScan LiDE 200
1906 CanoScan 5600F
1907 CanoScan LiDE 700F
1908 CanoScan 9000F
1909 CanoScan LiDE 110
190a CanoScan LiDE 210
190d CanoScan 9000F Mark II
@ -4651,7 +4621,6 @@
0434 D610
0436 D810
043f D5600
0455 Z50II
0f03 PD-10 Wireless Printer Adapter
4000 Coolscan LS 40 ED
4001 LS 50 ED/Coolscan V ED
@ -4938,19 +4907,11 @@
0891 Stylus Office BX535WD
0892 Stylus Office BX935FWD
0893 EP-774A
08d1 L220/L360 Series
0e03 Thermal Receipt Printer [TM-T20]
0e31 Thermal Receipt Printer [TM-L100]
1114 XP-440 [Expression Home Small-in-One Printer]
1115 ES-0133 [Expression Home XP-342]
1129 ET-4750 [WorkForce ET-4750 EcoTank All-in-One]
1168 Workforce WF-7820/7840 Series
1186 ET-2820 Series [ET-2820 EcoTank All-in-One]
118a ET-2810/L3250 Series [EcoTank ET-2810/L3250]
118b ET-2850/L4260 Series [EcoTank ET-2850/L4260]
11b0 XP-4200 Series [Expression Home XP-4200]
11b9 ET-2830/L3550 Series [EcoTank ET-2830/L3550]
11c8 ET-2860/L3270 Series [EcoTank ET-2860/L3270]
04b9 Rainbow Technologies, Inc.
0300 SafeNet USB SuperPro/UltraPro
1000 iKey 1000 Token
@ -5035,9 +4996,6 @@
1303 i3 Micro Module
1304 i3 Module
1305 i3 Multi Sensing Module
1400 Javelin Module Recovery
1401 Javelin Module
1500 Gas sensor demo board
04c1 U.S. Robotics (3Com)
0020 56K Voice Pro
0022 56K Voice Pro
@ -5076,9 +5034,7 @@
11f3 fi-6130Z
125a PalmSecure Sensor Device - MP
132e fi-7160
1526 PalmSecure-F Pro
159f ScanSnap iX1500
15ff Fi-8170 Document Scanner [Ricoh fi-8170: High Performance Desktop Scanner - PFU]
200f Sigma DP2 (Mass Storage)
2010 Sigma DP2 (PictBridge)
201d SATA 3.0 6Gbit/s Adaptor [GROOVY]
@ -5111,7 +5067,6 @@
300f Atheros AR3012 Bluetooth
3014 Qualcomm Atheros Bluetooth
3015 Qualcomm Atheros QCA9377 Bluetooth
3802 MediaTek Bluetooth MT7921
7022 HP HD Webcam
7025 HP HD Webcam
7046 TOSHIBA Web Camera - HD
@ -15378,12 +15333,6 @@
0e23 Liou Yuane Enterprise Co., Ltd
0e25 VinChip Systems, Inc.
0e26 J-Phone East Co., Ltd
0e2c Materialise Motion NV
0012 footscan pressure plate (0.5m)
0013 footscan pressure plate (1.0m)
0018 footscan 2D interface box
0020 footscan pressure plate (1.5m)
002d footscan heavy duty pressure plate (1.0m)
0e2e Brady Worldwide, Inc.
000b BMP 51
000c BMP 61

View File

@ -1,6 +1,5 @@
#!/bin/sh
# SPDX-License-Identifier: LGPL-2.1-or-later
set -e
if [ -z "$1" ]; then
@ -9,21 +8,21 @@ if [ -z "$1" ]; then
fi
# make sure the rules have been regenerated (in case update-man-rules was just run)
ninja -C @BUILD_ROOT@ version.h
ninja -C "@BUILD_ROOT@" version.h
target="man/$1.html"
ninja -C @BUILD_ROOT@ "$target"
ninja -C "@BUILD_ROOT@" "$target"
fullname=@BUILD_ROOT@/"$target"
fullname="@BUILD_ROOT@/$target"
if [ -f "$fullname" ]; then
redirect="$(readlink "$fullname" || :)"
else
redirect=""
fi
if [ -n "$redirect" ]; then
ninja -C @BUILD_ROOT@ "man/$redirect"
ninja -C "@BUILD_ROOT@" "man/$redirect"
fullname=@BUILD_ROOT@"/man/$redirect"
fullname="@BUILD_ROOT@/man/$redirect"
fi
set -x

View File

@ -21,50 +21,47 @@
</refnamediv>
<refsynopsisdiv>
<para><filename><replaceable>ESP</replaceable>/loader/loader.conf</filename></para>
<para><filename><replaceable>ESP</replaceable>/loader/loader.conf</filename>,
<filename><replaceable>ESP</replaceable>/loader/entries/*.conf</filename>
<filename><replaceable>XBOOTLDR</replaceable>/loader/entries/*.conf</filename>
</para>
</refsynopsisdiv>
<refsect1>
<title>Description</title>
<para>
<citerefentry><refentrytitle>systemd-boot</refentrytitle><manvolnum>7</manvolnum></citerefentry> reads
<filename><replaceable>ESP</replaceable>/loader/loader.conf</filename>. This file configures whether the
menu is shown and for how long, the font, audible beep, types of menu entries to show, the default
choice, and some aspects of Secure Boot enrollment and firmware handling. See the list of available
options below.</para>
<para>The file uses UTF-8 encoding and consists of series of lines separated by "line feed" (i.e. ASCII
code 10). Lines that are empty or start with the comment sign (<literal>#</literal>) are ignored. Other
lines consist of an option name, followed by whitespace, and the option value.
<citerefentry><refentrytitle>systemd-boot</refentrytitle><manvolnum>7</manvolnum></citerefentry> will
read <filename><replaceable>ESP</replaceable>/loader/loader.conf</filename>, and any files with the
<literal>.conf</literal> extension under
<filename><replaceable>ESP</replaceable>/loader/entries/</filename> on the EFI system partition (ESP),
and <filename><replaceable>XBOOTLDR</replaceable>/loader/entries/</filename> on the extended boot loader
partition (XBOOTLDR) as defined by <ulink url="https://uapi-group.org/specifications/specs/boot_loader_specification">Boot Loader
Specification</ulink>.
</para>
<para>Each of these configuration files must consist of series of newline (i.e. ASCII code 10) separated
lines, each consisting of an option name, followed by whitespace, and the option
value. <literal>#</literal> may be used to start a comment line. Empty and comment lines are ignored. The
files use UTF-8 encoding.</para>
<para>Boolean arguments may be written as
<literal>yes</literal>/<literal>y</literal>/<literal>true</literal>/<literal>t</literal>/<literal>on</literal>/<literal>1</literal>
or
<literal>yes</literal>/<literal>y</literal>/<literal>true</literal>/<literal>t</literal>/<literal>on</literal>/<literal>1</literal> or
<literal>no</literal>/<literal>n</literal>/<literal>false</literal>/<literal>f</literal>/<literal>off</literal>/<literal>0</literal>.
</para>
<para>Note: <command>systemd-boot</command> will also read boot loader entry files,
type #1 (<filename><replaceable>ESP</replaceable>/loader/entries/*.conf</filename> and
<filename><replaceable>XBOOTLDR</replaceable>/loader/entries/*.conf</filename>)
and type #2 (<filename><replaceable>ESP</replaceable>/EFI/Linux/*.uki</filename>
and <filename><replaceable>XBOOTLDR</replaceable>/EFI/Linux/*.uki</filename>).
Those files are described by the
<ulink url="https://uapi-group.org/specifications/specs/boot_loader_specification">Boot Loader
Specification</ulink>.</para>
<para>Note: the behaviour of <command>systemd-boot</command> is also influenced by EFI variables. Some of
the settings specified in this file can be overridden by those, for example the default boot menu entry
or the menu timeouts. See
<citerefentry><refentrytitle>systemd-boot</refentrytitle><manvolnum>7</manvolnum></citerefentry> for
details.</para>
</refsect1>
<refsect1>
<title>Options</title>
<para>The following configuration are supported in <filename>loader.conf</filename>:</para>
<para>The configuration options supported by
<filename><replaceable>ESP</replaceable>/loader/entries/*.conf</filename> and
<filename><replaceable>XBOOTLDR</replaceable>/loader/entries/*.conf</filename> files are defined as part
of the <ulink url="https://uapi-group.org/specifications/specs/boot_loader_specification">Boot Loader
Specification</ulink>.</para>
<para>The following configuration are supported by the <filename>loader.conf</filename> configuration
file:</para>
<variablelist>
<varlistentry>
@ -257,9 +254,8 @@
<varlistentry>
<term>beep</term>
<listitem><para>Takes a boolean argument. If timeout enabled beep every second, otherwise beep n
times when n-th entry in boot menu is selected (default disabled). Currently, only x86 is supported,
where it uses the PC speaker.</para>
<listitem><para>Takes a boolean argument. If timeout enabled beep every second, otherwise beep n times when n-th entry in boot menu is selected (default disabled).
Currently, only x86 is supported, where it uses the PC speaker.</para>
<xi:include href="version-info.xml" xpointer="v251"/></listitem>
</varlistentry>
@ -383,8 +379,8 @@ sbvarsign --attr "${attr}" --key KEK.key --cert KEK.pem --output db.auth db db.e
<listitem><para>Caveat: This feature is experimental, and is likely to be changed (or removed in its
current form) in a future version of systemd.</para>
<para>Work around BitLocker requiring a recovery key when the boot loader was updated (disabled by
default).</para>
<para>Work around BitLocker requiring a recovery key when the boot loader was
updated (disabled by default).</para>
<para>Try to detect BitLocker encrypted drives along with an active TPM. If both are found and
Windows Boot Manager is selected in the boot menu, set the <literal>BootNext</literal> EFI variable

View File

@ -9,22 +9,22 @@ if [ -z "$1" ]; then
fi
# make sure the rules have been regenerated (in case update-man-rules was just run)
ninja -C @BUILD_ROOT@ version.h
ninja -C "@BUILD_ROOT@" version.h
page="$(echo "$1" | sed 's/\./\\./')"
target=$(ninja -C @BUILD_ROOT@ -t query man/man | grep -E -m1 "man/$page\.[0-9]$" | awk '{print $2}')
target=$(ninja -C "@BUILD_ROOT@" -t query man/man | grep -E -m1 "man/$page\.[0-9]$" | awk '{print $2}')
if [ -z "$target" ]; then
echo "Cannot find page $1"
exit 1
fi
ninja -C @BUILD_ROOT@ "$target"
ninja -C "@BUILD_ROOT@" "$target"
fullname=@BUILD_ROOT@/"$target"
fullname="@BUILD_ROOT@/$target"
redirect="$(sed -n -r '1 s|^\.so man[0-9]/(.*)|\1|p' "$fullname")"
if [ -n "$redirect" ]; then
ninja -C @BUILD_ROOT@ "man/$redirect"
ninja -C "@BUILD_ROOT@" "man/$redirect"
fullname=@BUILD_ROOT@"/man/$redirect"
fullname="@BUILD_ROOT@/man/$redirect"
fi
exec man "$fullname"

View File

@ -29,6 +29,7 @@ custom_html_xsl = files('custom-html.xsl')
xslt_cmd = [xsltproc, '-o', '@OUTPUT0@'] + xsltproc_flags
custom_entities_ent = custom_target(
'custom-entities.ent',
input : 'custom-entities.ent.in',
output : 'custom-entities.ent',
command : [jinja2_cmdline, '@INPUT@', '@OUTPUT@'])
@ -75,6 +76,7 @@ foreach tuple : manpages
if xsltproc.found()
p1 = custom_target(
man,
input : xml,
output : [man] + manaliases,
command : xslt_cmd + [custom_man_xsl, '@INPUT@'],
@ -86,6 +88,7 @@ foreach tuple : manpages
p2 = []
foreach htmlalias : htmlaliases
link = custom_target(
htmlalias,
output : htmlalias,
command : [ln, '-fs', html, '@OUTPUT@'])
if want_html
@ -96,6 +99,7 @@ foreach tuple : manpages
endforeach
p3 = custom_target(
html,
input : xml,
output : html,
command : xslt_cmd + [custom_html_xsl, '@INPUT@'],
@ -117,6 +121,7 @@ if not have_lxml
endif
systemd_directives_xml = custom_target(
'systemd.directives.xml',
input : ['directives-template.xml', source_xml_files],
output : 'systemd.directives.xml',
depends : man_page_depends,
@ -124,6 +129,7 @@ systemd_directives_xml = custom_target(
nonindex_xml_files = source_xml_files + [systemd_directives_xml]
systemd_index_xml = custom_target(
'systemd.index.xml',
input : nonindex_xml_files,
output : 'systemd.index.xml',
command : [make_man_index_py, '@OUTPUT@'] + nonindex_xml_files)
@ -140,6 +146,7 @@ foreach tuple : xsltproc.found() ? [['systemd.directives', '7', systemd_directiv
mandirn = get_option('mandir') / ('man' + section)
p1 = custom_target(
man,
input : xml,
output : man,
command : xslt_cmd + [custom_man_xsl, '@INPUT@'],
@ -151,6 +158,7 @@ foreach tuple : xsltproc.found() ? [['systemd.directives', '7', systemd_directiv
if html == 'systemd.index.html'
htmlalias = 'index.html'
link = custom_target(
htmlalias,
input : p2,
output : htmlalias,
command : [ln, '-fs', html, '@OUTPUT@'])
@ -162,6 +170,7 @@ foreach tuple : xsltproc.found() ? [['systemd.directives', '7', systemd_directiv
endif
p3 = custom_target(
html,
input : xml,
output : html,
command : xslt_cmd + [custom_html_xsl, '@INPUT@'],
@ -174,11 +183,13 @@ endforeach
# Cannot use run_target because those targets are used in depends
# Also see https://github.com/mesonbuild/meson/issues/368.
man = custom_target(
'man',
output : 'man',
depends : man_pages,
command : [echo])
html = custom_target(
'html',
output : 'html',
depends : html_pages,
command : [echo])

View File

@ -2552,9 +2552,9 @@ node /org/freedesktop/systemd1/unit/avahi_2ddaemon_2eservice {
<para><varname>SubState</varname> encodes states of the same state machine that
<varname>ActiveState</varname> covers, but knows more fine-grained states that are
unit-type-specific. Where <varname>ActiveState</varname> only covers eight high-level states,
unit-type-specific. Where <varname>ActiveState</varname> only covers six high-level states,
<varname>SubState</varname> covers possibly many more low-level unit-type-specific states that are
mapped to the eight high-level states. Note that multiple low-level states might map to the same
mapped to the six high-level states. Note that multiple low-level states might map to the same
high-level state, but not vice versa. Not all high-level states have low-level counterparts on all unit
types. At this point the low-level states are not documented here, and are more likely to be extended
later on than the common high-level states explained above.</para>

View File

@ -44,7 +44,7 @@
</funcprototype>
<funcprototype>
<funcdef>char *<function>sd_id128_to_uuid_string</function></funcdef>
<funcdef>char *<function>sd_id128_uuid_string</function></funcdef>
<paramdef>sd_id128_t <parameter>id</parameter>, char <parameter>s</parameter>[static SD_ID128_UUID_STRING_MAX]</paramdef>
</funcprototype>
@ -113,7 +113,7 @@
<title>History</title>
<para><function>sd_id128_to_string()</function> and
<function>sd_id128_from_string()</function> were added in version 187.</para>
<para><function>sd_id128_to_uuid_string()</function> was added in version 251.</para>
<para><function>sd_id128_uuid_string()</function> was added in version 251.</para>
</refsect1>
<refsect1>

View File

@ -149,8 +149,6 @@
<term><keycap>d</keycap></term>
<listitem><para>Make selected entry the default</para>
<para>An EFI variable is set to allow this setting to persist.</para>
<xi:include href="version-info.xml" xpointer="v239"/></listitem>
</varlistentry>
@ -166,8 +164,6 @@
<term><keycap>t</keycap></term>
<listitem><para>Increase the timeout before default entry is booted</para>
<para>An EFI variable is set to allow this setting to persist.</para>
<xi:include href="version-info.xml" xpointer="v239"/></listitem>
</varlistentry>
@ -176,8 +172,6 @@
<term><keycap>T</keycap></term>
<listitem><para>Decrease the timeout</para>
<para>An EFI variable is set to allow this setting to persist.</para>
<xi:include href="version-info.xml" xpointer="v239"/></listitem>
</varlistentry>
@ -185,8 +179,6 @@
<term><keycap>r</keycap></term>
<listitem><para>Change screen resolution, skipping any unsupported modes.</para>
<para>An EFI variable is set to allow this setting to persist.</para>
<xi:include href="version-info.xml" xpointer="v250"/></listitem>
</varlistentry>
@ -194,8 +186,6 @@
<term><keycap>R</keycap></term>
<listitem><para>Reset screen resolution to firmware or configuration file default.</para>
<para>An EFI variable is set to allow this setting to persist.</para>
<xi:include href="version-info.xml" xpointer="v250"/></listitem>
</varlistentry>
@ -290,15 +280,15 @@
</variablelist>
<para>The boot menu is shown when a non-zero menu timeout has been configured. If the menu timeout has
been set to zero, hold down a key (<keycap>space</keycap> is recommended) before the boot loader
initializes to bring up the boot menu. Note that depending on the firmware implementation the time window
where key presses are accepted before the boot loader initializes might be short. If the window is
missed, reboot and try again, possibly repeatedly pressing a suitable key; on most systems it should be
possible to hit the time window after a few attempts. Keys other than the space bar may be used, except
for the keys listed above. If showing the menu on demand doesn't work well, consider setting a non-zero
timeout to show the boot menu unconditionally. Some desktop environments might offer an option to boot
directly into the boot menu, which also avoids the problem altogether. Alternatively, use the command
line <command>systemctl reboot --boot-loader-menu=</command> with a non-zero value from the shell.</para>
been set to zero, it is sufficient to press any key — before the boot loader initializes — to bring up
the boot menu, except for the keys listed immediately above as they directly boot into the selected boot
menu item. Note that depending on the firmware implementation the time window where key presses are
accepted before the boot loader initializes might be short. If the window is missed, reboot and try
again, possibly pressing a suitable key (e.g. the space bar) continuously; on most systems it should be
possible to hit the time window after a few attempts. To avoid this problem, consider setting a non-zero
timeout, thus showing the boot menu unconditionally. Some desktop environments might offer an option to
directly boot into the boot menu, to avoid the problem altogether. Alternatively, use the command line
<command>systemctl reboot --boot-loader-menu=0</command> from the shell.</para>
<para>In the editor, most keys simply insert themselves, but the following keys
may be used to perform additional actions:</para>
@ -399,16 +389,16 @@
<refsect1>
<title>EFI Variables</title>
<para>The following EFI variables are defined, and may be set or read by <command>systemd-boot</command>
for communication between the boot loader and the OS. The vendor UUID
<literal>4a67b082-0a4c-41cf-b6c7-440b29bb8c4f</literal> is used in all cases.</para>
<para>The following EFI variables are defined, set and read by <command>systemd-boot</command>, under the
vendor UUID <literal>4a67b082-0a4c-41cf-b6c7-440b29bb8c4f</literal>, for communication between the boot
loader and the OS:</para>
<variablelist class='efi-variables'>
<varlistentry>
<term><varname>LoaderBootCountPath</varname></term>
<listitem><para>If boot counting is enabled, contains the path to the file in whose name the boot
counters are encoded. Set by the boot loader.
<citerefentry><refentrytitle>systemd-bless-boot.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>
<listitem><para>If boot counting is enabled, contains the path to the file in whose name the boot counters are
encoded. Set by the boot
loader. <citerefentry><refentrytitle>systemd-bless-boot.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>
uses this information to mark a boot as successful as determined by the successful activation of the
<filename>boot-complete.target</filename> target unit.</para>
@ -464,13 +454,13 @@
<term><varname>LoaderEntryDefault</varname></term>
<term><varname>LoaderEntryOneShot</varname></term>
<listitem><para>The identifier of the default boot loader entry. Can be set in the OS and the boot
<listitem><para>The identifier of the default boot loader entry. Set primarily by the OS and read by the boot
loader. <varname>LoaderEntryOneShot</varname> sets the default entry for the next boot only, while
<varname>LoaderEntryDefault</varname> sets it persistently for all future boots.
<citerefentry><refentrytitle>bootctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>'s
<option>set-default</option> and <option>set-oneshot</option> commands make use of these variables.
The boot loader modifies <varname>LoaderEntryDefault</varname> on request, when the
<keycap>d</keycap> key is used, see above.</para>
<varname>LoaderEntryDefault</varname> sets it persistently for all future
boots. <citerefentry><refentrytitle>bootctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>'s
<option>set-default</option> and <option>set-oneshot</option> commands make use of these variables. The boot
loader modifies <varname>LoaderEntryDefault</varname> on request, when the <keycap>d</keycap> key is used, see
above.</para>
<xi:include href="version-info.xml" xpointer="v240"/></listitem>
</varlistentry>

View File

@ -413,7 +413,7 @@
<term><varname>UnsetProperty=</varname></term>
<listitem>
<para>Unset specified udev properties. This takes space separated list of
property names. Example: <programlisting>UnsetProperty=HOGE BAR</programlisting>
property names. Example: <programlisting>ImportProperty=HOGE BAR</programlisting>
This option supports simple specifier expansion, see the Specifiers section below.
This option can be specified multiple times. If an empty string is assigned, then the all previous
assignments are cleared.</para>

View File

@ -357,17 +357,15 @@
<varlistentry>
<term><varname>PIDFile=</varname></term>
<listitem><para>Takes a path referring to the PID file of the service. Usage of this option is
recommended for services where <varname>Type=</varname> is set to <option>forking</option>. The path
specified typically points to a file below <filename>/run/</filename>. If a relative path is
specified for system service, then it is hence prefixed with <filename>/run/</filename>, and prefixed
with <filename>$XDG_RUNTIME_DIR</filename> if specified in a user service. The service manager will
read the PID of the main process of the service from this file after start-up of the service. The
service manager will not write to the file configured here, although it will remove the file after
the service has shut down if it still exists. The PID file does not need to be owned by a privileged
user, but if it is owned by an unprivileged user additional safety restrictions are enforced: the
file may not be a symlink to a file owned by a different user (neither directly nor indirectly), and
the PID file must refer to a process already belonging to the service.</para>
<listitem><para>Takes a path referring to the PID file of the service. Usage of this option is recommended for
services where <varname>Type=</varname> is set to <option>forking</option>. The path specified typically points
to a file below <filename>/run/</filename>. If a relative path is specified it is hence prefixed with
<filename>/run/</filename>. The service manager will read the PID of the main process of the service from this
file after start-up of the service. The service manager will not write to the file configured here, although it
will remove the file after the service has shut down if it still exists. The PID file does not need to be owned
by a privileged user, but if it is owned by an unprivileged user additional safety restrictions are enforced:
the file may not be a symlink to a file owned by a different user (neither directly nor indirectly), and the
PID file must refer to a process already belonging to the service.</para>
<para>Note that PID files should be avoided in modern projects. Use <option>Type=notify</option>,
<option>Type=notify-reload</option> or <option>Type=simple</option> where possible, which does not
@ -1688,7 +1686,7 @@ WantedBy=multi-user.target</programlisting>
just starts one process in the background:</para>
<programlisting>[Unit]
Description=My Simple Daemon
Description=Some simple daemon
[Service]
Type=forking
@ -1714,7 +1712,7 @@ WantedBy=multi-user.target</programlisting>
The following example shows a typical DBus service:</para>
<programlisting>[Unit]
Description=Simple DBus Service
Description=Simple DBus service
[Service]
Type=dbus
@ -1753,7 +1751,7 @@ SystemdService=simple-dbus-service.service</programlisting>
daemon would look like this:</para>
<programlisting>[Unit]
Description=Simple Notifying Service
Description=Simple notifying service
[Service]
Type=notify-reload

View File

@ -247,7 +247,7 @@ tomorrow Pacific/Auckland → Thu 2012-11-23 19:00:00
decimal places.</para>
<para>Either time or date specification may be omitted, in which
case 00:00:00 and *-*-* is implied, respectively. If the
case *-*-* and 00:00:00 is implied, respectively. If the
seconds component is not specified, <literal>:00</literal> is
assumed.</para>

View File

@ -1814,21 +1814,9 @@ if conf.get('BPF_FRAMEWORK') == 1
#
# C.f. https://mesonbuild.com/Reference-tables.html#cpu-families
# and src/basic/missing_syscall_def.h.
# Start with older ABI. When define is missing, we're likely targeting that.
ppc64_elf_version = '1'
if host_machine.cpu_family() == 'ppc64'
# cc doesn't have to be bpf_compiler, but they should be targeting the same ABI
call_elf_value = cc.get_define('_CALL_ELF')
if call_elf_value != ''
ppc64_elf_version = call_elf_value
endif
endif
cpu_arch_defines = {
'ppc' : ['-D__powerpc__', '-D__TARGET_ARCH_powerpc'],
'ppc64' : ['-D__powerpc64__', '-D__TARGET_ARCH_powerpc', '-D_CALL_ELF=' + ppc64_elf_version],
'ppc64' : ['-D__powerpc64__', '-D__TARGET_ARCH_powerpc', '-D_CALL_ELF=2'],
'riscv32' : ['-D__riscv', '-D__riscv_xlen=32', '-D__TARGET_ARCH_riscv'],
'riscv64' : ['-D__riscv', '-D__riscv_xlen=64', '-D__TARGET_ARCH_riscv'],
'x86' : ['-D__i386__', '-D__TARGET_ARCH_x86'],
@ -1875,22 +1863,12 @@ if conf.get('BPF_FRAMEWORK') == 1
target_triplet_cmd = run_command('gcc', '-print-multiarch', check: false)
endif
if target_triplet_cmd.returncode() == 0
sysroot = meson.get_external_property('sys_root', '/')
target_triplet = target_triplet_cmd.stdout().strip()
target_include_dir = sysroot / 'usr' / 'include'
target_triple_include_dir = target_include_dir / target_triplet
isystem_dir = ''
if fs.is_dir(target_triple_include_dir)
isystem_dir = target_triple_include_dir
elif fs.is_dir(target_include_dir)
isystem_dir = target_include_dir
endif
if isystem_dir != ''
bpf_o_unstripped_cmd += [
'-isystem', isystem_dir
'-isystem',
'/usr/include/@0@'.format(target_triplet)
]
endif
endif
bpf_o_unstripped_cmd += [
'-idirafter',
@ -2026,6 +2004,7 @@ if use_provided_vmlinux_h
message('Using provided @0@'.format(provided_vmlinux_h_path))
elif use_generated_vmlinux_h
vmlinux_h_dependency = custom_target(
'vmlinux.h',
output: 'vmlinux.h',
command : [ bpftool, 'btf', 'dump', 'file', '/sys/kernel/btf/vmlinux', 'format', 'c' ],
capture : true)
@ -2248,12 +2227,12 @@ endif
#####################################################################
runtest_env = custom_target(
'systemd-runtest.env',
output : 'systemd-runtest.env',
command : ['printf',
'SYSTEMD_TEST_DATA=%q\nSYSTEMD_CATALOG_DIR=%q\n',
command : [sh, '-c',
'{ echo SYSTEMD_TEST_DATA=@0@; echo SYSTEMD_CATALOG_DIR=@1@; } >@OUTPUT@'.format(
meson.project_source_root() / 'test',
meson.project_build_root() / 'catalog'],
capture: true,
meson.project_build_root() / 'catalog')],
depends : catalogs,
build_by_default : true)
@ -2718,6 +2697,7 @@ foreach executable : ['systemd-measure', 'systemd-sbsign', 'systemd-keyutil']
endforeach
ukify = custom_target(
'ukify',
input : 'src/ukify/ukify.py',
output : 'ukify',
command : [jinja2_cmdline, '@INPUT@', '@OUTPUT@'],
@ -2868,6 +2848,7 @@ if git.found()
all_files = files(all_files.stdout().split())
custom_target(
'tags',
output : 'tags',
command : [env, 'etags', '-o', '@0@/TAGS'.format(meson.project_source_root())] + all_files)
run_target(
@ -2933,7 +2914,7 @@ if not meson.is_cross_build()
endif
meson_extract_unit_files = find_program('tools/meson-extract-unit-files.py')
custom_target(
custom_target('installed-unit-files.txt',
output : 'installed-unit-files.txt',
capture : true,
install : want_tests != 'no' and install_tests,

View File

@ -1,7 +1,7 @@
# SPDX-License-Identifier: LGPL-2.1-or-later
[Config]
MinimumVersion=commit:655baf24474a6f0732ec1b82a71c2f6fe4eeeb49
MinimumVersion=commit:5e739ef1ed02a4f3b6ae64e50a8ee186cbcb21c2
Dependencies=
exitrd
initrd
@ -38,8 +38,6 @@ Incremental=yes
[Validation]
SignExpectedPcr=yes
SecureBoot=yes
SecureBootAutoEnroll=yes
[Content]
ExtraTrees=

View File

@ -1,5 +1,8 @@
# SPDX-License-Identifier: LGPL-2.1-or-later
[Match]
Distribution=arch
[Build]
Environment=
GIT_URL=https://gitlab.archlinux.org/archlinux/packaging/packages/systemd.git

View File

@ -8,6 +8,7 @@ Distribution=|fedora
PrepareScripts=systemd.prepare
VolatilePackages=
systemd
systemd-boot
systemd-container
systemd-devel
systemd-journal-remote
@ -27,8 +28,6 @@ Packages=
cryptsetup
device-mapper-event
device-mapper-multipath
dfuzzer
erofs-utils
git-core
glibc-langpack-de
glibc-langpack-en
@ -40,7 +39,6 @@ Packages=
iputils
iscsi-initiator-utils
kernel-core
knot
libcap-ng-utils
man-db
nmap-ncat
@ -53,9 +51,6 @@ Packages=
polkit
procps-ng
python3-pexpect
# needed to upgrade and downgrade systemd-ukify in tests
python3-zstd
qrencode
quota
rpm
softhsm

View File

@ -1,11 +0,0 @@
# SPDX-License-Identifier: LGPL-2.1-or-later
[Match]
Architecture=uefi
[Content]
Packages=
sbsigntools
VolatilePackages=
systemd-boot

View File

@ -1,5 +1,9 @@
# SPDX-License-Identifier: LGPL-2.1-or-later
[Match]
Distribution=|centos
Distribution=|fedora
[Build]
Environment=
GIT_URL=https://src.fedoraproject.org/rpms/systemd.git

View File

@ -5,7 +5,6 @@ Distribution=centos
[Distribution]
Release=10
Repositories=epel
[Build]
Environment=

View File

@ -0,0 +1,9 @@
# SPDX-License-Identifier: LGPL-2.1-or-later
[Match]
Release=9
[Distribution]
Repositories=
epel
epel-next

View File

@ -0,0 +1,13 @@
# SPDX-License-Identifier: LGPL-2.1-or-later
[Match]
Repositories=epel
[Content]
Packages=
dfuzzer
dhcp-server
erofs-utils
knot
qrencode
sbsigntools

View File

@ -13,6 +13,7 @@ VolatilePackages=
libsystemd-shared-dbgsym
libsystemd0-dbgsym
libudev1-dbgsym
systemd-boot-dbgsym
systemd-container-dbgsym
systemd-coredump-dbgsym
systemd-cryptsetup-dbgsym

View File

@ -1,11 +0,0 @@
# SPDX-License-Identifier: LGPL-2.1-or-later
[Match]
Environment=WITH_DEBUG=1
[Match]
Architecture=uefi
[Content]
VolatilePackages=
systemd-boot-dbgsym

View File

@ -2,7 +2,13 @@
# sbsigntool exists only on UEFI architectures
[Match]
Architecture=uefi
Architecture=|x86
Architecture=|x86-64
Architecture=|arm
Architecture=|arm64
Architecture=|riscv32
Architecture=|riscv64
Architecture=|loongarch64
[Content]
Packages=

View File

@ -1,5 +1,9 @@
# SPDX-License-Identifier: LGPL-2.1-or-later
[Match]
Distribution=|debian
Distribution=|ubuntu
[Build]
Environment=
GIT_URL=https://salsa.debian.org/systemd-team/systemd.git

View File

@ -10,11 +10,16 @@ Release=rawhide
Packages=
btrfs-progs
compsize
dfuzzer
dhcp-server
dnf5
erofs-utils
f2fs-tools
# Required for systemd-networkd-tests.py (netdevsim and sch_xxx modules)
kernel-modules-extra
kernel-modules-internal
knot
qrencode
rpmautospec
sbsigntools
scsi-target-utils

View File

@ -16,6 +16,7 @@ VolatilePackages=
libsystemd0
libudev1
systemd
systemd-boot
systemd-container
systemd-devel
systemd-doc
@ -68,6 +69,7 @@ Packages=
qrencode
quota
rsync
sbsigntools
sed
shadow
softhsm

View File

@ -7,6 +7,7 @@ Environment=WITH_DEBUG=1
VolatilePackages=
libsystemd0-debuginfo
libudev1-debuginfo
systemd-boot-debuginfo
systemd-container-debuginfo
systemd-debuginfo
systemd-debugsource

View File

@ -1,11 +0,0 @@
# SPDX-License-Identifier: LGPL-2.1-or-later
[Match]
Environment=WITH_DEBUG=1
[Match]
Architecture=uefi
[Content]
VolatilePackages=
systemd-boot-debuginfo

View File

@ -1,11 +0,0 @@
# SPDX-License-Identifier: LGPL-2.1-or-later
[Match]
Architecture=uefi
[Content]
VolatilePackages=
systemd-boot
Packages=
sbsigntools

View File

@ -1,5 +1,8 @@
# SPDX-License-Identifier: LGPL-2.1-or-later
[Match]
Distribution=opensuse
[Build]
Environment=
GIT_URL=https://github.com/bmwiedemann/openSUSE

View File

@ -29,8 +29,8 @@ disable dnf-makecache.*
# We have journald to receive audit data so let's make sure we're not running auditd as well
disable auditd.service
# systemd-timesyncd causes quite a bit of debug log noise so let's disable it by default.
disable systemd-timesyncd.service
# systemd-timesyncd is not enabled by default in the default systemd preset so enable it here instead.
enable systemd-timesyncd.service
# Enabled by default on OpenSUSE and not conditioned out in containers, so let's disable these here instead.
disable iscsi.service

View File

@ -3,13 +3,3 @@
set -e
touch -r "$BUILDROOT/usr" "$BUILDROOT/etc/.updated" "$BUILDROOT/var/.updated"
if [ -n "$EFI_ARCHITECTURE" ]; then
mkdir -p "$BUILDROOT/boot/loader/addons"
ukify build \
--stub "$BUILDROOT/usr/lib/systemd/boot/efi/addon${EFI_ARCHITECTURE}.efi.stub" \
--cmdline="addonfoobar" \
--output "$BUILDROOT/boot/loader/addons/test.addon.efi" \
--secureboot-certificate "$SRCDIR/mkosi/mkosi.crt" \
--secureboot-private-key "$SRCDIR/mkosi/mkosi.key"
fi

View File

@ -2,7 +2,8 @@
[Match]
Repositories=epel
Release=9
[Content]
Packages=rpmautospec-rpm-macros
Packages=
erofs-utils
rpmautospec-rpm-macros

View File

@ -1,11 +0,0 @@
# SPDX-License-Identifier: LGPL-2.1-or-later
[TriggerMatch]
Repositories=epel
Release=9
[TriggerMatch]
Release=10
[Content]
Packages=erofs-utils

View File

@ -13,5 +13,5 @@ Packages=
clangd
erofs-utils
git-core
?exact-name(libclang-rt-dev)
libclang-rt-dev
dpkg-dev

View File

@ -1,11 +1,6 @@
target-version = "py37"
target-version = "py39"
line-length = 109
lint.select = ["E", "F", "I", "UP"]
[format]
quote-style = "single"
[per-file-target-version]
"src/ukify/*.py" = "py39"
"test/**/integration-test-wrapper.py" = "py39"
"test/test-udev.py" = "py39"

View File

@ -70,6 +70,7 @@ foreach tuple : rules_in
want = tuple.length() == 1 or tuple[1]
rule = custom_target(
tuple[0],
input : tuple[0] + '.in',
output: tuple[0],
command : [jinja2_cmdline, '@INPUT@', '@OUTPUT@'],

View File

@ -11,6 +11,7 @@ if bashcompletiondir == ''
endif
custom_target(
'systemctl',
input : 'systemctl.in',
output : 'systemctl',
command : [jinja2_cmdline, '@INPUT@', '@OUTPUT@'],

View File

@ -6,6 +6,7 @@ if zshcompletiondir == ''
endif
custom_target(
'_systemctl',
input : '_systemctl.in',
output : '_systemctl',
command : [jinja2_cmdline, '@INPUT@', '@OUTPUT@'],

View File

@ -99,9 +99,6 @@ int cg_read_pid(FILE *f, pid_t *ret, CGroupFlags flags) {
assert(f);
assert(ret);
/* NB: The kernel returns ENODEV if we tried to read from cgroup.procs of a cgroup that has been
* removed already. Callers should handle that! */
for (;;) {
errno = 0;
if (fscanf(f, "%lu", &ul) != 1) {
@ -337,13 +334,6 @@ static int cg_kill_items(
_cleanup_(pidref_done) PidRef pidref = PIDREF_NULL;
r = cg_read_pidref(f, &pidref, flags);
if (r == -ENODEV) {
/* reading from cgroup.pids will result in ENODEV if the cgroup is
* concurrently removed. Just leave in that case, because a removed cgroup
* contains no processes anymore. */
done = true;
break;
}
if (r < 0)
return RET_GATHER(ret, log_debug_errno(r, "Failed to read pidref from cgroup '%s': %m", path));
if (r == 0)

View File

@ -348,14 +348,15 @@ int decompress_blob_xz(
size_t used;
ret = sym_lzma_code(&s, LZMA_FINISH);
if (ret == LZMA_STREAM_END)
break;
if (ret != LZMA_OK)
else if (ret != LZMA_OK)
return -ENOMEM;
if (dst_max > 0 && (space - s.avail_out) >= dst_max)
break;
if (dst_max > 0 && space == dst_max)
else if (dst_max > 0 && space == dst_max)
return -ENOBUFS;
used = space - s.avail_out;
@ -482,22 +483,20 @@ int decompress_blob(
size_t* dst_size,
size_t dst_max) {
switch (compression) {
case COMPRESSION_XZ:
if (compression == COMPRESSION_XZ)
return decompress_blob_xz(
src, src_size,
dst, dst_size, dst_max);
case COMPRESSION_LZ4:
else if (compression == COMPRESSION_LZ4)
return decompress_blob_lz4(
src, src_size,
dst, dst_size, dst_max);
case COMPRESSION_ZSTD:
else if (compression == COMPRESSION_ZSTD)
return decompress_blob_zstd(
src, src_size,
dst, dst_size, dst_max);
default:
else
return -EPROTONOSUPPORT;
}
}
int decompress_startswith_xz(
@ -708,30 +707,27 @@ int decompress_startswith(
size_t prefix_len,
uint8_t extra) {
switch (compression) {
case COMPRESSION_XZ:
if (compression == COMPRESSION_XZ)
return decompress_startswith_xz(
src, src_size,
buffer,
prefix, prefix_len,
extra);
case COMPRESSION_LZ4:
else if (compression == COMPRESSION_LZ4)
return decompress_startswith_lz4(
src, src_size,
buffer,
prefix, prefix_len,
extra);
case COMPRESSION_ZSTD:
else if (compression == COMPRESSION_ZSTD)
return decompress_startswith_zstd(
src, src_size,
buffer,
prefix, prefix_len,
extra);
default:
else
return -EBADMSG;
}
}
int compress_stream_xz(int fdf, int fdt, uint64_t max_bytes, uint64_t *ret_uncompressed_size) {
@ -1295,10 +1291,10 @@ int decompress_stream(const char *filename, int fdf, int fdt, uint64_t max_bytes
if (endswith(filename, ".lz4"))
return decompress_stream_lz4(fdf, fdt, max_bytes);
if (endswith(filename, ".xz"))
else if (endswith(filename, ".xz"))
return decompress_stream_xz(fdf, fdt, max_bytes);
if (endswith(filename, ".zst"))
else if (endswith(filename, ".zst"))
return decompress_stream_zstd(fdf, fdt, max_bytes);
else
return -EPROTONOSUPPORT;
}

View File

@ -121,24 +121,28 @@ basic_sources += missing_syscall_def_h
generate_af_list = find_program('generate-af-list.sh')
af_list_txt = custom_target(
'af-list.txt',
output : 'af-list.txt',
command : [generate_af_list, cpp, config_h, missing_socket_h],
capture : true)
generate_arphrd_list = find_program('generate-arphrd-list.sh')
arphrd_list_txt = custom_target(
'arphrd-list.txt',
output : 'arphrd-list.txt',
command : [generate_arphrd_list, cpp, files('linux/if_arp.h'), config_h],
capture : true)
generate_cap_list = find_program('generate-cap-list.sh')
cap_list_txt = custom_target(
'cap-list.txt',
output : 'cap-list.txt',
command : [generate_cap_list, cpp, config_h, missing_capability_h],
capture : true)
generate_errno_list = find_program('generate-errno-list.sh')
errno_list_txt = custom_target(
'errno-list.txt',
output : 'errno-list.txt',
command : [generate_errno_list, cpp],
capture : true)
@ -151,6 +155,7 @@ foreach item : [['af', af_list_txt, 'af', ''],
fname = '@0@-from-name.gperf'.format(item[0])
gperf_file = custom_target(
fname,
input : item[1],
output : fname,
command : [generate_gperfs, item[2], item[3], '@INPUT@'],
@ -158,6 +163,7 @@ foreach item : [['af', af_list_txt, 'af', ''],
fname = '@0@-from-name.h'.format(item[0])
target1 = custom_target(
fname,
input : gperf_file,
output : fname,
command : [gperf,
@ -171,6 +177,7 @@ foreach item : [['af', af_list_txt, 'af', ''],
fname = '@0@-to-name.h'.format(item[0])
awkscript = '@0@-to-name.awk'.format(item[0])
target2 = custom_target(
fname,
input : [awkscript, item[1]],
output : fname,
command : [awk, '-f', '@INPUT0@', '@INPUT1@'],
@ -239,6 +246,7 @@ if r.returncode() != 0
endif
filesystems_gperf_h = custom_target(
'filesystems-gperf.h',
input : 'filesystems-gperf.gperf',
output : 'filesystems-gperf.h',
command : [gperf, '@INPUT@', '--output-file', '@OUTPUT@'])
@ -246,6 +254,7 @@ filesystems_gperf_h = custom_target(
generate_filesystem_list = find_program('generate-filesystem-list.py')
fname = 'filesystem-list.h'
filesystem_list_h = custom_target(
fname,
input : 'filesystems-gperf.gperf',
output : fname,
command : [generate_filesystem_list,
@ -255,6 +264,7 @@ filesystem_list_h = custom_target(
generate_filesystem_switch_case_h = find_program('generate-filesystem-switch-case.py')
fname = 'filesystem-switch-case.h'
filesystem_switch_case_h = custom_target(
fname,
input : 'filesystems-gperf.gperf',
output : 'filesystem-switch-case.h',
command : [generate_filesystem_switch_case_h,

View File

@ -321,14 +321,27 @@ static inline int getsockopt_int(int fd, int level, int optname, int *ret) {
int socket_bind_to_ifname(int fd, const char *ifname);
int socket_bind_to_ifindex(int fd, int ifindex);
/* Define a 64-bit version of timeval/timespec in any case, even on 32-bit userspace. */
struct timeval_large {
uint64_t tvl_sec, tvl_usec;
};
struct timespec_large {
uint64_t tvl_sec, tvl_nsec;
};
/* glibc duplicates timespec/timeval on certain 32-bit arches, once in 32-bit and once in 64-bit.
* See __convert_scm_timestamps() in glibc source code. Hence, we need additional buffer space for them
* to prevent truncating control msg (recvmsg() MSG_CTRUNC). */
#define CMSG_SPACE_TIMEVAL \
(CMSG_SPACE(sizeof(struct timeval)) + CMSG_SPACE(2 * sizeof(uint64_t)))
((sizeof(struct timeval) == sizeof(struct timeval_large)) ? \
CMSG_SPACE(sizeof(struct timeval)) : \
CMSG_SPACE(sizeof(struct timeval)) + \
CMSG_SPACE(sizeof(struct timeval_large)))
#define CMSG_SPACE_TIMESPEC \
(CMSG_SPACE(sizeof(struct timespec)) + CMSG_SPACE(2 * sizeof(uint64_t)))
((sizeof(struct timespec) == sizeof(struct timespec_large)) ? \
CMSG_SPACE(sizeof(struct timespec)) : \
CMSG_SPACE(sizeof(struct timespec)) + \
CMSG_SPACE(sizeof(struct timespec_large)))
ssize_t recvmsg_safe(int sockfd, struct msghdr *msg, int flags);

View File

@ -122,18 +122,18 @@ int read_one_char(FILE *f, char *ret, usec_t t, bool *need_nl) {
new_termios.c_cc[VMIN] = 1;
new_termios.c_cc[VTIME] = 0;
if (tcsetattr(fd, TCSANOW, &new_termios) >= 0) {
if (tcsetattr(fd, TCSADRAIN, &new_termios) >= 0) {
char c;
if (t != USEC_INFINITY) {
if (fd_wait_for_event(fd, POLLIN, t) <= 0) {
(void) tcsetattr(fd, TCSANOW, &old_termios);
(void) tcsetattr(fd, TCSADRAIN, &old_termios);
return -ETIMEDOUT;
}
}
r = safe_fgetc(f, &c);
(void) tcsetattr(fd, TCSANOW, &old_termios);
(void) tcsetattr(fd, TCSADRAIN, &old_termios);
if (r < 0)
return r;
if (r == 0)
@ -1915,7 +1915,7 @@ int get_default_background_color(double *ret_red, double *ret_green, double *ret
struct termios new_termios = old_termios;
termios_disable_echo(&new_termios);
if (tcsetattr(STDIN_FILENO, TCSANOW, &new_termios) < 0)
if (tcsetattr(STDIN_FILENO, TCSADRAIN, &new_termios) < 0)
return -errno;
r = loop_write(STDOUT_FILENO, ANSI_OSC "11;?" ANSI_ST, SIZE_MAX);
@ -1979,7 +1979,7 @@ int get_default_background_color(double *ret_red, double *ret_green, double *ret
}
finish:
RET_GATHER(r, RET_NERRNO(tcsetattr(STDIN_FILENO, TCSANOW, &old_termios)));
RET_GATHER(r, RET_NERRNO(tcsetattr(STDIN_FILENO, TCSADRAIN, &old_termios)));
return r;
}
@ -2106,7 +2106,7 @@ int terminal_get_size_by_dsr(
struct termios new_termios = old_termios;
termios_disable_echo(&new_termios);
if (tcsetattr(input_fd, TCSANOW, &new_termios) < 0)
if (tcsetattr(input_fd, TCSADRAIN, &new_termios) < 0)
return log_debug_errno(errno, "Failed to set new terminal settings: %m");
unsigned saved_row = 0, saved_column = 0;
@ -2209,7 +2209,7 @@ finish:
if (saved_row > 0 && saved_column > 0)
RET_GATHER(r, terminal_set_cursor_position(output_fd, saved_row, saved_column));
RET_GATHER(r, RET_NERRNO(tcsetattr(input_fd, TCSANOW, &old_termios)));
RET_GATHER(r, RET_NERRNO(tcsetattr(input_fd, TCSADRAIN, &old_termios)));
return r;
}

View File

@ -250,7 +250,7 @@ static int detect_vm_smbios(void) {
#endif /* defined(__i386__) || defined(__x86_64__) || defined(__arm__) || defined(__aarch64__) || defined(__loongarch_lp64) */
static Virtualization detect_vm_dmi(void) {
#if defined(__i386__) || defined(__x86_64__) || defined(__arm__) || defined(__aarch64__) || defined(__loongarch_lp64) || defined(__riscv)
#if defined(__i386__) || defined(__x86_64__) || defined(__arm__) || defined(__aarch64__) || defined(__loongarch_lp64)
int r;
r = detect_vm_dmi_vendor();
@ -471,7 +471,8 @@ Virtualization detect_vm(void) {
VIRTUALIZATION_ORACLE,
VIRTUALIZATION_XEN,
VIRTUALIZATION_AMAZON,
VIRTUALIZATION_PARALLELS)) {
VIRTUALIZATION_PARALLELS,
VIRTUALIZATION_GOOGLE)) {
v = dmi;
goto finish;
}
@ -510,10 +511,6 @@ Virtualization detect_vm(void) {
hyperv = true;
else if (v == VIRTUALIZATION_VM_OTHER)
other = true;
else if (v == VIRTUALIZATION_KVM && dmi == VIRTUALIZATION_GOOGLE)
/* The DMI vendor tables in /sys/class/dmi/id don't help us distinguish between GCE
* virtual machines and bare-metal instances, so we need to look at hypervisor. */
return VIRTUALIZATION_GOOGLE;
else if (v != VIRTUALIZATION_NONE)
goto finish;
@ -526,9 +523,7 @@ Virtualization detect_vm(void) {
return dmi;
if (dmi == VIRTUALIZATION_VM_OTHER)
other = true;
else if (!IN_SET(dmi, VIRTUALIZATION_NONE, VIRTUALIZATION_GOOGLE)) {
/* At this point if GCE has been detected in dmi, do not report as a VM. It should
* be a bare-metal machine */
else if (dmi != VIRTUALIZATION_NONE) {
v = dmi;
goto finish;
}

View File

@ -1612,7 +1612,7 @@ static void config_load_defaults(Config *config, EFI_FILE *root_dir) {
if (err == EFI_SUCCESS)
config->timeout_sec = config->timeout_sec_efivar;
else if (err != EFI_NOT_FOUND)
log_warning_status(err, "Error reading LoaderConfigTimeout EFI variable, ignoring: %m");
log_error_status(err, "Error reading LoaderConfigTimeout EFI variable: %m");
err = efivar_get_timeout(u"LoaderConfigTimeoutOneShot", &config->timeout_sec);
if (err == EFI_SUCCESS) {
@ -1621,7 +1621,7 @@ static void config_load_defaults(Config *config, EFI_FILE *root_dir) {
config->force_menu = true; /* force the menu when this is set */
} else if (err != EFI_NOT_FOUND)
log_warning_status(err, "Error reading LoaderConfigTimeoutOneShot EFI variable, ignoring: %m");
log_error_status(err, "Error reading LoaderConfigTimeoutOneShot EFI variable: %m");
uint64_t value;
err = efivar_get_uint64_str16(MAKE_GUID_PTR(LOADER), u"LoaderConfigConsoleMode", &value);

View File

@ -1,7 +1,7 @@
# SPDX-License-Identifier: LGPL-2.1-or-later
efi_config_h_dir = meson.current_build_dir()
efi_addon = []
efi_addon = ''
libefitest = static_library(
'efitest',
@ -393,6 +393,7 @@ foreach efi_elf_binary : efi_elf_binaries
endif
exe = custom_target(
name,
output : name,
input : efi_elf_binary,
install : true,
@ -417,12 +418,12 @@ foreach efi_elf_binary : efi_elf_binaries
# This is supposed to match exactly one time
if name == 'addon@0@.efi.stub'.format(efi_arch)
efi_addon = [exe]
efi_addon = exe.full_path()
endif
test('check-alignment-@0@'.format(name),
check_efi_alignment_py,
args : exe,
args : exe.full_path(),
suite : 'boot')
endforeach

View File

@ -329,9 +329,6 @@ static int update_efi_boot_binaries(const char *esp_path, const char *source_pat
_cleanup_free_ char *p = NULL;
int r, ret = 0;
assert(esp_path);
assert(source_path);
r = chase_and_opendir("/EFI/BOOT", esp_path, CHASE_PREFIX_ROOT|CHASE_PROHIBIT_SYMLINKS, &p, &d);
if (r == -ENOENT)
return 0;
@ -340,6 +337,7 @@ static int update_efi_boot_binaries(const char *esp_path, const char *source_pat
FOREACH_DIRENT(de, d, break) {
_cleanup_close_ int fd = -EBADF;
_cleanup_free_ char *v = NULL;
if (!endswith_no_case(de->d_name, ".efi"))
continue;
@ -356,14 +354,19 @@ static int update_efi_boot_binaries(const char *esp_path, const char *source_pat
if (r == 0)
continue;
r = get_file_version(fd, &v);
if (r == -ESRCH)
continue; /* No version information */
if (r < 0)
return r;
if (!startswith(v, "systemd-boot "))
continue;
_cleanup_free_ char *dest_path = path_join(p, de->d_name);
if (!dest_path)
return log_oom();
r = copy_file_with_version_check(source_path, dest_path, /* force = */ false);
if (IN_SET(r, -ESTALE, -ESRCH))
continue;
RET_GATHER(ret, r);
RET_GATHER(ret, copy_file_with_version_check(source_path, dest_path, /* force = */ false));
}
return ret;

View File

@ -5,16 +5,19 @@ if conf.get('BPF_FRAMEWORK') != 1
endif
restrict_fs_bpf_o_unstripped = custom_target(
'restrict-fs.bpf.unstripped.o',
input : 'restrict-fs.bpf.c',
output : 'restrict-fs.bpf.unstripped.o',
command : bpf_o_unstripped_cmd)
restrict_fs_bpf_o = custom_target(
'restrict-fs.bpf.o',
input : restrict_fs_bpf_o_unstripped,
output : 'restrict-fs.bpf.o',
command : bpf_o_cmd)
restrict_fs_skel_h = custom_target(
'restrict-fs.skel.h',
input : restrict_fs_bpf_o,
output : 'restrict-fs.skel.h',
command : skel_h_cmd,

View File

@ -5,16 +5,19 @@ if conf.get('BPF_FRAMEWORK') != 1
endif
restrict_ifaces_bpf_o_unstripped = custom_target(
'restrict-ifaces.bpf.unstripped.o',
input : 'restrict-ifaces.bpf.c',
output : 'restrict-ifaces.bpf.unstripped.o',
command : bpf_o_unstripped_cmd)
restrict_ifaces_bpf_o = custom_target(
'restrict-ifaces.bpf.o',
input : restrict_ifaces_bpf_o_unstripped,
output : 'restrict-ifaces.bpf.o',
command : bpf_o_cmd)
restrict_ifaces_skel_h = custom_target(
'restrict-ifaces.skel.h',
input : restrict_ifaces_bpf_o,
output : 'restrict-ifaces.skel.h',
command : skel_h_cmd,

View File

@ -5,16 +5,19 @@ if conf.get('BPF_FRAMEWORK') != 1
endif
socket_bind_bpf_o_unstripped = custom_target(
'socket-bind.bpf.unstripped.o',
input : 'socket-bind.bpf.c',
output : 'socket-bind.bpf.unstripped.o',
command : bpf_o_unstripped_cmd)
socket_bind_bpf_o = custom_target(
'socket-bind.bpf.o',
input : socket_bind_bpf_o_unstripped,
output : 'socket-bind.bpf.o',
command : bpf_o_cmd)
socket_bind_skel_h = custom_target(
'socket-bind.skel.h',
input : socket_bind_bpf_o,
output : 'socket-bind.skel.h',
command : skel_h_cmd,

View File

@ -763,7 +763,6 @@ static int method_generic_unit_operation(
sd_bus_message *message,
Manager *m,
sd_bus_error *error,
UnitType type,
sd_bus_message_handler_t handler,
GenericUnitOperationFlags flags) {
@ -789,11 +788,6 @@ static int method_generic_unit_operation(
if (r < 0)
return r;
if (type != _UNIT_TYPE_INVALID && u->type != type)
return sd_bus_error_setf(error, SD_BUS_ERROR_NOT_SUPPORTED,
"%s operation is not supported for unit type '%s'",
sd_bus_message_get_member(message), unit_type_to_string(u->type));
if (FLAGS_SET(flags, GENERIC_UNIT_VALIDATE_LOADED)) {
r = bus_unit_validate_load_state(u, error);
if (r < 0)
@ -805,7 +799,7 @@ static int method_generic_unit_operation(
static int method_enqueue_unit_job(sd_bus_message *message, void *userdata, sd_bus_error *error) {
/* We don't bother with GENERIC_UNIT_VALIDATE_LOADED here, as the job logic validates that anyway */
return method_generic_unit_operation(message, userdata, error, _UNIT_TYPE_INVALID, bus_unit_method_enqueue_job, GENERIC_UNIT_LOAD);
return method_generic_unit_operation(message, userdata, error, bus_unit_method_enqueue_job, GENERIC_UNIT_LOAD);
}
static int method_start_unit_replace(sd_bus_message *message, void *userdata, sd_bus_error *error) {
@ -830,57 +824,57 @@ static int method_start_unit_replace(sd_bus_message *message, void *userdata, sd
}
static int method_kill_unit(sd_bus_message *message, void *userdata, sd_bus_error *error) {
/* We don't bother with GENERIC_UNIT_LOAD or GENERIC_UNIT_VALIDATE_LOADED here, as it shouldn't
* matter whether a unit is loaded for killing any processes in the unit's cgroup. */
return method_generic_unit_operation(message, userdata, error, _UNIT_TYPE_INVALID, bus_unit_method_kill, /* flags = */ 0);
/* We don't bother with GENERIC_UNIT_LOAD nor GENERIC_UNIT_VALIDATE_LOADED here, as it shouldn't
* matter whether a unit is loaded for killing any processes possibly in the unit's cgroup. */
return method_generic_unit_operation(message, userdata, error, bus_unit_method_kill, 0);
}
static int method_clean_unit(sd_bus_message *message, void *userdata, sd_bus_error *error) {
/* Load the unit if necessary, in order to load it, and insist on the unit being loaded to be
* cleaned */
return method_generic_unit_operation(message, userdata, error, _UNIT_TYPE_INVALID, bus_unit_method_clean, GENERIC_UNIT_LOAD|GENERIC_UNIT_VALIDATE_LOADED);
return method_generic_unit_operation(message, userdata, error, bus_unit_method_clean, GENERIC_UNIT_LOAD|GENERIC_UNIT_VALIDATE_LOADED);
}
static int method_freeze_unit(sd_bus_message *message, void *userdata, sd_bus_error *error) {
/* Only active units can be frozen, which must be properly loaded already */
return method_generic_unit_operation(message, userdata, error, _UNIT_TYPE_INVALID, bus_unit_method_freeze, GENERIC_UNIT_VALIDATE_LOADED);
return method_generic_unit_operation(message, userdata, error, bus_unit_method_freeze, GENERIC_UNIT_VALIDATE_LOADED);
}
static int method_thaw_unit(sd_bus_message *message, void *userdata, sd_bus_error *error) {
/* Same as freeze above */
return method_generic_unit_operation(message, userdata, error, _UNIT_TYPE_INVALID, bus_unit_method_thaw, GENERIC_UNIT_VALIDATE_LOADED);
return method_generic_unit_operation(message, userdata, error, bus_unit_method_thaw, GENERIC_UNIT_VALIDATE_LOADED);
}
static int method_reset_failed_unit(sd_bus_message *message, void *userdata, sd_bus_error *error) {
/* Don't load the unit (because unloaded units can't be in failed state), and don't insist on the
* unit to be loaded properly (since a failed unit might have its unit file disappeared) */
return method_generic_unit_operation(message, userdata, error, _UNIT_TYPE_INVALID, bus_unit_method_reset_failed, /* flags = */ 0);
return method_generic_unit_operation(message, userdata, error, bus_unit_method_reset_failed, 0);
}
static int method_set_unit_properties(sd_bus_message *message, void *userdata, sd_bus_error *error) {
/* Only change properties on fully loaded units, and load them in order to set properties */
return method_generic_unit_operation(message, userdata, error, _UNIT_TYPE_INVALID, bus_unit_method_set_properties, GENERIC_UNIT_LOAD|GENERIC_UNIT_VALIDATE_LOADED);
return method_generic_unit_operation(message, userdata, error, bus_unit_method_set_properties, GENERIC_UNIT_LOAD|GENERIC_UNIT_VALIDATE_LOADED);
}
static int method_bind_mount_unit(sd_bus_message *message, void *userdata, sd_bus_error *error) {
/* Only add mounts on fully loaded units */
return method_generic_unit_operation(message, userdata, error, UNIT_SERVICE, bus_service_method_bind_mount, GENERIC_UNIT_VALIDATE_LOADED);
return method_generic_unit_operation(message, userdata, error, bus_service_method_bind_mount, GENERIC_UNIT_VALIDATE_LOADED);
}
static int method_mount_image_unit(sd_bus_message *message, void *userdata, sd_bus_error *error) {
/* Only add mounts on fully loaded units */
return method_generic_unit_operation(message, userdata, error, UNIT_SERVICE, bus_service_method_mount_image, GENERIC_UNIT_VALIDATE_LOADED);
return method_generic_unit_operation(message, userdata, error, bus_service_method_mount_image, GENERIC_UNIT_VALIDATE_LOADED);
}
static int method_ref_unit(sd_bus_message *message, void *userdata, sd_bus_error *error) {
/* Only allow reffing of fully loaded units, and make sure reffing a unit loads it. */
return method_generic_unit_operation(message, userdata, error, _UNIT_TYPE_INVALID, bus_unit_method_ref, GENERIC_UNIT_LOAD|GENERIC_UNIT_VALIDATE_LOADED);
return method_generic_unit_operation(message, userdata, error, bus_unit_method_ref, GENERIC_UNIT_LOAD|GENERIC_UNIT_VALIDATE_LOADED);
}
static int method_unref_unit(sd_bus_message *message, void *userdata, sd_bus_error *error) {
/* Dropping a ref OTOH should not require the unit to still be loaded. And since a reffed unit is a
* loaded unit there's no need to load the unit for unreffing it. */
return method_generic_unit_operation(message, userdata, error, _UNIT_TYPE_INVALID, bus_unit_method_unref, /* flags = */ 0);
return method_generic_unit_operation(message, userdata, error, bus_unit_method_unref, 0);
}
static int reply_unit_info(sd_bus_message *reply, Unit *u) {
@ -959,14 +953,14 @@ static int method_get_unit_processes(sd_bus_message *message, void *userdata, sd
/* Don't load a unit actively (since it won't have any processes if it's not loaded), but don't
* insist on the unit being loaded either (because even improperly loaded units might still have
* processes around). */
return method_generic_unit_operation(message, userdata, error, _UNIT_TYPE_INVALID, bus_unit_method_get_processes, /* flags = */ 0);
return method_generic_unit_operation(message, userdata, error, bus_unit_method_get_processes, /* flags = */ 0);
}
static int method_attach_processes_to_unit(sd_bus_message *message, void *userdata, sd_bus_error *error) {
/* Don't allow attaching new processes to units that aren't loaded. Don't bother with loading a unit
* for this purpose though, as an unloaded unit is a stopped unit, and we don't allow attaching
* processes to stopped units anyway. */
return method_generic_unit_operation(message, userdata, error, _UNIT_TYPE_INVALID, bus_unit_method_attach_processes, GENERIC_UNIT_VALIDATE_LOADED);
return method_generic_unit_operation(message, userdata, error, bus_unit_method_attach_processes, GENERIC_UNIT_VALIDATE_LOADED);
}
static int transient_unit_from_message(
@ -2896,7 +2890,7 @@ static int method_set_show_status(sd_bus_message *message, void *userdata, sd_bu
}
static int method_dump_unit_descriptor_store(sd_bus_message *message, void *userdata, sd_bus_error *error) {
return method_generic_unit_operation(message, userdata, error, UNIT_SERVICE, bus_service_method_dump_file_descriptor_store, GENERIC_UNIT_VALIDATE_LOADED);
return method_generic_unit_operation(message, userdata, error, bus_service_method_dump_file_descriptor_store, 0);
}
static int aux_scope_from_message(Manager *m, sd_bus_message *message, Unit **ret_scope, sd_bus_error *error) {

View File

@ -1315,13 +1315,10 @@ static int append_cgroup(sd_bus_message *reply, const char *p, Set *pids) {
/* libvirt / qemu uses threaded mode and cgroup.procs cannot be read at the lower levels.
* From https://docs.kernel.org/admin-guide/cgroup-v2.html#threads, “cgroup.procs” in a
* threaded domain cgroup contains the PIDs of all processes in the subtree and is not
* readable in the subtree proper.
*
* We'll see ENODEV when trying to enumerate processes and the cgroup is removed at the same
* time. Handle this gracefully. */
* readable in the subtree proper. */
r = cg_read_pidref(f, &pidref, /* flags = */ 0);
if (IN_SET(r, 0, -EOPNOTSUPP, -ENODEV))
if (IN_SET(r, 0, -EOPNOTSUPP))
break;
if (r < 0)
return r;

View File

@ -84,17 +84,20 @@ if conf.get('BPF_FRAMEWORK') == 1
endif
load_fragment_gperf_gperf = custom_target(
'load-fragment-gperf.gperf',
input : 'load-fragment-gperf.gperf.in',
output: 'load-fragment-gperf.gperf',
command : [jinja2_cmdline, '@INPUT@', '@OUTPUT@'])
load_fragment_gperf_c = custom_target(
'load-fragment-gperf.c',
input : load_fragment_gperf_gperf,
output : 'load-fragment-gperf.c',
command : [gperf, '@INPUT@', '--output-file', '@OUTPUT@'])
awkscript = 'load-fragment-gperf-nulstr.awk'
load_fragment_gperf_nulstr_c = custom_target(
'load-fragment-gperf-nulstr.c',
input : [awkscript, load_fragment_gperf_gperf],
output : 'load-fragment-gperf-nulstr.c',
command : [awk, '-f', '@INPUT0@', '@INPUT1@'],
@ -227,6 +230,7 @@ foreach item : in_files
dir = item[1]
custom_target(
file,
input : file + '.in',
output: file,
command : [jinja2_cmdline, '@INPUT@', '@OUTPUT@'],
@ -235,6 +239,7 @@ foreach item : in_files
endforeach
systemd_pc = custom_target(
'systemd.pc',
input : 'systemd.pc.in',
output : 'systemd.pc',
command : [jinja2_cmdline, '@INPUT@', '@OUTPUT@'],

View File

@ -1215,13 +1215,11 @@ static int service_load_pid_file(Service *s, bool may_warn) {
if (fstat(fileno(f), &st) < 0)
return log_unit_error_errno(UNIT(s), errno, "Failed to fstat() PID file '%s': %m", s->pid_file);
if (st.st_uid != getuid())
if (st.st_uid != 0)
return log_unit_error_errno(UNIT(s), SYNTHETIC_ERRNO(EPERM),
"New main PID "PID_FMT" from PID file does not belong to service, and PID file is owned by "UID_FMT" (must be owned by "UID_FMT"). Refusing.",
pidref.pid, st.st_uid, getuid());
"New main PID "PID_FMT" from PID file does not belong to service, and PID file is not owned by root. Refusing.", pidref.pid);
log_unit_debug(UNIT(s), "New main PID "PID_FMT" does not belong to service, accepting anyway since PID file is owned by "UID_FMT".",
pidref.pid, st.st_uid);
log_unit_debug(UNIT(s), "New main PID "PID_FMT" does not belong to service, accepting anyway since PID file is owned by root.", pidref.pid);
}
if (s->main_pid_known) {

View File

@ -476,7 +476,6 @@ static void timer_enter_waiting(Timer *t, bool time_change) {
assert_not_reached();
}
if (!time_change)
v->next_elapse = usec_add(usec_shift_clock(base, CLOCK_MONOTONIC, TIMER_MONOTONIC_CLOCK(t)), v->value);
if (dual_timestamp_is_set(&t->last_trigger) &&

View File

@ -4755,7 +4755,7 @@ static int operation_to_signal(
case KILL_TERMINATE:
case KILL_TERMINATE_AND_LOG:
*ret_noteworthy = k == KILL_TERMINATE_AND_LOG;
*ret_noteworthy = false;
return c->kill_signal;
case KILL_RESTART:

View File

@ -42,6 +42,7 @@ systemd_homed_sources = files(
)
homed_gperf_c = custom_target(
'homed_gperf.c',
input : 'homed-gperf.gperf',
output : 'homed-gperf.c',
command : [gperf, '@INPUT@', '--output-file', '@OUTPUT@'])

View File

@ -97,6 +97,7 @@ in_files = [
foreach tuple : in_files
file = tuple[0]
custom_target(
file,
input : file + '.in',
output: file,
command : [jinja2_cmdline, '@INPUT@', '@OUTPUT@'],

View File

@ -20,7 +20,6 @@ typedef struct Context {
bool has_cursor;
bool need_seek;
bool since_seeked;
bool until_safe;
bool ellipsized;
bool previous_boot_id_valid;
sd_id128_t previous_boot_id;
@ -105,15 +104,10 @@ static int seek_journal(Context *c) {
return log_error_errno(r, "Failed to seek to tail: %m");
}
if (arg_reverse) {
if (arg_reverse)
r = sd_journal_previous(j);
c->until_safe = true; /* can't possibly go beyond --until= if --reverse */
} else { /* arg_lines_needs_seek_end() */
else /* arg_lines_needs_seek_end */
r = sd_journal_previous_skip(j, arg_lines);
c->until_safe = r >= arg_lines; /* We have enough lines to output before --until= is hit.
No need to check timestamp of each journal entry */
}
} else if (arg_since_set) {
/* This is placed after arg_reverse and arg_lines. If --since is used without
@ -167,10 +161,11 @@ static int show(Context *c) {
break;
}
if (arg_until_set && !c->until_safe) {
if (arg_until_set && !arg_reverse && (arg_lines < 0 || arg_since_set || c->has_cursor)) {
/* If --lines= is set, we usually rely on the n_shown to tell us when to stop.
* However, in the case where we may have less than --lines= to output let's check
* whether the individual entries are in range. */
* However, if --since= or one of the cursor argument is set too, we may end up
* having less than --lines= to output. In this case let's also check if the entry
* is in range. */
usec_t usec;
@ -199,11 +194,6 @@ static int show(Context *c) {
return log_error_errno(r, "Failed to seek to date: %m");
c->since_seeked = true;
/* We just jumped forward, meaning there might suddenly be less than
* --lines= to show within the --until= range, hence keep a close eye on
* timestamps from now on. */
c->until_safe = false;
c->need_seek = true;
continue;
}
@ -232,12 +222,6 @@ static int show(Context *c) {
r = sd_journal_get_data(j, "MESSAGE", &message, &len);
if (r < 0) {
if (r == -ENOENT) {
/* We will skip some entries forward, meaning there might suddenly
* be less than --lines= to show within the --until= range, hence
* keep a close eye on timestamps from now on. */
if (!arg_reverse)
c->until_safe = false;
c->need_seek = true;
continue;
}
@ -252,12 +236,6 @@ static int show(Context *c) {
if (r < 0)
return r;
if (r == 0) {
/* We will skip some entries forward, meaning there might suddenly
* be less than --lines= to show within the --until= range, hence
* keep a close eye on timestamps from now on. */
if (!arg_reverse)
c->until_safe = false;
c->need_seek = true;
continue;
}

View File

@ -554,14 +554,11 @@ static int server_do_rotate(
JournalFileFlags file_flags;
int r;
assert(f);
assert(s);
if (!*f)
return -EINVAL;
log_debug("Rotating journal file %s.", (*f)->path);
file_flags =
(s->compress.enabled ? JOURNAL_COMPRESS : 0)|
(seal ? JOURNAL_SEAL : 0) |
@ -2204,8 +2201,6 @@ static int synchronize_second_half(sd_event_source *event_source, void *userdata
* messages are processed. */
server_full_sync(s, /* wait = */ true);
log_debug("Client request to sync journal completed.");
/* Let's get rid of the event source now, by marking it as non-floating again. It then has no ref
* anymore and is immediately destroyed after we return from this function, i.e. from this event
* source handler at the end. */
@ -2271,7 +2266,6 @@ static int vl_method_rotate(sd_varlink *link, sd_json_variant *parameters, sd_va
log_info("Received client request to rotate journal, rotating.");
server_full_rotate(s);
log_debug("Client request to rotate journal completed.");
return sd_varlink_reply(link, NULL);
}
@ -2288,7 +2282,6 @@ static int vl_method_flush_to_var(sd_varlink *link, sd_json_variant *parameters,
log_info("Received client request to flush runtime journal.");
server_full_flush(s);
log_debug("Client request to flush runtime journal completed.");
return sd_varlink_reply(link, NULL);
}
@ -2305,7 +2298,6 @@ static int vl_method_relinquish_var(sd_varlink *link, sd_json_variant *parameter
log_info("Received client request to relinquish %s access.", s->system_storage.path);
server_relinquish_var(s);
log_debug("Client request to relinquish %s access completed.", s->system_storage.path);
return sd_varlink_reply(link, NULL);
}

View File

@ -374,6 +374,9 @@ void server_process_syslog_message(
if (!client_context_test_priority(context, priority))
return;
if (client_context_check_keep_log(context, msg, strlen(msg)) <= 0)
return;
syslog_ts = msg;
syslog_ts_len = syslog_skip_timestamp(&msg);
if (syslog_ts_len == 0)
@ -382,9 +385,6 @@ void server_process_syslog_message(
syslog_parse_identifier(&msg, &identifier, &pid);
if (client_context_check_keep_log(context, msg, strlen(msg)) <= 0)
return;
if (s->forward_to_syslog)
forward_syslog_raw(s, priority, buf, raw_len, ucred, tv);

View File

@ -16,6 +16,7 @@ sources = files(
)
sources += custom_target(
'journald-gperf.c',
input : 'journald-gperf.gperf',
output : 'journald-gperf.c',
command : [gperf, '@INPUT@', '--output-file', '@OUTPUT@'])

View File

@ -12,6 +12,7 @@ executables += [
]
ukify_install = custom_target(
'60-ukify.install',
input : '60-ukify.install.in',
output : '60-ukify.install',
command : [jinja2_cmdline, '@INPUT@', '@OUTPUT@'],
@ -20,6 +21,7 @@ ukify_install = custom_target(
install_dir : kernelinstalldir)
loaderentry_install = custom_target(
'90-loaderentry.install',
input : '90-loaderentry.install.in',
output : '90-loaderentry.install',
command : [jinja2_cmdline, '@INPUT@', '@OUTPUT@'],
@ -41,10 +43,8 @@ if want_kernel_install
install_data('install.conf',
install_dir : kerneldir)
if want_ukify
install_data('uki.conf',
install_dir : kerneldir)
endif
if install_sysconfdir
install_emptydir(sysconfdir / 'kernel/install.d')

View File

@ -112,7 +112,7 @@ static void dhcp6_lease_set_lifetime(sd_dhcp6_lease *lease) {
}
DEFINE_GET_TIME_FUNCTIONS(t1, lifetime_t1);
DEFINE_GET_TIME_FUNCTIONS(t2, lifetime_t2);
DEFINE_GET_TIME_FUNCTIONS(t2, lifetime_t1);
DEFINE_GET_TIME_FUNCTIONS(valid_lifetime, lifetime_valid);
static void dhcp6_lease_set_server_address(sd_dhcp6_lease *lease, const struct in6_addr *server_address) {

Some files were not shown because too many files have changed in this diff Show More