Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 18 Dec 2017 21:57:38 +0000
From:      bugzilla-noreply@freebsd.org
To:        freebsd-bugs@FreeBSD.org
Subject:   [Bug 224437] [PATCH] powerpc64: Fix cookie verification on boot
Message-ID:  <bug-224437-8@https.bugs.freebsd.org/bugzilla/>

next in thread | raw e-mail | index | archive | help
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D224437

            Bug ID: 224437
           Summary: [PATCH] powerpc64: Fix cookie verification on boot
           Product: Base System
           Version: CURRENT
          Hardware: powerpc
                OS: Any
            Status: New
          Keywords: patch
          Severity: Affects Many People
          Priority: ---
         Component: kern
          Assignee: freebsd-bugs@FreeBSD.org
          Reporter: gromero@br.ibm.com
          Keywords: patch

Created attachment 188943
  --> https://bugs.freebsd.org/bugzilla/attachment.cgi?id=3D188943&action=
=3Dedit
Patch for this bug

Currently kernel fails to boot on PPC64 because the cookie value
passed to kernel by the loader and which should be regarded as a 32-bit
value is promoted on 64-bit machines to unsigned long (aka vm_offset_t)
and thus results in 0xfffffffffb5d104d instead of 0xfb5d104d. That
causes kernels to fail booting even if the loader is update to the most
recent one by the user, i.e. user falls into "mountroot>" prompt and
has to pass again the boot device to continue to boot process.

So after a new kernel updated boot shows:

Loader variables:

Manual root filesystem specification:
  <fstype>:<device> [options]
      Mount <device> using filesystem <fstype>
      and with the specified (optional) option list.

    eg. ufs:/dev/da0s1a
        zfs:tank
        cd9660:/dev/cd0 ro
          (which is equivalent to: mount -t cd9660 -o ro /dev/cd0 /)

  ?               List valid disk boot devices
  .               Yield 1 second (for background tasks)
  <empty line>    Abort manual input

mountroot>=20


That commit fixes that issue by ensuring that the cookie passed from loader
to kernel is a 32-bit unsigned value both on PPC32 and PPC64 machines.

--=20
You are receiving this mail because:
You are the assignee for the bug.=



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-224437-8>