On Fri, Jan 18, 2008 at 05:17:26PM +0100, Rolf Sommerhalder wrote:
> Hello misc,
>
> after a successful upgrade of a X4100 M2 to the latest snapshot, the
> server fails to reboot after having issued the reboot(8) command as
> root. This was working fine before with the snapshot which was from
> early December (also i386 .mp, ACPI enabled manually back then, which
> is now implicit).
>
> Last output on the console is (which is normal):
> syncing disks...done
> rebooting...
>
> Then nothing happens until I reset the server manually (from remote
> via iLOM). I have not touched /etc/rc.shutdown, e.g. powerdown=NO.
>
> Otherwise, I have not observed any regressions yet, although this
> firewall/gateway machine runs a comprehensive collection of interfaces
> (trunks, vlans, carps), pf rules, and some proxies as peer in a
> cluster. But I'll wait with the upgrade from remote of the other,
> primary cluster node until the reboot works :-)
>
> Thanks for any hints what I should try first.
>
> Regards,
> Rolf
Try this diff:
Index: sys/dev/acpi/acpi.c
===================================================================
RCS file: /cvs/src/sys/dev/acpi/acpi.c,v
retrieving revision 1.112
diff -u -p -r1.112 acpi.c
--- sys/dev/acpi/acpi.c 5 Jan 2008 18:26:30 -0000 1.112
+++ sys/dev/acpi/acpi.c 19 Jan 2008 04:00:33 -0000
@@ -1196,8 +1196,11 @@ acpi_reset(void)
fadt = acpi_softc->sc_fadt;
/* FADT_RESET_REG_SUP is not properly set in some implementations */
- if (acpi_softc->sc_revision <= 1 || fadt->reset_reg.address == 0)
+ if (acpi_softc->sc_revision <= 1 ||
+ !(fadt->flags & FADT_RESET_REG_SUP) || fadt->reset_reg.address == 0)
return;
+
+ printf("ACPI reset!\n");
value = fadt->reset_value;