diff --git a/patches.fixes/xen-blkfront-connect-overflow.patch b/patches.fixes/xen-blkfront-connect-overflow.patch new file mode 100644 index 0000000..4ba1b2c --- /dev/null +++ b/patches.fixes/xen-blkfront-connect-overflow.patch @@ -0,0 +1,14 @@ +barrier variable is int, not long. This overflow caused another variable +override: err (in PV code) and binfo (in xenlinux code). + +--- linux-2.6.38.3/drivers/xen/blkfront/blkfront.c.orig 2011-05-02 01:56:29.572723580 +0200 ++++ linux-2.6.38.3/drivers/xen/blkfront/blkfront.c 2011-05-02 12:44:20.512128661 +0200 +@@ -364,7 +364,7 @@ + } + + err = xenbus_gather(XBT_NIL, info->xbdev->otherend, +- "feature-barrier", "%lu", &barrier, ++ "feature-barrier", "%u", &barrier, + NULL); + /* + * If there's no "feature-barrier" defined, then it means diff --git a/series.conf b/series.conf index 614145e..056f435 100644 --- a/series.conf +++ b/series.conf @@ -844,3 +844,4 @@ patches.xen/xen-x86_64-unmapped-initrd patches.qubes/nuke_balloon_minimum_target.patch + patches.fixes/xen-blkfront-connect-overflow.patch