Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753266AbbDGRdx (ORCPT ); Tue, 7 Apr 2015 13:33:53 -0400 Received: from mail-ie0-f179.google.com ([209.85.223.179]:35220 "EHLO mail-ie0-f179.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752311AbbDGRdu (ORCPT ); Tue, 7 Apr 2015 13:33:50 -0400 MIME-Version: 1.0 In-Reply-To: <55240D40.6030206@oracle.com> References: <552204B8.40605@oracle.com> <5522D9A8.5080104@oracle.com> <20150407093145.GA10348@gmail.com> <20150407103955.GB14095@pd.tnic> <20150407110531.GA14136@gmail.com> <20150407143009.GG7935@dhcp22.suse.cz> <20150407143710.GA18777@gmail.com> <55240D40.6030206@oracle.com> Date: Tue, 7 Apr 2015 10:33:49 -0700 X-Google-Sender-Auth: ix2EI0EUA49gFnTgmGBIRY1ke3Y Message-ID: Subject: Re: Hang on large copy_from_user with PREEMPT_NONE From: Linus Torvalds To: Sasha Levin Cc: Ingo Molnar , Michal Hocko , Borislav Petkov , LKML , Rusty Russell , Dave Jones , "the arch/x86 maintainers" Content-Type: multipart/mixed; boundary=047d7b343c9c50dc9c051325d19d Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 2628 Lines: 53 --047d7b343c9c50dc9c051325d19d Content-Type: text/plain; charset=UTF-8 On Tue, Apr 7, 2015 at 10:00 AM, Sasha Levin wrote: > > It locks up quickly without KASan as well. I suspect it's some virtualization artifact, where the writes cause COW faults (or just memory allocations) in the L0 domain. Whatever. It's probably not worth fighting. Either we just decide that "copy_from_user()" shouldn't bother to zero huge areas (limit the zeroing to some arbitrary size), or we just special-case the module loading. Something like the attached patch. Entirely untested, as usual. Linus --047d7b343c9c50dc9c051325d19d Content-Type: text/plain; charset=US-ASCII; name="patch.diff" Content-Disposition: attachment; filename="patch.diff" Content-Transfer-Encoding: base64 X-Attachment-Id: f_i87l5zg40 IGtlcm5lbC9tb2R1bGUuYyB8IDE5ICsrKysrKysrKysrKysrKysrKy0KIDEgZmlsZSBjaGFuZ2Vk LCAxOCBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEva2VybmVsL21v ZHVsZS5jIGIva2VybmVsL21vZHVsZS5jCmluZGV4IDk5ZmRmOTRlZmNlOC4uZWM1M2Y1OTRlOWM5 IDEwMDY0NAotLS0gYS9rZXJuZWwvbW9kdWxlLmMKKysrIGIva2VybmVsL21vZHVsZS5jCkBAIC0y NDc5LDYgKzI0NzksMjMgQEAgc3RhdGljIGludCBlbGZfaGVhZGVyX2NoZWNrKHN0cnVjdCBsb2Fk X2luZm8gKmluZm8pCiAJcmV0dXJuIDA7CiB9CiAKKyNkZWZpbmUgQ09QWV9DSFVOS19TSVpFICgx NipQQUdFX1NJWkUpCisKK3N0YXRpYyBpbnQgY29weV9jaHVua2VkX2Zyb21fdXNlcih2b2lkICpk c3QsIGNvbnN0IHZvaWQgX191c2VyICp1c3JjLCB1bnNpZ25lZCBsb25nIGxlbikKK3sKKwlkbyB7 CisJCXVuc2lnbmVkIGxvbmcgbiA9IG1pbihsZW4sIENPUFlfQ0hVTktfU0laRSk7CisKKwkJaWYg KGNvcHlfZnJvbV91c2VyKGRzdCwgdXNyYywgbikgIT0gMCkKKwkJCXJldHVybiAtRUZBVUxUOwor CQljb25kX3Jlc2NoZWQoKTsKKwkJZHN0ICs9IG47CisJCXVzcmMgKz0gbjsKKwkJbGVuIC09IG47 CisJfSB3aGlsZSAobGVuKTsKKwlyZXR1cm4gMDsKK30KKwogLyogU2V0cyBpbmZvLT5oZHIgYW5k IGluZm8tPmxlbi4gKi8KIHN0YXRpYyBpbnQgY29weV9tb2R1bGVfZnJvbV91c2VyKGNvbnN0IHZv aWQgX191c2VyICp1bW9kLCB1bnNpZ25lZCBsb25nIGxlbiwKIAkJCQkgIHN0cnVjdCBsb2FkX2lu Zm8gKmluZm8pCkBAIC0yNDk4LDcgKzI1MTUsNyBAQCBzdGF0aWMgaW50IGNvcHlfbW9kdWxlX2Zy b21fdXNlcihjb25zdCB2b2lkIF9fdXNlciAqdW1vZCwgdW5zaWduZWQgbG9uZyBsZW4sCiAJaWYg KCFpbmZvLT5oZHIpCiAJCXJldHVybiAtRU5PTUVNOwogCi0JaWYgKGNvcHlfZnJvbV91c2VyKGlu Zm8tPmhkciwgdW1vZCwgaW5mby0+bGVuKSAhPSAwKSB7CisJaWYgKGNvcHlfY2h1bmtlZF9mcm9t X3VzZXIoaW5mby0+aGRyLCB1bW9kLCBpbmZvLT5sZW4pICE9IDApIHsKIAkJdmZyZWUoaW5mby0+ aGRyKTsKIAkJcmV0dXJuIC1FRkFVTFQ7CiAJfQo= --047d7b343c9c50dc9c051325d19d-- -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/