Date: Tue, 3 Sep 2013 11:39:24 +0200 From: =?UTF-8?B?Um9nZXIgUGF1IE1vbm7DqQ==?= <roger.pau@citrix.com> To: "Justin T. Gibbs" <gibbs@freebsd.org> Cc: "freebsd-xen@freebsd.org" <freebsd-xen@freebsd.org> Subject: Re: blkback making assumptions about the id of the requests Message-ID: <5225AE4C.1030108@citrix.com> In-Reply-To: <D8D631B6-3DB4-4F7C-A0B0-590C7B5FA250@freebsd.org> References: <5224D1DE.8080906@citrix.com> <D8D631B6-3DB4-4F7C-A0B0-590C7B5FA250@freebsd.org>
next in thread | previous in thread | raw e-mail | index | archive | help
--------------030404050904070606040801 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit On 02/09/13 22:03, Justin T. Gibbs wrote: > On Sep 2, 2013, at 11:58 AM, Roger Pau Monné <roger.pau@citrix.com> wrote: > >> Hello, >> >> While playing with driver domains using FreeBSD I've found out that >> blkback in FreeBSD makes assumptions about the id of a request instead >> of actually using the id of the request on the shared ring. This seems >> wrong to me, since a frontend might choose whatever ids it like for the >> requests (like using 100-131 instead of 0-31). The patch attached fixes >> it by copying the id from the request on the ring to blkback internal >> request structure. >> >> Roger. > > It looks to me like the id is set in xbb_dispatch_io(). Why it is done there > and not earlier, I don't recall. Sorry, I've missed to spot that the id is set there, the problem is that requests of type BLKIF_OP_FLUSH_DISKCACHE never reach that point, so they end up having incorrect requests ids. I've reworded the commit message and removed the late setting of the request id, now it is set earlier so requests of type flush also have a valid id when writing the response on the ring. --------------030404050904070606040801 Content-Type: text/plain; charset="UTF-8"; x-mac-type=0; x-mac-creator=0; name="0001-xen-blkback-set-request-id-correctly-for-flush-OP.patch" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="0001-xen-blkback-set-request-id-correctly-for-flush-OP.patch" RnJvbSA4MGRjM2NiZjVlZDg4YmU4OTBkMjhhZTE5OGFiNjk5NjhjYWY5ZDYzIE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBSb2dlciBQYXUgTW9ubmUgPHJvZ2VyLnBhdUBjaXRy aXguY29tPgpEYXRlOiBNb24sIDIgU2VwIDIwMTMgMTU6NTE6NDcgKzAyMDAKU3ViamVjdDog W1BBVENIXSB4ZW4tYmxrYmFjazogc2V0IHJlcXVlc3QgaWQgY29ycmVjdGx5IGZvciBmbHVz aCBPUAoKT3JpZ2luYWxseSB0aGUgaW50ZXJuYWwgcmVxdWVzdCBpZCBpcyBzZXQgb24geGJi X2Rpc3BhdGNoX2lvLCBidXQKcmVxdWVzdHMgb2YgdHlwZSBCTEtJRl9PUF9GTFVTSF9ESVNL Q0FDSEUgbmV2ZXIgcmVhY2ggdGhpcyBwb2ludCwgc28KdGhleSBlbmQgdXAgaGF2aW5nIHdy b25nIHJlcXVlc3QgaWRzIHdoZW4gd3JpdHRpbmcgdGhlIHJlc3BvbnNlIG9uIHRoZQpyaW5n LCBicmVha2luZyB0aGUgZnJvbnRlbmQuCgpUaGlzIHBhdGNoIGZpeGVzIGl0IGJ5IHNldHRp bmcgdGhlIHJlcXVlc3QgaWQgZm9yIGFsbCByZXF1ZXN0IHR5cGVzCmVhcmxpZXIsIHNvIHRo YXQgQkxLSUZfT1BfRkxVU0hfRElTS0NBQ0hFIG9wZXJhdGlvbnMgaGF2ZSB0aGUgcmlnaHQK aWQuCi0tLQogc3lzL2Rldi94ZW4vYmxrYmFjay9ibGtiYWNrLmMgfCAgICAyICstCiAxIGZp bGVzIGNoYW5nZWQsIDEgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbnMoLSkKCmRpZmYgLS1n aXQgYS9zeXMvZGV2L3hlbi9ibGtiYWNrL2Jsa2JhY2suYyBiL3N5cy9kZXYveGVuL2Jsa2Jh Y2svYmxrYmFjay5jCmluZGV4IDJhMjIwYzQuLmZhOWE3NDQgMTAwNjQ0Ci0tLSBhL3N5cy9k ZXYveGVuL2Jsa2JhY2svYmxrYmFjay5jCisrKyBiL3N5cy9kZXYveGVuL2Jsa2JhY2svYmxr YmFjay5jCkBAIC0xMjM5LDYgKzEyMzksNyBAQCB4YmJfZ2V0X3Jlc291cmNlcyhzdHJ1Y3Qg eGJiX3NvZnRjICp4YmIsIHN0cnVjdCB4YmJfeGVuX3JlcWxpc3QgKipyZXFsaXN0LAogCiAJ bnJlcS0+cmVxbGlzdCA9ICpyZXFsaXN0OwogCW5yZXEtPnJlcV9yaW5nX2lkeCA9IHJpbmdf aWR4OworCW5yZXEtPmlkID0gcmluZ19yZXEtPmlkOwogCiAJaWYgKHhiYi0+YWJpICE9IEJM S0lGX1BST1RPQ09MX05BVElWRSkgewogCQliY29weShyaW5nX3JlcSwgJm5yZXEtPnJpbmdf cmVxX3N0b3JhZ2UsIHNpemVvZigqcmluZ19yZXEpKTsKQEAgLTE2MDgsNyArMTYwOSw2IEBA IHhiYl9kaXNwYXRjaF9pbyhzdHJ1Y3QgeGJiX3NvZnRjICp4YmIsIHN0cnVjdCB4YmJfeGVu X3JlcWxpc3QgKnJlcWxpc3QpCiAJCXJlcV9yaW5nX2lkeAkgICAgICA9IG5yZXEtPnJlcV9y aW5nX2lkeDsKIAkJbnJfc2VjdHMgICAgICAgICAgICAgID0gMDsKIAkJbnNlZyAgICAgICAg ICAgICAgICAgID0gcmluZ19yZXEtPm5yX3NlZ21lbnRzOwotCQlucmVxLT5pZCAgICAgICAg ICAgICAgPSByaW5nX3JlcS0+aWQ7CiAJCW5yZXEtPm5yX3BhZ2VzICAgICAgICA9IG5zZWc7 CiAJCW5yZXEtPm5yXzUxMmJfc2VjdG9ycyA9IDA7CiAJCXJlcV9zZWdfaWR4CSAgICAgID0g MDsKLS0gCjEuNy43LjUgKEFwcGxlIEdpdC0yNikKCgo= --------------030404050904070606040801--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?5225AE4C.1030108>