projects
/
openwrt
/
staging
/
blogic.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
6c02b7b
)
xen/granttable: Disable grant v2 for HVM domains.
author
Konrad Rzeszutek Wilk
<
[email protected]
>
Wed, 25 Jan 2012 05:13:20 +0000
(
00:13
-0500)
committer
Konrad Rzeszutek Wilk
<
[email protected]
>
Fri, 27 Jan 2012 16:14:16 +0000
(11:14 -0500)
As proper scaffolding for supporting error status is not yet
implemented.
BUG: unable to handle kernel NULL pointer dereference at
0000000000000400
IP: [<
ffffffff81375ae9
>] gnttab_end_foreign_access_ref_v2+0x29/0x40
PGD
32aa3067
PUD
32a87067
PMD 0
Oops: 0000 [#1] PREEMPT SMP
CPU 0
Modules linked in: sg sr_mod cdrom ata_generic ata_piix libata scsi_mod xen_blkfront xen_netfront fb_sys_fops sysimgblt sysfillrect syscopyarea xen_kbdfront
cmd
Pid: 2307, comm: ip Not tainted 3.3.0-rc1 #1 Xen HVM domU
RIP: 0010:[<
ffffffff81375ae9
>] [<
ffffffff81375ae9
>] gnttab_end_foreign_access_ref_v2+0x29/0x40
RSP: 0018:
ffff88003be03d38
EFLAGS:
00010206
RAX:
0000000000000000
RBX:
ffff880033210640
RCX:
0000000000000040
RDX:
0000000000002000
RSI:
0000000000000000
RDI:
0000000000000200
RBP:
ffff88003be03d38
R08:
0000000000000101
R09:
0000000000000000
R10:
dead000000100100
R11:
0000000000000000
R12:
ffff88003be03e48
R13:
0000000000000001
R14:
ffff880039461c00
R15:
0000000000000200
FS:
00007fb1f84ec700
(0000) GS:
ffff88003be00000
(0000) knlGS:
0000000000000000
...
Signed-off-by: Konrad Rzeszutek Wilk <
[email protected]
>
drivers/xen/grant-table.c
patch
|
blob
|
history
diff --git
a/drivers/xen/grant-table.c
b/drivers/xen/grant-table.c
index 1cd94daa71db8379443115dd052bc5705fc74432..b4d4eac761db6241042e60db3b604caa9150e91e 100644
(file)
--- a/
drivers/xen/grant-table.c
+++ b/
drivers/xen/grant-table.c
@@
-948,9
+948,12
@@
static void gnttab_request_version(void)
int rc;
struct gnttab_set_version gsv;
- gsv.version = 2;
+ if (xen_hvm_domain())
+ gsv.version = 1;
+ else
+ gsv.version = 2;
rc = HYPERVISOR_grant_table_op(GNTTABOP_set_version, &gsv, 1);
- if (rc == 0) {
+ if (rc == 0
&& gsv.version == 2
) {
grant_table_version = 2;
gnttab_interface = &gnttab_v2_ops;
} else if (grant_table_version == 2) {