From mboxrd@z Thu Jan 1 00:00:00 1970 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 Subject: [1/5] dmaengine: bcm2835: Fix interrupt race on RT From: Lukas Wunner Message-Id: <20190117082656.isv3ld2jg3jyzogf@wunner.de> Date: Thu, 17 Jan 2019 09:26:56 +0100 To: Vinod Koul , Eric Anholt , Stefan Wahren Cc: Frank Pavlic , Martin Sperl , Florian Meier , dmaengine@vger.kernel.org, linux-rpi-kernel@lists.infradead.org, Tiejun Chen , linux-rt-users@vger.kernel.org List-ID: T24gU2F0LCBEZWMgMjIsIDIwMTggYXQgMDg6Mjg6NDVBTSArMDEwMCwgTHVrYXMgV3VubmVyIHdy b3RlOgo+IFRoYXQgTU1JTyByZWFkIGlzIG5lZWRlZCB0byB3cml0ZSB0aGUgc2FtZSB2YWx1ZSB0 byB0aGUgQ1MgcmVnaXN0ZXIgdGhhdAo+IGl0IGN1cnJlbnRseSBoYXMsIHRoZXJlYnkgcHJlc2Vy dmluZyB0aGUgQUNUSVZFIGZsYWcgd2hpbGUgY2xlYXJpbmcgdGhlCj4gSU5UIGFuZCBFTkQgZmxh Z3MuICBOb3RlIHRoYXQgdGhlIHRyYW5zYWN0aW9uIG1heSBmaW5pc2ggYmV0d2VlbiByZWFkaW5n Cj4gYW5kIHdyaXRpbmcgdGhlIENTIHJlZ2lzdGVyLCBhbmQgaW4gdGhhdCBjYXNlIHRoZSB3cml0 ZSBjaGFuZ2VzIHRoZQo+IEFDVElWRSBmbGFnIGZyb20gMCB0byAxLiAgQnV0IHRoYXQncyBoYXJt bGVzcywgdGhlIGNoaXAgd2lsbCBub3RpY2UgdGhhdAo+IE5FWFRDT05CSyBpcyAwIGFuZCBzZWxm LWNsZWFyIHRoZSBBQ1RJVkUgZmxhZyBhZ2Fpbi4KCkZ1cnRoZXIgZXhwZXJpbWVudGF0aW9uIGhh cyBzaG93biB0aGF0IHRoZSBjaGlwIGRvZXMgbm90IHNlbGYtY2xlYXIgdGhlCkFDVElWRSBmbGFn IGlmIGl0IGlzIHNldCBvbiBhbiBpZGxlIGNoYW5uZWwsIGNvbnRyYXJ5IHRvIHdoYXQgSSBoYXZl CndyaXR0ZW4gYWJvdmUuIENvbnNlcXVlbnRseSB0aGF0IGZsYWcgY2Fubm90IGJlIHVzZWQgdG8g ZGV0ZXJtaW5lIGlkbGVuZXNzCm9mIGEgY2hhbm5lbCByZWxpYWJseS4gQSB3b3JrYXJvdW5kIGlz IHRvIGNoZWNrIHdoZXRoZXIgdGhlIHJlZ2lzdGVyCmNvbnRhaW5pbmcgdGhlIGN1cnJlbnQgY29u dHJvbCBibG9jaydzIGFkZHJlc3MgaXMgemVyby4gSSBoYXZlIGFtZW5kZWQKdGhlIHBhdGNoIGFj Y29yZGluZ2x5IGFuZCBpdCBpcyBjdXJyZW50bHkgdW5kZXJnb2luZyBzdHJlc3N0ZXN0aW5nIHVu dGlsCk1vbmRheS4gIFNvIEkgc2hvdWxkIGJlIGFibGUgdG8gcG9zdCBhbiB1cGRhdGVkIHZlcnNp b24gb2YgdGhlIHNlcmllcwpuZXh0IHdlZWsuCgpJIGhhdmUgYWxzbyB1cGRhdGVkIHRoZSBwYXRj aCB0byBmaXggdGhlIGZvbGxvd2luZyByZW1haW5pbmcgcmFjZToKCj4gQEAgLTQ3NywxMSArNDc5 LDE3IEBAIHN0YXRpYyBpcnFyZXR1cm5fdCBiY20yODM1X2RtYV9jYWxsYmFjayhpbnQgaXJxLCB2 b2lkICpkYXRhKQo+ICAJc3Bpbl9sb2NrX2lycXNhdmUoJmMtPnZjLmxvY2ssIGZsYWdzKTsKPiAg Cj4gIAkvKiBBY2tub3dsZWRnZSBpbnRlcnJ1cHQgKi8KPiAtCXdyaXRlbChCQ00yODM1X0RNQV9J TlQsIGMtPmNoYW5fYmFzZSArIEJDTTI4MzVfRE1BX0NTKTsKPiArCWNzID0gcmVhZGwoYy0+Y2hh bl9iYXNlICsgQkNNMjgzNV9ETUFfQ1MpOwo+ICsJd3JpdGVsKGNzLCBjLT5jaGFuX2Jhc2UgKyBC Q00yODM1X0RNQV9DUyk7Cj4gIAo+ICAJZCA9IGMtPmRlc2M7Cj4gIAo+IC0JaWYgKGQpIHsKPiAr CS8qCj4gKwkgKiBJZiB0aGlzIElSUSBoYW5kbGVyIGlzIHRocmVhZGVkLCBjbGllbnRzIG1heSB0 ZXJtaW5hdGUgZGVzY3JpcHRvcnMKPiArCSAqIGFuZCBpc3N1ZSBuZXcgb25lcyBiZWZvcmUgdGhl IElSUSBoYW5kbGVyIHJ1bnMuICBBdm9pZCBmaW5hbGl6aW5nCj4gKwkgKiBzdWNoIGEgbmV3bHkg aXNzdWVkIGRlc2NyaXB0b3IgYnkgY2hlY2tpbmcgdGhlIEVORCBmbGFnLgo+ICsJICovCj4gKwlp ZiAoZCAmJiBjcyAmIEJDTTI4MzVfRE1BX0VORCkgewo+ICAJCWlmIChkLT5jeWNsaWMpIHsKPiAg CQkJLyogY2FsbCB0aGUgY3ljbGljIGNhbGxiYWNrICovCj4gIAkJCXZjaGFuX2N5Y2xpY19jYWxs YmFjaygmZC0+dmQpOwoKVGhlIGRlc2NyaXB0b3IgbWF5IGJlIGZpbmlzaGVkIGJldHdlZW4gdGhl IHJlYWQgYW5kIHRoZSB3cml0ZSBvZiB0aGUKQ1MgcmVnaXN0ZXIsIGFuZCBpbiB0aGF0IGNhc2Ug dGhlIGludGVycnVwdCBmb3IgdGhlIGZpbmlzaGVkIGRlc2NyaXB0b3IKd2lsbCBiZSBhY2tub3ds ZWRnZWQgYnV0IHRoZSBkZXNjcmlwdG9yIHdpbGwgbm90IGJlIGZpbmFsaXplZCBiZWNhdXNlCkVO RCB3YXMgbm90IHlldCBzZXQgd2hlbiB0aGUgcmVnaXN0ZXIgd2FzIHJlYWQuIEkgaGF2ZW4ndCBz ZWVuIHRoaXMKcmFjZSBpbiB0aGUgcmVhbCB3b3JsZCBidXQgaXQncyBkZWZpbml0ZWx5IG5vdCBj b3JyZWN0IGFuZCBJJ3ZlIGZpeGVkCml0IGFzIHdlbGwgZm9yIHYyLgoKVGhhbmtzLAoKTHVrYXMK