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: [net] net: usbnet: fix potential deadlock on 32bit hosts From: Eric Dumazet Message-Id: <1520278873.109662.14.camel@gmail.com> Date: Mon, 05 Mar 2018 11:41:13 -0800 To: Oliver Neukum , Marek Szyprowski Cc: 'Linux Samsung SOC' , Linux USB Mailing List , netdev@vger.kernel.org, Dean Jenkins List-ID: RnJvbTogRXJpYyBEdW1hemV0IDxlZHVtYXpldEBnb29nbGUuY29tPgoKTWFyZWsgcmVwb3J0ZWQg YSBMT0NLREVQIGlzc3VlIG9jY3VycmluZyBvbiAzMmJpdCBob3N0LAp0aGF0IHdlIHRyYWNrZWQg ZG93biB0byB0aGUgZmFjdCB0aGF0IHVzYm5ldCBjb3VsZCBlaXRoZXIKcnVuIGZyb20gc29mdCBv ciBoYXJkIGlycXMuCgpUaGlzIHBhdGNoIGFkZHMgdTY0X3N0YXRzX3VwZGF0ZV9iZWdpbl9pcnFz YXZlKCkgYW5kCnU2NF9zdGF0c191cGRhdGVfZW5kX2lycXJlc3RvcmUoKSBoZWxwZXJzIHRvIHNv bHZlIHRoaXMgY2FzZS4KClsgICAxNy43NjgwNDBdID09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09ClsgICAxNy43NzIyMzldIFdBUk5JTkc6IGluY29uc2lzdGVudCBsb2NrIHN0YXRlClsg ICAxNy43NzY1MTFdIDQuMTYuMC1yYzMtbmV4dC0yMDE4MDIyNy0wMDAwNy1nODc2YzUzYTc0OTNj ICM0NTMgTm90IHRhaW50ZWQKWyAgIDE3Ljc4MzMyOV0gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0KWyAgIDE3Ljc4NzU4MF0gaW5jb25zaXN0ZW50IHtJTi1IQVJESVJRLVd9IC0+IHtI QVJESVJRLU9OLVd9IHVzYWdlLgpbICAgMTcuNzkzNjA3XSBzd2FwcGVyLzAvMCBbSEMwWzBdOlND MVsxXTpIRTE6U0UwXSB0YWtlczoKWyAgIDE3Ljc5ODc1MV0gICgmc3luY3AtPnNlcSM1KXs/Li0u fSwgYXQ6IFs8OWIyMmU1ZjA+XSAKYXNpeF9yeF9maXh1cF9pbnRlcm5hbCsweDE4OC8weDI4OApb ICAgMTcuODA2NzkwXSB7SU4tSEFSRElSUS1XfSBzdGF0ZSB3YXMgcmVnaXN0ZXJlZCBhdDoKWyAg IDE3LjgxMTY3N10gICB0eF9jb21wbGV0ZSsweDEwMC8weDIwOApbICAgMTcuODE1MzE5XSAgIF9f dXNiX2hjZF9naXZlYmFja191cmIrMHg2MC8weGYwClsgICAxNy44MTk3NzBdICAgeGhjaV9naXZl YmFja191cmJfaW5faXJxKzB4YTgvMHgyNDAKWyAgIDE3LjgyNDQ2OV0gICB4aGNpX3RkX2NsZWFu dXArMHhmNC8weDE2YwpbICAgMTcuODI4MzY3XSAgIHhoY2lfaXJxKzB4ZTc0LzB4MjI0MApbICAg MTcuODMxODI3XSAgIHVzYl9oY2RfaXJxKzB4MjQvMHgzOApbICAgMTcuODM1MzQzXSAgIF9faGFu ZGxlX2lycV9ldmVudF9wZXJjcHUrMHg5OC8weDUxMApbICAgMTcuODQwMTExXSAgIGhhbmRsZV9p cnFfZXZlbnRfcGVyY3B1KzB4MWMvMHg1OApbICAgMTcuODQ0NjIzXSAgIGhhbmRsZV9pcnFfZXZl bnQrMHgzOC8weDVjClsgICAxNy44NDg1MTldICAgaGFuZGxlX2Zhc3Rlb2lfaXJxKzB4YTQvMHgx MzgKWyAgIDE3Ljg1MjY4MV0gICBnZW5lcmljX2hhbmRsZV9pcnErMHgxOC8weDI4ClsgICAxNy44 NTY3NjBdICAgX19oYW5kbGVfZG9tYWluX2lycSsweDZjLzB4ZTQKWyAgIDE3Ljg2MDk0MV0gICBn aWNfaGFuZGxlX2lycSsweDU0LzB4YTAKWyAgIDE3Ljg2NDY2Nl0gICBfX2lycV9zdmMrMHg3MC8w eGIwClsgICAxNy44Njc5NjRdICAgYXJjaF9jcHVfaWRsZSsweDIwLzB4M2MKWyAgIDE3Ljg3MTU3 OF0gICBhcmNoX2NwdV9pZGxlKzB4MjAvMHgzYwpbICAgMTcuODc1MTkwXSAgIGRvX2lkbGUrMHgx NDQvMHgyMTgKWyAgIDE3Ljg3ODQ2OF0gICBjcHVfc3RhcnR1cF9lbnRyeSsweDE4LzB4MWMKWyAg IDE3Ljg4MjQ1NF0gICBzdGFydF9rZXJuZWwrMHgzOTQvMHg0MDAKWyAgIDE3Ljg4NjE3N10gaXJx IGV2ZW50IHN0YW1wOiAxNjE5MTIKWyAgIDE3Ljg4OTYxNl0gaGFyZGlycXMgbGFzdCAgZW5hYmxl ZCBhdCAoMTYxOTEyKTogWzw3YmVkZmFjZj5dIApfX25ldGRldl9hbGxvY19za2IrMHhjYy8weDE0 MApbICAgMTcuODk3ODkzXSBoYXJkaXJxcyBsYXN0IGRpc2FibGVkIGF0ICgxNjE5MTEpOiBbPGQ1 ODI2MWQwPl0gCl9fbmV0ZGV2X2FsbG9jX3NrYisweDk0LzB4MTQwClsgICAxNy45MDQ5MDNdIGV4 eW5vczUtaHNpMmMgMTJjYTAwMDAuaTJjOiB0eCB0aW1lb3V0ClsgICAxNy45MDYxMTZdIHNvZnRp cnFzIGxhc3QgIGVuYWJsZWQgYXQgKDE2MTkwNCk6IFs8Mzg3MTAyZmY+XSAKaXJxX2VudGVyKzB4 NzgvMHg4MApbICAgMTcuOTA2MTIzXSBzb2Z0aXJxcyBsYXN0IGRpc2FibGVkIGF0ICgxNjE5MDUp OiBbPGNmNGM2MjhlPl0gCmlycV9leGl0KzB4MTM0LzB4MTU4ClsgICAxNy45MjU3MjJdLgpbICAg MTcuOTI1NzIyXSBvdGhlciBpbmZvIHRoYXQgbWlnaHQgaGVscCB1cyBkZWJ1ZyB0aGlzOgpbICAg MTcuOTMzNDM1XSAgUG9zc2libGUgdW5zYWZlIGxvY2tpbmcgc2NlbmFyaW86ClsgICAxNy45MzM0 MzVdLgpbICAgMTcuOTQwMzMxXSAgICAgICAgQ1BVMApbICAgMTcuOTQyNDg4XSAgICAgICAgLS0t LQpbICAgMTcuOTQ0ODk0XSAgIGxvY2soJnN5bmNwLT5zZXEjNSk7ClsgICAxNy45NDgyNzRdICAg PEludGVycnVwdD4KWyAgIDE3Ljk1MDg0N10gICAgIGxvY2soJnN5bmNwLT5zZXEjNSk7ClsgICAx Ny45NTQzODZdLgpbICAgMTcuOTU0Mzg2XSAgKioqIERFQURMT0NLICoqKgpbICAgMTcuOTU0Mzg2 XS4KWyAgIDE3Ljk2MjQyMl0gbm8gbG9ja3MgaGVsZCBieSBzd2FwcGVyLzAvMC4KCkZpeGVzOiBj OGI1ZDEyOWVlMjkgKCJuZXQ6IHVzYm5ldDogc3VwcG9ydCA2NGJpdCBzdGF0cyIpClNpZ25lZC1v ZmYtYnk6IEVyaWMgRHVtYXpldCA8ZWR1bWF6ZXRAZ29vZ2xlLmNvbT4KUmVwb3J0ZWQtYnk6IE1h cmVrIFN6eXByb3dza2kgPG0uc3p5cHJvd3NraUBzYW1zdW5nLmNvbT4KQ2M6IEdyZWcgVW5nZXJl ciA8Z2VyZ0BsaW51eC1tNjhrLm9yZz4KLS0tCsKgZHJpdmVycy9uZXQvdXNiL3VzYm5ldC5jwqDC oMKgwqDCoMKgwqB8wqDCoMKgMTAgKysrKysrLS0tLQrCoGluY2x1ZGUvbGludXgvdTY0X3N0YXRz X3N5bmMuaCB8wqDCoMKgMjIgKysrKysrKysrKysrKysrKysrKysrKwrCoDIgZmlsZXMgY2hhbmdl ZCwgMjggaW5zZXJ0aW9ucygrKSwgNCBkZWxldGlvbnMoLSkKCgotLQpUbyB1bnN1YnNjcmliZSBm cm9tIHRoaXMgbGlzdDogc2VuZCB0aGUgbGluZSAidW5zdWJzY3JpYmUgbGludXgtdXNiIiBpbgp0 aGUgYm9keSBvZiBhIG1lc3NhZ2UgdG8gbWFqb3Jkb21vQHZnZXIua2VybmVsLm9yZwpNb3JlIG1h am9yZG9tbyBpbmZvIGF0ICBodHRwOi8vdmdlci5rZXJuZWwub3JnL21ham9yZG9tby1pbmZvLmh0 bWwKCmRpZmYgLS1naXQgYS9kcml2ZXJzL25ldC91c2IvdXNibmV0LmMgYi9kcml2ZXJzL25ldC91 c2IvdXNibmV0LmMKaW5kZXggOGEyMmZmNjdiMDI2OGE1ODg0MjhjNjFjNmE2MjExZTNjNmMyYTAy YS4uZDllZWE4Y2ZlNmNiOWEzYmY4ZDBkNGNlOTE5OGFmOWJjY2Y5Yzc1NyAxMDA2NDQKLS0tIGEv ZHJpdmVycy9uZXQvdXNiL3VzYm5ldC5jCisrKyBiL2RyaXZlcnMvbmV0L3VzYi91c2JuZXQuYwpA QCAtMzE1LDYgKzMxNSw3IEBAIHN0YXRpYyB2b2lkIF9fdXNibmV0X3N0YXR1c19zdG9wX2ZvcmNl KHN0cnVjdCB1c2JuZXQgKmRldikKIHZvaWQgdXNibmV0X3NrYl9yZXR1cm4gKHN0cnVjdCB1c2Ju ZXQgKmRldiwgc3RydWN0IHNrX2J1ZmYgKnNrYikKIHsKIAlzdHJ1Y3QgcGNwdV9zd19uZXRzdGF0 cyAqc3RhdHM2NCA9IHRoaXNfY3B1X3B0cihkZXYtPnN0YXRzNjQpOworCXVuc2lnbmVkIGxvbmcg ZmxhZ3M7CiAJaW50CXN0YXR1czsKIAogCWlmICh0ZXN0X2JpdChFVkVOVF9SWF9QQVVTRUQsICZk ZXYtPmZsYWdzKSkgewpAQCAtMzI2LDEwICszMjcsMTAgQEAgdm9pZCB1c2JuZXRfc2tiX3JldHVy biAoc3RydWN0IHVzYm5ldCAqZGV2LCBzdHJ1Y3Qgc2tfYnVmZiAqc2tiKQogCWlmIChza2ItPnBy b3RvY29sID09IDApCiAJCXNrYi0+cHJvdG9jb2wgPSBldGhfdHlwZV90cmFucyAoc2tiLCBkZXYt Pm5ldCk7CiAKLQl1NjRfc3RhdHNfdXBkYXRlX2JlZ2luKCZzdGF0czY0LT5zeW5jcCk7CisJZmxh Z3MgPSB1NjRfc3RhdHNfdXBkYXRlX2JlZ2luX2lycXNhdmUoJnN0YXRzNjQtPnN5bmNwKTsKIAlz dGF0czY0LT5yeF9wYWNrZXRzKys7CiAJc3RhdHM2NC0+cnhfYnl0ZXMgKz0gc2tiLT5sZW47Ci0J dTY0X3N0YXRzX3VwZGF0ZV9lbmQoJnN0YXRzNjQtPnN5bmNwKTsKKwl1NjRfc3RhdHNfdXBkYXRl X2VuZF9pcnFyZXN0b3JlKCZzdGF0czY0LT5zeW5jcCwgZmxhZ3MpOwogCiAJbmV0aWZfZGJnKGRl diwgcnhfc3RhdHVzLCBkZXYtPm5ldCwgIjwgcngsIGxlbiAlenUsIHR5cGUgMHgleFxuIiwKIAkJ ICBza2ItPmxlbiArIHNpemVvZiAoc3RydWN0IGV0aGhkciksIHNrYi0+cHJvdG9jb2wpOwpAQCAt MTI0OCwxMSArMTI0OSwxMiBAQCBzdGF0aWMgdm9pZCB0eF9jb21wbGV0ZSAoc3RydWN0IHVyYiAq dXJiKQogCiAJaWYgKHVyYi0+c3RhdHVzID09IDApIHsKIAkJc3RydWN0IHBjcHVfc3dfbmV0c3Rh dHMgKnN0YXRzNjQgPSB0aGlzX2NwdV9wdHIoZGV2LT5zdGF0czY0KTsKKwkJdW5zaWduZWQgbG9u ZyBmbGFnczsKIAotCQl1NjRfc3RhdHNfdXBkYXRlX2JlZ2luKCZzdGF0czY0LT5zeW5jcCk7CisJ CWZsYWdzID0gdTY0X3N0YXRzX3VwZGF0ZV9iZWdpbl9pcnFzYXZlKCZzdGF0czY0LT5zeW5jcCk7 CiAJCXN0YXRzNjQtPnR4X3BhY2tldHMgKz0gZW50cnktPnBhY2tldHM7CiAJCXN0YXRzNjQtPnR4 X2J5dGVzICs9IGVudHJ5LT5sZW5ndGg7Ci0JCXU2NF9zdGF0c191cGRhdGVfZW5kKCZzdGF0czY0 LT5zeW5jcCk7CisJCXU2NF9zdGF0c191cGRhdGVfZW5kX2lycXJlc3RvcmUoJnN0YXRzNjQtPnN5 bmNwLCBmbGFncyk7CiAJfSBlbHNlIHsKIAkJZGV2LT5uZXQtPnN0YXRzLnR4X2Vycm9ycysrOwog CmRpZmYgLS1naXQgYS9pbmNsdWRlL2xpbnV4L3U2NF9zdGF0c19zeW5jLmggYi9pbmNsdWRlL2xp bnV4L3U2NF9zdGF0c19zeW5jLmgKaW5kZXggNWJkYmQ5ZjQ5Mzk1Zjg4M2NhMmRjNWFhMGQ3YmJk ZTExZjM3OTA2My4uMDdlZTBmODRhNDZjYWE5ZTJiMWM0NDZmOTYwMDlmNjNiM2I5OWY1MCAxMDA2 NDQKLS0tIGEvaW5jbHVkZS9saW51eC91NjRfc3RhdHNfc3luYy5oCisrKyBiL2luY2x1ZGUvbGlu dXgvdTY0X3N0YXRzX3N5bmMuaApAQCAtOTAsNiArOTAsMjggQEAgc3RhdGljIGlubGluZSB2b2lk IHU2NF9zdGF0c191cGRhdGVfZW5kKHN0cnVjdCB1NjRfc3RhdHNfc3luYyAqc3luY3ApCiAjZW5k aWYKIH0KIAorc3RhdGljIGlubGluZSB1bnNpZ25lZCBsb25nCit1NjRfc3RhdHNfdXBkYXRlX2Jl Z2luX2lycXNhdmUoc3RydWN0IHU2NF9zdGF0c19zeW5jICpzeW5jcCkKK3sKKwl1bnNpZ25lZCBs b25nIGZsYWdzID0gMDsKKworI2lmIEJJVFNfUEVSX0xPTkc9PTMyICYmIGRlZmluZWQoQ09ORklH X1NNUCkKKwlsb2NhbF9pcnFfc2F2ZShmbGFncyk7CisJd3JpdGVfc2VxY291bnRfYmVnaW4oJnN5 bmNwLT5zZXEpOworI2VuZGlmCisJcmV0dXJuIGZsYWdzOworfQorCitzdGF0aWMgaW5saW5lIHZv aWQKK3U2NF9zdGF0c191cGRhdGVfZW5kX2lycXJlc3RvcmUoc3RydWN0IHU2NF9zdGF0c19zeW5j ICpzeW5jcCwKKwkJCQl1bnNpZ25lZCBsb25nIGZsYWdzKQoreworI2lmIEJJVFNfUEVSX0xPTkc9 PTMyICYmIGRlZmluZWQoQ09ORklHX1NNUCkKKwl3cml0ZV9zZXFjb3VudF9lbmQoJnN5bmNwLT5z ZXEpOworCWxvY2FsX2lycV9yZXN0b3JlKGZsYWdzKTsKKyNlbmRpZgorfQorCiBzdGF0aWMgaW5s aW5lIHZvaWQgdTY0X3N0YXRzX3VwZGF0ZV9iZWdpbl9yYXcoc3RydWN0IHU2NF9zdGF0c19zeW5j ICpzeW5jcCkKIHsKICNpZiBCSVRTX1BFUl9MT05HPT0zMiAmJiBkZWZpbmVkKENPTkZJR19TTVAp Cg==