lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20140228055629.GA847@srcf.ucam.org>
Date:	Fri, 28 Feb 2014 05:56:29 +0000
From:	Matthew Garrett <mjg59@...f.ucam.org>
To:	"Li, Aubrey" <aubrey.li@...ux.intel.com>
Cc:	"alan@...ux.intel.com" <alan@...ux.intel.com>,
	linux-kernel@...r.kernel.org,
	"H. Peter Anvin" <hpa@...ux.intel.com>, Len.Brown@...el.com,
	Adam Williamson <awilliam@...hat.com>
Subject: Re: [patch] x86: Introduce BOOT_EFI and BOOT_CF9 into the reboot
 sequence loop

On Fri, Feb 28, 2014 at 01:22:37PM +0800, Li, Aubrey wrote:
> On 2014/2/28 12:56, Matthew Garrett wrote:
> > EFI reboot is still somewhat unreliable - it may be safe after the 
> > recent patches to provide a 1:1 mapping.
> 
> So it's acceptable to put EFI in the default list.

Probably, once we've got those patches landed (I've lost track of 
whether they're in 3.13 or aimed at 3.14)

> > CF9 is, as far as I know, not  part of any spec, so it seems like a bad
> > idea to put it in the default list.
> 
> Any hurt known if put it in the default list?

Mm. Not all x86 platforms support cf8/cf9 (Moorestown, for instance) and 
so it's theoretically possible that they'd put some different hardware 
there instead. But then, Moorestown probably has its own reboot code, so 
that may not matter?

> > 
> > What do the ACPI reboot vectors look like on these systems?
> 
> Reset register address: 0xCF9
> Value to cause reset:   0x6

Huh. But that's almost exactly what the PCI reboot code would do. Why 
does the PCI method work but the ACPI one fail? Does it really depend on 
ORing the original value with the reset value? Or is the timing just 
somehow marginal?

> > This is definitely incorrect. The ACPI write *must* occur twice in order 
> > to be effective on various systems. EFI shouldn't be attempted until 
> > after the second ACPI write.
> > 
> 
> Do we have any spec mentioned that?

Nope. This is entirely unspecified, it's just how things work - several 
vendors use cf9 for the ACPI reboot vector, and there have to be two 
writes to cf9 to trigger the reboot. Windows attempts the write twice, 
and as a result things work.

-- 
Matthew Garrett | mjg59@...f.ucam.org
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ