IF YOU WOULD LIKE TO GET AN ACCOUNT, please write an
email to Administrator. User accounts are meant only to access repo
and report issues and/or generate pull requests.
This is a purpose-specific Git hosting for
BaseALT
projects. Thank you for your understanding!
Только зарегистрированные пользователи имеют доступ к сервису!
Для получения аккаунта, обратитесь к администратору.
The script has a shebang and .sh extension, so make it executable
W: systemd-tests: script-not-executable [usr/lib/systemd/tests/testdata/units/assert.sh]
Repart is growing into an important tool on its own, and users might
want to install newer versions on systems that have older systemd. Let's
make this easier by providing a standalone binary.
Related to https://github.com/systemd/mkosi/issues/1228.
On various ARM systems, it is possible to find devices on AMBA bus.
This is defined in Linux kernel drivers/amba/bus.c as separate bus
type. Udev currently does not recognize this when building ID_PATH
which leads to ID_PATH containing the suffix from next recognized
parent device. On ST STM32MP15xx with SDIO WiFi, the ID_PATH looks
like 'platform-soc', which is not unique and basically useless. On
NXP i.MX8M Plus with SDIO WiFi, ID_PATH is 'platform-30b40000.mmc'
which is far more useful.
Add the 'amba' subsystem handling the same way 'platform' subsystem
is handled to get ID_PATH 'platform-soc-amba-48004000.sdmmc' on the
former, which is far more useful compared to 'platform-soc'.
---
```
$ udevadm info --attribute-walk --path=/devices/platform/soc/48004000.mmc/mmc_host/mmc1/mmc1:0001/mmc1:0001:1/net/wlan0
Udevadm info starts with the device specified by the devpath and then
walks up the chain of parent devices. It prints for every device
found, all possible attributes in the udev rules key format.
A rule to match, can be composed by the attributes of the device
and the attributes from one single parent device.
looking at device '/devices/platform/soc/48004000.mmc/mmc_host/mmc1/mmc1:0001/mmc1:0001:1/net/wlan0':
KERNEL=="wlan0"
SUBSYSTEM=="net"
DRIVER==""
ATTR{addr_assign_type}=="0"
ATTR{addr_len}=="6"
ATTR{address}=="10:98:c3:5f:4b:80"
ATTR{broadcast}=="ff:ff:ff:ff:ff:ff"
ATTR{carrier_changes}=="1"
ATTR{carrier_down_count}=="1"
ATTR{carrier_up_count}=="0"
ATTR{dev_id}=="0x0"
ATTR{dev_port}=="0"
ATTR{flags}=="0x1002"
ATTR{gro_flush_timeout}=="0"
ATTR{ifalias}==""
ATTR{ifindex}=="3"
ATTR{iflink}=="3"
ATTR{link_mode}=="0"
ATTR{mtu}=="1500"
ATTR{napi_defer_hard_irqs}=="0"
ATTR{netdev_group}=="0"
ATTR{operstate}=="down"
ATTR{power/control}=="auto"
ATTR{power/runtime_active_time}=="0"
ATTR{power/runtime_status}=="unsupported"
ATTR{power/runtime_suspended_time}=="0"
ATTR{proto_down}=="0"
ATTR{queues/rx-0/rps_cpus}=="0"
ATTR{queues/rx-0/rps_flow_cnt}=="0"
ATTR{queues/tx-0/byte_queue_limits/hold_time}=="1000"
ATTR{queues/tx-0/byte_queue_limits/inflight}=="0"
ATTR{queues/tx-0/byte_queue_limits/limit}=="0"
ATTR{queues/tx-0/byte_queue_limits/limit_max}=="1879048192"
ATTR{queues/tx-0/byte_queue_limits/limit_min}=="0"
ATTR{queues/tx-0/tx_maxrate}=="0"
ATTR{queues/tx-0/tx_timeout}=="0"
ATTR{queues/tx-0/xps_rxqs}=="0"
ATTR{statistics/collisions}=="0"
ATTR{statistics/multicast}=="0"
ATTR{statistics/rx_bytes}=="0"
ATTR{statistics/rx_compressed}=="0"
ATTR{statistics/rx_crc_errors}=="0"
ATTR{statistics/rx_dropped}=="0"
ATTR{statistics/rx_errors}=="0"
ATTR{statistics/rx_fifo_errors}=="0"
ATTR{statistics/rx_frame_errors}=="0"
ATTR{statistics/rx_length_errors}=="0"
ATTR{statistics/rx_missed_errors}=="0"
ATTR{statistics/rx_nohandler}=="0"
ATTR{statistics/rx_over_errors}=="0"
ATTR{statistics/rx_packets}=="0"
ATTR{statistics/tx_aborted_errors}=="0"
ATTR{statistics/tx_bytes}=="0"
ATTR{statistics/tx_carrier_errors}=="0"
ATTR{statistics/tx_compressed}=="0"
ATTR{statistics/tx_dropped}=="0"
ATTR{statistics/tx_errors}=="0"
ATTR{statistics/tx_fifo_errors}=="0"
ATTR{statistics/tx_heartbeat_errors}=="0"
ATTR{statistics/tx_packets}=="0"
ATTR{statistics/tx_window_errors}=="0"
ATTR{threaded}=="0"
ATTR{tx_queue_len}=="1000"
ATTR{type}=="1"
looking at parent device '/devices/platform/soc/48004000.mmc/mmc_host/mmc1/mmc1:0001/mmc1:0001:1':
KERNELS=="mmc1:0001:1"
SUBSYSTEMS=="sdio"
DRIVERS=="brcmfmac"
ATTRS{class}=="0x00"
ATTRS{coredump}=="(write-only)"
ATTRS{device}=="0xa9bf"
ATTRS{power/control}=="auto"
ATTRS{power/runtime_active_time}=="0"
ATTRS{power/runtime_status}=="unsupported"
ATTRS{power/runtime_suspended_time}=="0"
ATTRS{revision}=="0.0"
ATTRS{vendor}=="0x02d0"
looking at parent device '/devices/platform/soc/48004000.mmc/mmc_host/mmc1/mmc1:0001':
KERNELS=="mmc1:0001"
SUBSYSTEMS=="mmc"
DRIVERS==""
ATTRS{device}=="0xa9bf"
ATTRS{ocr}=="0x00200000"
ATTRS{power/control}=="auto"
ATTRS{power/runtime_active_time}=="0"
ATTRS{power/runtime_status}=="unsupported"
ATTRS{power/runtime_suspended_time}=="0"
ATTRS{rca}=="0x0001"
ATTRS{revision}=="0.0"
ATTRS{type}=="SDIO"
ATTRS{vendor}=="0x02d0"
looking at parent device '/devices/platform/soc/48004000.mmc/mmc_host/mmc1':
KERNELS=="mmc1"
SUBSYSTEMS=="mmc_host"
DRIVERS==""
ATTRS{power/control}=="auto"
ATTRS{power/runtime_active_time}=="0"
ATTRS{power/runtime_status}=="unsupported"
ATTRS{power/runtime_suspended_time}=="0"
looking at parent device '/devices/platform/soc/48004000.mmc':
KERNELS=="48004000.mmc"
SUBSYSTEMS=="amba" <------------------------------------------------------- AMBA is here
DRIVERS=="mmci-pl18x"
ATTRS{driver_override}=="(null)"
ATTRS{id}=="00253180"
ATTRS{power/autosuspend_delay_ms}=="50"
ATTRS{power/control}=="on"
ATTRS{power/runtime_active_time}=="666709"
ATTRS{power/runtime_status}=="active"
ATTRS{power/runtime_suspended_time}=="0"
looking at parent device '/devices/platform/soc':
KERNELS=="soc"
SUBSYSTEMS=="platform"
DRIVERS=="simple-pm-bus"
ATTRS{driver_override}=="(null)"
ATTRS{power/control}=="auto"
ATTRS{power/runtime_active_time}=="0"
ATTRS{power/runtime_status}=="unsupported"
ATTRS{power/runtime_suspended_time}=="0"
looking at parent device '/devices/platform':
KERNELS=="platform"
SUBSYSTEMS==""
DRIVERS==""
ATTRS{power/control}=="auto"
ATTRS{power/runtime_active_time}=="0"
ATTRS{power/runtime_status}=="unsupported"
ATTRS{power/runtime_suspended_time}=="0"
```
To support predictable interface names in various embeeded systems
add support for an additional naming scheming using the USB host
interface. Several asics have usb controllers that are platform
devices and not children of a pci interface. These embedded systems
should be able to enumerate interfaces by udev path as well to support
configurations and policies.
Signed-off-by: Charles Hardin <charles.hardin@chargepoint.com>
It appears that exceptional layout of legacy device requires extra care of
hwdb entry for node device since Linux FireWire subsystem do not pick up
numeric model identifier in vendor directory. In detail, see:
* https://github.com/systemd/systemd/issues/25029
In the case, udev rule without model attribute is used. Thus hwdb entry
for generic AV/C device should match both cases with and without the
attribute. The wildcard added by a commit 5e577da5f8 ("hwdb: drop model
specifier from general entries") satisfies this condition,
This commit adds comment about it.
It appeared that Sony DCR-TRV310 has legacy layout of configuration ROM
against 1394 TA standard documentation.
* https://github.com/systemd/systemd/issues/25029
For the case, numeric model identifier and descriptor leaf for model name
are not picked up. This commit fulfill corresponding entry so that
applications can use model name from hardware database.
When at least one of the name, MAC address, udev properties, and so on
for an interface is updated, try to find a matching .network file, and
reconfigure if a new .network file is assigned.
Fixes#24975.
No functional changes, just refactoring and preparation for later
commits.
Note, `link->dev` should always exist when link state is initialized or
later.
The outstanding kernel panic should be already fixed in recent enough
kernels by [0]. To make the test safe to run anywhere, let's implement
a simple kernel version check and run the test only if we're running
with at least kernel 6.x. The patch might be in some 5.x kernels as
well, but let's be on the safe side and use 6.x as a baseline here
(which is currently the case for Arch and Fedora Rawhide anyway).
[0] https://lore.kernel.org/netdev/7b3fd03e1a46047e5ffe2a389fe74501f0a93206.1656519221.git.sd@queasysnail.net/T/#u
Previously, ata_id might not be able to retrieve attributes correctly,
and properties from usb_id were used as a fallback. See issue #24921
and PR #24923. To keep backward compatibility, still we need to create
symlinks based on USB serial.
Fixes#25179.