Re: [systemd-devel] RFC: support ethtool pause setting in systemd.link

2019-10-17 Thread Lennart Poettering
On Do, 17.10.19 10:23, Stephen Hemminger (step...@networkplumber.org) wrote:

> Ethernet flow control (pause) is a setting which often is best disabled.
> Systemd has nice way to configure other link settings like WoL, TSO, etc
> but doesn't have a way to configure pause.
>
> It would be good to have something like:
>
> [Match]
> Driver=ixgbe
>
> [Link]
> Pause=off
>
>
> Possible values should subset of ethtool.
> "off" = autoneg off, rx off, tx off
> "autoneg" = autoneg on
> "tx" = autoneg off, rx off, tx on
> "rx" = autoneg off, rx on, tx off

Makes sense, but could you please file this as RFE issue on systemd
github?

https://github.com/systemd/systemd/issues/new?template=Feature_request.md

Maybe cc @ssahani and @yuwata on it, they tend to be particularly
interested in the networking side of things!

Thank you,

Lennart

--
Lennart Poettering, Berlin
___
systemd-devel mailing list
systemd-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/systemd-devel

[systemd-devel] RFC: support ethtool pause setting in systemd.link

2019-10-17 Thread Stephen Hemminger
Ethernet flow control (pause) is a setting which often is best disabled.
Systemd has nice way to configure other link settings like WoL, TSO, etc
but doesn't have a way to configure pause.

It would be good to have something like:

[Match]
Driver=ixgbe

[Link]
Pause=off


Possible values should subset of ethtool.
"off" = autoneg off, rx off, tx off
"autoneg" = autoneg on
"tx" = autoneg off, rx off, tx on
"rx" = autoneg off, rx on, tx off

___
systemd-devel mailing list
systemd-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/systemd-devel

Re: [systemd-devel] DHCP Server on multiple interfaces

2019-10-17 Thread Martin Townsend
On Thu, Oct 17, 2019 at 4:55 PM Martin Townsend  wrote:
>
> Hi,
>
> Does systemd support the networkd DHCP Server on multiple network
> interfaces.  I ask as we have an embedded system running systemd 239
> and we want to configure a DHCP server on a bluetooth PAN and one of
> the Ethernet interfaces both of which are used for configuring the
> device.
>
> I've set up both the network files with
> [Network]
> 
> DHCPServer=yes
>
> [DHCPServer]
> PoolOffset=10
> PoolSize=10
> DefaultLeaseTimeSec=12h
> MaxLeaseTimeSec=24h
>
> When trying to connect to the bluetooth PAN I get
> Oct 17 15:28:39 vasig-imx6ul-txul-emmc systemd-networkd[307]: Failed
> to determine timezone: Invalid argument
> Oct 17 15:28:39 vasig-imx6ul-txul-emmc systemd-networkd[307]: pan0:
> Could not start DHCPv4 server instance: Device or resource busy
> Oct 17 15:28:39 vasig-imx6ul-txul-emmc systemd-networkd[307]: pan0: Failed
>
> The message " pan0: Could not start DHCPv4 server instance: Device or
> resource busy" seems to suggest that only one server instance is
> allowed.  Weirdly the device connecting did get an ip address.  But if
> I look at the status of the pan0 I see:
>
> root@vasig-imx6ul-txul-emmc:~# networkctl status pan0
> ● 4: pan0
>Link File: /lib/systemd/network/99-default.link
> Network File: /etc/systemd/network/30-pan0-bridge.network
> Type: bridge
>State: routable (failed)
>   Driver: bridge
>   HW Address: 82:2f:45:2a:9c:5a
>  Address: 192.168.10.1
>
> eth0 is named such that it should be configured before the pan0.
>
> Best Regards,
> Martin.

I think I have hit this issue as the PAN does have
ConfigureWithoutCarrier=yes

https://github.com/systemd/systemd/issues/9479
___
systemd-devel mailing list
systemd-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/systemd-devel

Re: [systemd-devel] DHCP Server on multiple interfaces

2019-10-17 Thread Reindl Harald


Am 17.10.19 um 17:55 schrieb Martin Townsend:
> Does systemd support the networkd DHCP Server on multiple network
> interfaces.  I ask as we have an embedded system running systemd 239
> and we want to configure a DHCP server on a bluetooth PAN and one of
> the Ethernet interfaces both of which are used for configuring the
> device.
> 
> I've set up both the network files with
> [Network]
> 
> DHCPServer=yes
> 
> [DHCPServer]
> PoolOffset=10
> PoolSize=10
> DefaultLeaseTimeSec=12h
> MaxLeaseTimeSec=24h
> 
> When trying to connect to the bluetooth PAN I get
> Oct 17 15:28:39 vasig-imx6ul-txul-emmc systemd-networkd[307]: Failed
> to determine timezone: Invalid argument
> Oct 17 15:28:39 vasig-imx6ul-txul-emmc systemd-networkd[307]: pan0:
> Could not start DHCPv4 server instance: Device or resource busy
> Oct 17 15:28:39 vasig-imx6ul-txul-emmc systemd-networkd[307]: pan0: Failed
> 
> The message " pan0: Could not start DHCPv4 server instance: Device or
> resource busy" seems to suggest that only one server instance is
> allowed.  Weirdly the device connecting did get an ip address.  But if
> I look at the status of the pan0 I see:
> 
> root@vasig-imx6ul-txul-emmc:~# networkctl status pan0
> ● 4: pan0
>Link File: /lib/systemd/network/99-default.link
> Network File: /etc/systemd/network/30-pan0-bridge.network
> Type: bridge
>State: routable (failed)
>   Driver: bridge
>   HW Address: 82:2f:45:2a:9c:5a
>  Address: 192.168.10.1
> 
> eth0 is named such that it should be configured before the pan0

why would you listen on a bridge and additionally on a interface? you
use a bridge like a ordianry interface and every interface connected to
the bridge is in the same layer

Network bridge:
A bridge is a piece of software used to unite two or more network
segments. A bridge behaves like a virtual network switch, working
transparently (the other machines do not need to know or care about its
existence). Any real devices (e.g. eth0) and virtual devices (e.g. tap0)
can be connected to it.
___
systemd-devel mailing list
systemd-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/systemd-devel

[systemd-devel] DHCP Server on multiple interfaces

2019-10-17 Thread Martin Townsend
Hi,

Does systemd support the networkd DHCP Server on multiple network
interfaces.  I ask as we have an embedded system running systemd 239
and we want to configure a DHCP server on a bluetooth PAN and one of
the Ethernet interfaces both of which are used for configuring the
device.

I've set up both the network files with
[Network]

DHCPServer=yes

[DHCPServer]
PoolOffset=10
PoolSize=10
DefaultLeaseTimeSec=12h
MaxLeaseTimeSec=24h

When trying to connect to the bluetooth PAN I get
Oct 17 15:28:39 vasig-imx6ul-txul-emmc systemd-networkd[307]: Failed
to determine timezone: Invalid argument
Oct 17 15:28:39 vasig-imx6ul-txul-emmc systemd-networkd[307]: pan0:
Could not start DHCPv4 server instance: Device or resource busy
Oct 17 15:28:39 vasig-imx6ul-txul-emmc systemd-networkd[307]: pan0: Failed

The message " pan0: Could not start DHCPv4 server instance: Device or
resource busy" seems to suggest that only one server instance is
allowed.  Weirdly the device connecting did get an ip address.  But if
I look at the status of the pan0 I see:

root@vasig-imx6ul-txul-emmc:~# networkctl status pan0
● 4: pan0
   Link File: /lib/systemd/network/99-default.link
Network File: /etc/systemd/network/30-pan0-bridge.network
Type: bridge
   State: routable (failed)
  Driver: bridge
  HW Address: 82:2f:45:2a:9c:5a
 Address: 192.168.10.1

eth0 is named such that it should be configured before the pan0.

Best Regards,
Martin.
___
systemd-devel mailing list
systemd-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/systemd-devel

[systemd-devel] How-to for systemd user timers instead of cron/crontab?

2019-10-17 Thread Paul Menzel
Dear systemd folks,


I couldn’t find a simple documentation for “normal” users how
to use systemd timers instead of cron/crontab? The Arch Wiki
has a page [1], but I am afraid it’s still too complicated
for our users.


Kind regards,

Paul


[1]: https://wiki.archlinux.org/index.php/Systemd/Timers



smime.p7s
Description: S/MIME Cryptographic Signature
___
systemd-devel mailing list
systemd-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/systemd-devel

Re: [systemd-devel] Antw: Re: Mutually exclusive (timer-triggered) services

2019-10-17 Thread Reindl Harald


Am 17.10.19 um 08:02 schrieb Ulrich Windl:
>> Or did I miss something and the second flock somehow obtains the inode
>> number of the old lock?
> 
> I guess any new process arriving late cannot aquire the (same) lock once the
> first process has removed the name when the crowd has finished.
> But as the remove itself locks, it means that the remove will happen only
> after the lock has been released (requests being server FCFS (FIrst Come, 
> First
> Serviced).
> If there's one process late, a new lock will be created, and likewise any new
> arrivals will use that lock, until the lock is free.
> 
> Doesn't look like a 100% solution to me, but it might work.

it's about *multiple* services and hence might not work

it's the same as wenn you "tail -f" a logfile while in the meantime
logrotate came, tail follows the old file with no further changes, the
disk space is not freed because the open handlebut the rest of the world
don#t care and is using the new one
___
systemd-devel mailing list
systemd-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/systemd-devel

Re: [systemd-devel] Antw: Re: Mutually exclusive (timer-triggered) services

2019-10-17 Thread Ulrich Windl
>>> Alexander Koch  schrieb am 16.10.2019 um 16:14 in
Nachricht <9fb9c1a157e92baef1107ed3b66aa...@alexanderkoch.net>:
> * flock leaves the lock file behind so you'd need some type of
> cleanup in case you really want the jobs to be trace‑free. This is
> not as trivial is it might seem, e.g. you cannot do it from the
> service units themselves in `ExecStartPost=` or similar.
 An
 
 ExecStartPost=‑/usr/bin/flock ‑F /path/to/lock.file \
   /usr/bin/rm /path/to/lock.file
 
 should solve this issue.
>>> 
>>> So you can remove a file other processes are blocked lock‑waiting on?
>>> Didn't
>>> expect this to work, thanks for the hint.
>> 
>> It's a common misconception (especially when grown up with Windows)
>> that "rm" removes a file: Actually it "unlinks" the name from the
>> inode. As long as the inode is opened by the kernel, the file (as seen
>> from the kernel's perspective) still exists.
> 
> I haven't really grown up with Windows ;P

OK!

> 
> Assuming `flock` (the binary) uses the flock() syscall it still needs to 
> go
> through VFS to get a file descriptor. So if a second process calls 
> `flock`
> after the first one has already unlinked the name from the inode, the 
> lock
> file will not be found and thus be re‑created, breaking the locking
> mechanism.
> 
> Or did I miss something and the second flock somehow obtains the inode
> number of the old lock?

I guess any new process arriving late cannot aquire the (same) lock once the
first process has removed the name when the crowd has finished.
But as the remove itself locks, it means that the remove will happen only
after the lock has been released (requests being server FCFS (FIrst Come, First
Serviced).
If there's one process late, a new lock will be created, and likewise any new
arrivals will use that lock, until the lock is free.

Doesn't look like a 100% solution to me, but it might work. 

> 
> 
> Best regards,
> 
> Alex



___
systemd-devel mailing list
systemd-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/systemd-devel