Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

dhcp4 fsm timer is abnormally cancelled while validating lease #798

Closed
ken23421 opened this issue Jul 4, 2019 · 1 comment · Fixed by #799

Comments

@ken23421
Copy link
Contributor

commented Jul 4, 2019

There're several interfaces in my system, and all of the ifcfg files have these two options:

BOOTPROTO='dhcp'
STARTMODE='auto'

So all interfaces should be set up simultaneously after reboot.
I continuously reboot the system and check if the eth0 is brought up.
Sometimes I found that the eth0 cannot be up and hangs in setup-in-progress status.
I checked the system message with the WICKED_LOG_LEVEL=debug3 config, and it looks that eth0's timer used to timeout validating state is abnormally cancelled by other interface, say eth6, so that the eth0 is trapped in the validating state.
Please search eth0's fsm timer 0x5593c13d1770 in the following log:

Jun 04 08:44:45.579522 DL380G10R3S12 wickedd-dhcp4[1368]: eth0: setting fsm timeout to 200 msec
Jun 04 08:44:45.579543 DL380G10R3S12 wickedd-dhcp4[1368]: ni_timer_register: new timer 0x5593c13d1770 id 1e, callback 0x7f2431562e70/0x5593c13ce870
Jun 04 08:44:45.579562 DL380G10R3S12 wickedd-dhcp4[1368]: __ni_timer_arm: timer 0x5593c13d1770 timeout 200
Jun 04 08:44:45.579577 DL380G10R3S12 wickedd-dhcp4[1368]: ni_timer_next_timeout: timer 0x5593c133ef00 timeout 96
Jun 04 08:44:45.579614 DL380G10R3S12 wickedd-dhcp4[1368]: eth6: incoming arp packet
Jun 04 08:44:45.579635 DL380G10R3S12 wickedd-dhcp4[1368]: eth7: incoming arp packet
Jun 04 08:44:45.579650 DL380G10R3S12 wickedd-dhcp4[1368]: ni_timer_next_timeout: timer 0x5593c133ef00 timeout 96
Jun 04 08:44:45.675867 DL380G10R3S12 wickedd-dhcp4[1368]: ni_timer_next_timeout: timer 0x5593c133ef00 expired (now=1559655885.675830, expires=1559655885.675692)
Jun 04 08:44:45.675888 DL380G10R3S12 wickedd-dhcp4[1368]: eth6: timeout in state VALIDATING
Jun 04 08:44:45.675905 DL380G10R3S12 wickedd-dhcp4[1368]: eth6: Successfully validated DHCPv4 address 20.10.24.48
Jun 04 08:44:45.688121 DL380G10R3S12 wickedd-dhcp4[1368]: eth6: committing lease
Jun 04 08:44:45.688143 DL380G10R3S12 wickedd-dhcp4[1368]: __ni_timer_disarm: timer 0x5593c13d1770 found
Jun 04 08:44:45.688156 DL380G10R3S12 wickedd-dhcp4[1368]: ni_timer_cancel: released timer 0x5593c13d1770
Jun 04 08:44:45.688170 DL380G10R3S12 wickedd-dhcp4[1368]: eth6: schedule renewal of lease in 345600 seconds
Jun 04 08:44:45.688182 DL380G10R3S12 wickedd-dhcp4[1368]: eth6: setting fsm timeout to 345600000 msec

eth6's defer timer points to eth0's fsm timer (0x5593c13d1770).

@ken23421

This comment has been minimized.

Copy link
Contributor Author

commented Jul 4, 2019

mtomaschewski added a commit that referenced this issue Aug 15, 2019
Merge tag 'version-0.6.55' into sle15-sp1-next
version 0.6.55

- dhcp6: do not default to a /64 address prefix-length (bsc#1132280)
  Add an address-length aka DHCLIENT6_ADDRESS_LENGTH ifcfg option, which
  permits to specify explicit prefix-length to use for the DHCPv6 address
  and override detection using RA prefix info and a default to /128.
- time: use boot time for timer instead of real time (bsc#1129986)
- dhcp: Consistently log dhcp xid and enabled to log dhcp6 timings line.
- dhcp6: lower unexpected xid messages to debug level
- systemd: change to depend on udev settle service (bsc#1136034,bsc#1132774)
  Calling udevadm settle directly caused systemd to kill wicked services.
- bridge: honour ifcfg LLADDR and set link address (bsc#1042123,boo#1142670)
- rfkill: fix switch statement to check enum variable not a constant (bsc#1140117)
- man: ifcfg-ovs-bridge(5): recommend STARTMODE=nfsroot
- dhcp4: nullify defer timer pointer when timeout (#798)
- dhcp4: fix to request routing options when custom options are used (bsc#1132326)
- testing: add ifbind.sh helper script allowing to test hotplugging
mtomaschewski added a commit that referenced this issue Aug 15, 2019
Merge tag 'version-0.6.55' into sle15
version 0.6.55

- dhcp6: do not default to a /64 address prefix-length (bsc#1132280)
  Add an address-length aka DHCLIENT6_ADDRESS_LENGTH ifcfg option, which
  permits to specify explicit prefix-length to use for the DHCPv6 address
  and override detection using RA prefix info and a default to /128.
- time: use boot time for timer instead of real time (bsc#1129986)
- dhcp: Consistently log dhcp xid and enabled to log dhcp6 timings line.
- dhcp6: lower unexpected xid messages to debug level
- systemd: change to depend on udev settle service (bsc#1136034,bsc#1132774)
  Calling udevadm settle directly caused systemd to kill wicked services.
- bridge: honour ifcfg LLADDR and set link address (bsc#1042123,boo#1142670)
- rfkill: fix switch statement to check enum variable not a constant (bsc#1140117)
- man: ifcfg-ovs-bridge(5): recommend STARTMODE=nfsroot
- dhcp4: nullify defer timer pointer when timeout (#798)
- dhcp4: fix to request routing options when custom options are used (bsc#1132326)
- testing: add ifbind.sh helper script allowing to test hotplugging
mtomaschewski added a commit that referenced this issue Aug 15, 2019
Merge tag 'version-0.6.55' into sle12-sp4
version 0.6.55

- dhcp6: do not default to a /64 address prefix-length (bsc#1132280)
  Add an address-length aka DHCLIENT6_ADDRESS_LENGTH ifcfg option, which
  permits to specify explicit prefix-length to use for the DHCPv6 address
  and override detection using RA prefix info and a default to /128.
- time: use boot time for timer instead of real time (bsc#1129986)
- dhcp: Consistently log dhcp xid and enabled to log dhcp6 timings line.
- dhcp6: lower unexpected xid messages to debug level
- systemd: change to depend on udev settle service (bsc#1136034,bsc#1132774)
  Calling udevadm settle directly caused systemd to kill wicked services.
- bridge: honour ifcfg LLADDR and set link address (bsc#1042123,boo#1142670)
- rfkill: fix switch statement to check enum variable not a constant (bsc#1140117)
- man: ifcfg-ovs-bridge(5): recommend STARTMODE=nfsroot
- dhcp4: nullify defer timer pointer when timeout (#798)
- dhcp4: fix to request routing options when custom options are used (bsc#1132326)
- testing: add ifbind.sh helper script allowing to test hotplugging
mtomaschewski added a commit that referenced this issue Aug 15, 2019
Merge tag 'version-0.6.55' into sle12-sp3-next
version 0.6.55

- dhcp6: do not default to a /64 address prefix-length (bsc#1132280)
  Add an address-length aka DHCLIENT6_ADDRESS_LENGTH ifcfg option, which
  permits to specify explicit prefix-length to use for the DHCPv6 address
  and override detection using RA prefix info and a default to /128.
- time: use boot time for timer instead of real time (bsc#1129986)
- dhcp: Consistently log dhcp xid and enabled to log dhcp6 timings line.
- dhcp6: lower unexpected xid messages to debug level
- systemd: change to depend on udev settle service (bsc#1136034,bsc#1132774)
  Calling udevadm settle directly caused systemd to kill wicked services.
- bridge: honour ifcfg LLADDR and set link address (bsc#1042123,boo#1142670)
- rfkill: fix switch statement to check enum variable not a constant (bsc#1140117)
- man: ifcfg-ovs-bridge(5): recommend STARTMODE=nfsroot
- dhcp4: nullify defer timer pointer when timeout (#798)
- dhcp4: fix to request routing options when custom options are used (bsc#1132326)
- testing: add ifbind.sh helper script allowing to test hotplugging
mtomaschewski added a commit that referenced this issue Aug 15, 2019
Merge tag 'version-0.6.55' into sle12-sp2
version 0.6.55

- dhcp6: do not default to a /64 address prefix-length (bsc#1132280)
  Add an address-length aka DHCLIENT6_ADDRESS_LENGTH ifcfg option, which
  permits to specify explicit prefix-length to use for the DHCPv6 address
  and override detection using RA prefix info and a default to /128.
- time: use boot time for timer instead of real time (bsc#1129986)
- dhcp: Consistently log dhcp xid and enabled to log dhcp6 timings line.
- dhcp6: lower unexpected xid messages to debug level
- systemd: change to depend on udev settle service (bsc#1136034,bsc#1132774)
  Calling udevadm settle directly caused systemd to kill wicked services.
- bridge: honour ifcfg LLADDR and set link address (bsc#1042123,boo#1142670)
- rfkill: fix switch statement to check enum variable not a constant (bsc#1140117)
- man: ifcfg-ovs-bridge(5): recommend STARTMODE=nfsroot
- dhcp4: nullify defer timer pointer when timeout (#798)
- dhcp4: fix to request routing options when custom options are used (bsc#1132326)
- testing: add ifbind.sh helper script allowing to test hotplugging
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
1 participant
You can’t perform that action at this time.