All of lore.kernel.org
 help / color / mirror / Atom feed
From: George Dunlap <george.dunlap@eu.citrix.com>
To: Jan Beulich <JBeulich@suse.com>
Cc: "Tim (Xen.org)" <tim@xen.org>,
	"xen-devel@lists.xen.org" <xen-devel@lists.xen.org>,
	Eddie Dong <eddie.dong@intel.com>,
	Suravee Suthikulpanit <suravee.suthikulpanit@amd.com>,
	Roger Pau Monne <roger.pau@citrix.com>
Subject: Re: Bug: Windows 2003 fails to install on xen-unstable tip
Date: Tue, 23 Apr 2013 15:21:14 +0100	[thread overview]
Message-ID: <517698DA.3060301@eu.citrix.com> (raw)
In-Reply-To: <5176A20A02000078000CFFD3@nat28.tlf.novell.com>

On 23/04/13 14:00, Jan Beulich wrote:
>>>> On 23.04.13 at 13:52, George Dunlap <george.dunlap@eu.citrix.com> wrote:
>> On 23/04/13 12:33, Jan Beulich wrote:
>>>>>> On 23.04.13 at 12:38, George Dunlap <george.dunlap@eu.citrix.com> wrote:
>>>> Do you not have boot images of Windows 2003 that you can test yourself?
>>> In fact I don't have any non-machine-bound Windows images at
>>> all. Let me go see whether my American colleagues could help out
>>> here...
>> So I manually broke the patch down into 5 component parts (attached).
>> The installer works just fine for the first 3 -- the ones actually
>> mentioned in the patch changeset.  It breaks when the handler is moved
>> into the generic IRQ timer code rather than having its own callback (I
>> think that's what's happening there, anyway).
> Just went through that change again: The only thing that changes
> is that while rtc_periodic_cb() (simply setting REG_C flags) got
> called at the end of pt_intr_post(), rtc_periodic_interrupt() now
> gets called from pt_update_irq(), and therefore takes care of
> asserting the IRQ itself (which originally happened inside
> pt_update_irq()) along with setting REG_C flags. Bottom line -
> all the patch changes is when exactly REG_PF (and possibly
> REG_IRQF) get set, and whether the IRQ actually gets asserted.

So that last bit seems to do these things:
a. Changes when the handling happens in the Xen interrupt handler
b. Causes assert/deassert to only happen if !(C.PF) && (B.PIE)
   (Before it happened unconditionally)
c. Causes C.IRQF=1 only if (same condition above)
  (Before it happened unconditionally)
d. Runs destroy_periodic_timer() if C.PF already

So just to figure out what it was that w2k3 wanted, I tried a bunch of 
variations:

* All of above
  BAD
* a only; always assert/deassert + set C.IRQF
  GOOD
* always assert/deassert, but leave destroy_periodic_timer and IRQF 
setting alone
  FAIL
* destroy if C.PF, assert/deassert, set IRQF if setting C.PF (don't 
check B.PIE)
  FAIL
* destroy if C.PF, always assert/deassert + set C.IRQF
  FAIL
* never destroy, assert/deassert + set C.IRQF if setting C.PF
  FAIL
* never destroy, assert/deassert + set C.IRQF if !C.IRQF
  FAIL

In short, it seems that w2k3 basically expects an unlimited number of 
attempts to actually deliver the interrupt.

Let me see if I can get a patch to the tip of unstable (with all the 
other intermediate changes)...

  -George

  reply	other threads:[~2013-04-23 14:21 UTC|newest]

Thread overview: 70+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-04-16 14:22 Bug: Windows 2003 fails to install on xen-unstable tip George Dunlap
2013-04-16 14:34 ` Jan Beulich
2013-04-16 14:35   ` George Dunlap
2013-04-17  8:27     ` Jan Beulich
2013-04-17 18:13       ` George Dunlap
2013-04-18  8:13         ` Jan Beulich
2013-04-18  9:03           ` George Dunlap
2013-04-19 10:05         ` Jan Beulich
2013-04-19 10:44           ` Roger Pau Monné
2013-04-19 12:47             ` Jan Beulich
2013-04-19 13:28               ` Roger Pau Monné
2013-04-19 14:33                 ` Jan Beulich
2013-04-19 14:41                   ` Roger Pau Monné
2013-04-19 13:51               ` George Dunlap
2013-04-22 11:05                 ` Jan Beulich
2013-04-22 15:32                   ` George Dunlap
2013-04-23 10:25                     ` Jan Beulich
2013-04-23 10:38                       ` George Dunlap
2013-04-23 11:33                         ` Jan Beulich
2013-04-23 11:52                           ` George Dunlap
2013-04-23 11:57                             ` George Dunlap
2013-04-23 12:45                               ` Jan Beulich
2013-04-23 12:25                             ` Jan Beulich
2013-04-23 13:00                             ` Jan Beulich
2013-04-23 14:21                               ` George Dunlap [this message]
2013-04-23 14:43                                 ` jacek burghardt
2013-04-23 14:47                                   ` George Dunlap
2013-04-23 14:55                                 ` Jan Beulich
2013-04-23 14:57                                   ` George Dunlap
2013-04-23 15:02                                     ` Jan Beulich
2013-04-23 15:46                                       ` George Dunlap
2013-04-23 16:04                                         ` Jan Beulich
2013-04-23 16:12                                           ` George Dunlap
2013-04-23 16:30                                             ` Tim Deegan
2013-04-24 16:09                                               ` Jan Beulich
2013-04-25 16:02                         ` Jan Beulich
2013-04-25 16:34                           ` Tim Deegan
2013-04-25 16:40                             ` George Dunlap
2013-04-26  6:43                             ` Jan Beulich
2013-04-26 16:10                             ` Jan Beulich
2013-04-26 16:56                               ` Ian Campbell
2013-04-29  6:53                                 ` Jan Beulich
2013-04-29  8:20                                   ` Ian Campbell
2013-04-29  8:37                                     ` Jan Beulich
2013-04-29  8:40                                       ` Paul Durrant
2013-04-29  8:47                                         ` Jan Beulich
2013-04-29  9:15                                           ` Paul Durrant
2013-04-29  9:53                                             ` Paul Durrant
2013-04-29 10:43                                               ` Jan Beulich
2013-05-01 14:49                                           ` Paul Durrant
2013-05-02  6:32                                             ` Jan Beulich
2013-05-02  8:23                                               ` Paul Durrant
2013-04-29  8:37                                     ` Paul Durrant
2013-04-29 10:29                                     ` Tim Deegan
2013-04-29 11:07                                       ` Ian Campbell
2013-04-29 11:27                                         ` Jan Beulich
2013-04-29 11:40                                           ` Ian Campbell
2013-04-29 11:35                                         ` Tim Deegan
2013-04-29 11:42                                           ` Jan Beulich
2013-04-29 11:44                                           ` Ian Campbell
2013-04-29 11:49                                             ` Tim Deegan
2013-04-29 11:57                                               ` Ian Campbell
2013-04-29 12:01                                               ` Jan Beulich
2013-04-29  8:35                                 ` Paul Durrant
2013-04-23 10:55                       ` Tim Deegan
2013-04-16 15:24 ` Ren, Yongjie
2013-04-16 15:32   ` George Dunlap
2013-04-16 15:37     ` Tim Deegan
2013-04-16 15:56       ` George Dunlap
2013-04-18  2:21     ` Ren, Yongjie

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=517698DA.3060301@eu.citrix.com \
    --to=george.dunlap@eu.citrix.com \
    --cc=JBeulich@suse.com \
    --cc=eddie.dong@intel.com \
    --cc=roger.pau@citrix.com \
    --cc=suravee.suthikulpanit@amd.com \
    --cc=tim@xen.org \
    --cc=xen-devel@lists.xen.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.