From mboxrd@z Thu Jan 1 00:00:00 1970 From: Len Brown Subject: Re: [Resend][PATCH] ACPI / EC: Remove race between EC driver and suspend process (rev. 3) Date: Thu, 04 Mar 2010 00:55:53 -0500 (EST) Message-ID: References: <201002272140.36891.rjw@sisk.pl> <201003040152.58437.rjw@sisk.pl> Mime-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Return-path: Received: from vms173015pub.verizon.net ([206.46.173.15]:53289 "EHLO vms173015pub.verizon.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751909Ab0CDF4M (ORCPT ); Thu, 4 Mar 2010 00:56:12 -0500 In-reply-to: <201003040152.58437.rjw@sisk.pl> Sender: linux-acpi-owner@vger.kernel.org List-Id: linux-acpi@vger.kernel.org To: "Rafael J. Wysocki" Cc: Alexey Starikovskiy , ACPI Devel Maling List , pm list , LKML , Maxim Levitsky Isn't the problem at hand that the boot-kernel stops in mid-transaction, and the resumed hibernate image then blunders forward with its first transaction only to find the EC in an intermediate state? If yes, I then making the transaction atomic WRT the boot kernel stopping should fix the problem. The patch sets a FROZEN bit, and subsequent requests for EC transactions simply fail. How do we know that we set the bit at the right time? What transactions or parts of transactions will fail, and what are the consequences of those failures? thanks, Len Brown, Intel Open Source Technology Center