From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1MGg1R-0006II-Lb for qemu-devel@nongnu.org; Tue, 16 Jun 2009 17:16:49 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1MGg1N-00066x-Td for qemu-devel@nongnu.org; Tue, 16 Jun 2009 17:16:49 -0400 Received: from [199.232.76.173] (port=36796 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1MGg1N-00066d-Pn for qemu-devel@nongnu.org; Tue, 16 Jun 2009 17:16:45 -0400 Received: from verein.lst.de ([213.95.11.210]:39236) by monty-python.gnu.org with esmtps (TLS-1.0:DHE_RSA_3DES_EDE_CBC_SHA1:24) (Exim 4.60) (envelope-from ) id 1MGg1N-0002pz-9l for qemu-devel@nongnu.org; Tue, 16 Jun 2009 17:16:45 -0400 Date: Tue, 16 Jun 2009 23:16:42 +0200 From: Christoph Hellwig Subject: Re: [Qemu-devel] Regression opening read-only cdroms Message-ID: <20090616211642.GA28079@lst.de> References: <4A37896C.8050208@redhat.com> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="9jxsPFA5p3P2qPhR" Content-Disposition: inline In-Reply-To: List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Blue Swirl Cc: qemu-devel , Avi Kivity , Christoph Hellwig --9jxsPFA5p3P2qPhR Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Yes, explicitly passing the open flags is probably cleaner then re-using the struct field. This passes my newly added test for the open behaviour. --9jxsPFA5p3P2qPhR Content-Type: application/x-patch; name="0001-Fix-opening-of-read-only-raw-images.patch" Content-Disposition: attachment; filename="0001-Fix-opening-of-read-only-raw-images.patch" Content-Transfer-Encoding: base64 RnJvbSAyZTIxOGNhNTc1MTYzMjNhMDQ1YjJhY2U1OTRlMGM4OGU0NDlhNGNkIE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBCbHVlIFN3aXJsIDxibGF1d2lyYmVsQGdtYWlsLmNv bT4KRGF0ZTogVHVlLCAxNiBKdW4gMjAwOSAxODozMzoyMiArMDAwMApTdWJqZWN0OiBbUEFU Q0hdIEZpeCBvcGVuaW5nIG9mIHJlYWQgb25seSByYXcgaW1hZ2VzCgpTaWduZWQtb2ZmLWJ5 OiBCbHVlIFN3aXJsIDxibGF1d2lyYmVsQGdtYWlsLmNvbT4KLS0tCiBibG9jay9yYXctcG9z aXguYyB8ICAgMzEgKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLQogMSBmaWxlcyBj aGFuZ2VkLCAxNSBpbnNlcnRpb25zKCspLCAxNiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQg YS9ibG9jay9yYXctcG9zaXguYyBiL2Jsb2NrL3Jhdy1wb3NpeC5jCmluZGV4IDUwMzIzNDgu LjhiZjQ1Y2UgMTAwNjQ0Ci0tLSBhL2Jsb2NrL3Jhdy1wb3NpeC5jCisrKyBiL2Jsb2NrL3Jh dy1wb3NpeC5jCkBAIC0xMjMsNyArMTIzLDcgQEAgc3RhdGljIGludCBjZHJvbV9yZW9wZW4o QmxvY2tEcml2ZXJTdGF0ZSAqYnMpOwogI2VuZGlmCiAKIHN0YXRpYyBpbnQgcmF3X29wZW5f Y29tbW9uKEJsb2NrRHJpdmVyU3RhdGUgKmJzLCBjb25zdCBjaGFyICpmaWxlbmFtZSwKLSAg ICAgICAgaW50IGZsYWdzKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50IGJkcnZf ZmxhZ3MsIGludCBvcGVuX2ZsYWdzKQogewogICAgIEJEUlZSYXdTdGF0ZSAqcyA9IGJzLT5v cGFxdWU7CiAgICAgaW50IGZkLCByZXQ7CkBAIC0xMzIsOCArMTMyLDggQEAgc3RhdGljIGlu dCByYXdfb3Blbl9jb21tb24oQmxvY2tEcml2ZXJTdGF0ZSAqYnMsIGNvbnN0IGNoYXIgKmZp bGVuYW1lLAogCiAgICAgcy0+bHNlZWtfZXJyX2NudCA9IDA7CiAKLSAgICBzLT5vcGVuX2Zs YWdzIHw9IE9fQklOQVJZOwotICAgIGlmICgoZmxhZ3MgJiBCRFJWX09fQUNDRVNTKSA9PSBP X1JEV1IpIHsKKyAgICBzLT5vcGVuX2ZsYWdzID0gb3Blbl9mbGFncyB8IE9fQklOQVJZOwor ICAgIGlmICgoYmRydl9mbGFncyAmIEJEUlZfT19BQ0NFU1MpID09IE9fUkRXUikgewogICAg ICAgICBzLT5vcGVuX2ZsYWdzIHw9IE9fUkRXUjsKICAgICB9IGVsc2UgewogICAgICAgICBz LT5vcGVuX2ZsYWdzIHw9IE9fUkRPTkxZOwpAQCAtMTQyLDkgKzE0Miw5IEBAIHN0YXRpYyBp bnQgcmF3X29wZW5fY29tbW9uKEJsb2NrRHJpdmVyU3RhdGUgKmJzLCBjb25zdCBjaGFyICpm aWxlbmFtZSwKIAogICAgIC8qIFVzZSBPX0RTWU5DIGZvciB3cml0ZS10aHJvdWdoIGNhY2hp bmcsIG5vIGZsYWdzIGZvciB3cml0ZS1iYWNrIGNhY2hpbmcsCiAgICAgICogYW5kIE9fRElS RUNUIGZvciBubyBjYWNoaW5nLiAqLwotICAgIGlmICgoZmxhZ3MgJiBCRFJWX09fTk9DQUNI RSkpCisgICAgaWYgKChiZHJ2X2ZsYWdzICYgQkRSVl9PX05PQ0FDSEUpKQogICAgICAgICBz LT5vcGVuX2ZsYWdzIHw9IE9fRElSRUNUOwotICAgIGVsc2UgaWYgKCEoZmxhZ3MgJiBCRFJW X09fQ0FDSEVfV0IpKQorICAgIGVsc2UgaWYgKCEoYmRydl9mbGFncyAmIEJEUlZfT19DQUNI RV9XQikpCiAgICAgICAgIHMtPm9wZW5fZmxhZ3MgfD0gT19EU1lOQzsKIAogICAgIHMtPmZk ID0gLTE7CkBAIC0xNTcsNyArMTU3LDcgQEAgc3RhdGljIGludCByYXdfb3Blbl9jb21tb24o QmxvY2tEcml2ZXJTdGF0ZSAqYnMsIGNvbnN0IGNoYXIgKmZpbGVuYW1lLAogICAgIH0KICAg ICBzLT5mZCA9IGZkOwogICAgIHMtPmFsaWduZWRfYnVmID0gTlVMTDsKLSAgICBpZiAoKGZs YWdzICYgQkRSVl9PX05PQ0FDSEUpKSB7CisgICAgaWYgKChiZHJ2X2ZsYWdzICYgQkRSVl9P X05PQ0FDSEUpKSB7CiAgICAgICAgIHMtPmFsaWduZWRfYnVmID0gcWVtdV9ibG9ja2FsaWdu KGJzLCBBTElHTkVEX0JVRkZFUl9TSVpFKTsKICAgICAgICAgaWYgKHMtPmFsaWduZWRfYnVm ID09IE5VTEwpIHsKICAgICAgICAgICAgIHJldCA9IC1lcnJubzsKQEAgLTE3MSwxMiArMTcx LDEzIEBAIHN0YXRpYyBpbnQgcmF3X29wZW5fY29tbW9uKEJsb2NrRHJpdmVyU3RhdGUgKmJz LCBjb25zdCBjaGFyICpmaWxlbmFtZSwKIHN0YXRpYyBpbnQgcmF3X29wZW4oQmxvY2tEcml2 ZXJTdGF0ZSAqYnMsIGNvbnN0IGNoYXIgKmZpbGVuYW1lLCBpbnQgZmxhZ3MpCiB7CiAgICAg QkRSVlJhd1N0YXRlICpzID0gYnMtPm9wYXF1ZTsKKyAgICBpbnQgb3Blbl9mbGFncyA9IDA7 CiAKICAgICBzLT50eXBlID0gRlRZUEVfRklMRTsKICAgICBpZiAoZmxhZ3MgJiBCRFJWX09f Q1JFQVQpCi0gICAgICAgIHMtPm9wZW5fZmxhZ3MgfD0gT19DUkVBVCB8IE9fVFJVTkM7Cisg ICAgICAgIG9wZW5fZmxhZ3MgPSBPX0NSRUFUIHwgT19UUlVOQzsKIAotICAgIHJldHVybiBy YXdfb3Blbl9jb21tb24oYnMsIGZpbGVuYW1lLCBmbGFncyk7CisgICAgcmV0dXJuIHJhd19v cGVuX2NvbW1vbihicywgZmlsZW5hbWUsIGZsYWdzLCBvcGVuX2ZsYWdzKTsKIH0KIAogLyog WFhYOiB1c2UgaG9zdCBzZWN0b3Igc2l6ZSBpZiBuZWNlc3Nhcnkgd2l0aDoKQEAgLTEwMDcs NyArMTAwOCw3IEBAIHN0YXRpYyBpbnQgaGRldl9vcGVuKEJsb2NrRHJpdmVyU3RhdGUgKmJz LCBjb25zdCBjaGFyICpmaWxlbmFtZSwgaW50IGZsYWdzKQogICAgIH0KICNlbmRpZgogCi0g ICAgcmV0dXJuIHJhd19vcGVuX2NvbW1vbihicywgZmlsZW5hbWUsIGZsYWdzKTsKKyAgICBy ZXR1cm4gcmF3X29wZW5fY29tbW9uKGJzLCBmaWxlbmFtZSwgZmxhZ3MsIDApOwogfQogCiAj aWYgZGVmaW5lZChfX2xpbnV4X18pCkBAIC0xMTg1LDEwICsxMTg2LDkgQEAgc3RhdGljIGlu dCBmbG9wcHlfb3BlbihCbG9ja0RyaXZlclN0YXRlICpicywgY29uc3QgY2hhciAqZmlsZW5h bWUsIGludCBmbGFncykKICAgICBwb3NpeF9haW9faW5pdCgpOwogCiAgICAgcy0+dHlwZSA9 IEZUWVBFX0ZEOwotICAgIC8qIG9wZW4gd2lsbCBub3QgZmFpbCBldmVuIGlmIG5vIGZsb3Bw eSBpcyBpbnNlcnRlZCAqLwotICAgIHMtPm9wZW5fZmxhZ3MgfD0gT19OT05CTE9DSzsKIAot ICAgIHJldCA9IHJhd19vcGVuX2NvbW1vbihicywgZmlsZW5hbWUsIGZsYWdzKTsKKyAgICAv KiBvcGVuIHdpbGwgbm90IGZhaWwgZXZlbiBpZiBubyBmbG9wcHkgaXMgaW5zZXJ0ZWQsIHNv IGFkZCBPX05PTkJMT0NLICovCisgICAgcmV0ID0gcmF3X29wZW5fY29tbW9uKGJzLCBmaWxl bmFtZSwgZmxhZ3MsIE9fTk9OQkxPQ0spOwogICAgIGlmIChyZXQpCiAgICAgICAgIHJldHVy biByZXQ7CiAKQEAgLTEyNzgsMTEgKzEyNzgsMTAgQEAgc3RhdGljIGludCBjZHJvbV9vcGVu KEJsb2NrRHJpdmVyU3RhdGUgKmJzLCBjb25zdCBjaGFyICpmaWxlbmFtZSwgaW50IGZsYWdz KQogewogICAgIEJEUlZSYXdTdGF0ZSAqcyA9IGJzLT5vcGFxdWU7CiAKLSAgICAvKiBvcGVu IHdpbGwgbm90IGZhaWwgZXZlbiBpZiBubyBDRCBpcyBpbnNlcnRlZCAqLwotICAgIHMtPm9w ZW5fZmxhZ3MgfD0gT19OT05CTE9DSzsKICAgICBzLT50eXBlID0gRlRZUEVfQ0Q7CiAKLSAg ICByZXR1cm4gcmF3X29wZW5fY29tbW9uKGJzLCBmaWxlbmFtZSwgZmxhZ3MpOworICAgIC8q IG9wZW4gd2lsbCBub3QgZmFpbCBldmVuIGlmIG5vIENEIGlzIGluc2VydGVkLCBzbyBhZGQg T19OT05CTE9DSyAqLworICAgIHJldHVybiByYXdfb3Blbl9jb21tb24oYnMsIGZpbGVuYW1l LCBmbGFncywgT19OT05CTE9DSyk7CiB9CiAKIHN0YXRpYyBpbnQgY2Ryb21fcHJvYmVfZGV2 aWNlKGNvbnN0IGNoYXIgKmZpbGVuYW1lKQpAQCAtMTM3Miw3ICsxMzcxLDcgQEAgc3RhdGlj IGludCBjZHJvbV9vcGVuKEJsb2NrRHJpdmVyU3RhdGUgKmJzLCBjb25zdCBjaGFyICpmaWxl bmFtZSwgaW50IGZsYWdzKQogCiAgICAgcy0+dHlwZSA9IEZUWVBFX0NEOwogCi0gICAgcmV0 ID0gcmF3X29wZW5fY29tbW9uKGJzLCBmaWxlbmFtZSwgZmxhZ3MpOworICAgIHJldCA9IHJh d19vcGVuX2NvbW1vbihicywgZmlsZW5hbWUsIGZsYWdzLCAwKTsKICAgICBpZiAocmV0KQog ICAgICAgICByZXR1cm4gcmV0OwogCi0tIAoxLjUuNi41Cgo= --9jxsPFA5p3P2qPhR--