|
|
|
|
|
|
|
|
|
|
xen-devel
RE: [Xen-devel] [PATCH] Fix write parameter masking for 32-bit guests.
Well, the method in the previous mail may be a little complex -- I think the
simplest way is:
- if (!req->data_is_ptr && (req->dir == IOREQ_WRITE) && (req->size !=
sizeof(req->data)))
+ if (!req->data_is_ptr && (req->dir == IOREQ_WRITE) && (req->size !=
sizeof(long)))
Since sizeof(long) = 4 in 32-bit platform, and = 8 in 64-bit platform, the
code here can work properly in 32/64-bit platforms.
-- Dexuan
-----Original Message-----
From: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
[mailto:xen-devel-bounces@xxxxxxxxxxxxxxxxxxx] On Behalf Of Cui, Dexuan
Sent: 2007年5月13日 15:49
To: xen-devel@xxxxxxxxxxxxxxxxxxx
Cc: Keir Fraser
Subject: [Xen-devel] [PATCH] Fix write parameter masking for 32-bit guests.
Changeset 15046:e527b4ff1948 breaks 32-bit HVM guest: when req->size is
4, "1UL << 32" returns 1 in IA32 system, so the mask becomes 0 wrongly.
The attached patch fixes this by using 64-bit left-shift.
Signed-off-by: Dexuan Cui <dexuan.cui@xxxxxxxxx>
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
|
|
|
|
|