From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Michael S. Tsirkin" Subject: Re: [RFC 0/2] Reenable might_sleep() checks for might_fault() when atomic Date: Wed, 26 Nov 2014 17:23:34 +0200 Message-ID: <20141126152334.GA9648@redhat.com> References: <1416915806-24757-1-git-send-email-dahi@linux.vnet.ibm.com> <20141126070258.GA25523@redhat.com> <20141126110504.511b733a@thinkpad-w530> <20141126151729.GB9612@redhat.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Content-Disposition: inline In-Reply-To: <20141126151729.GB9612@redhat.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: linuxppc-dev-bounces+glppe-linuxppc-embedded-2=m.gmane.org@lists.ozlabs.org Sender: "Linuxppc-dev" To: David Hildenbrand Cc: linux-arch@vger.kernel.org, heiko.carstens@de.ibm.com, linux-kernel@vger.kernel.org, borntraeger@de.ibm.com, paulus@samba.org, schwidefsky@de.ibm.com, akpm@linux-foundation.org, linuxppc-dev@lists.ozlabs.org, mingo@kernel.org List-Id: linux-arch.vger.kernel.org T24gV2VkLCBOb3YgMjYsIDIwMTQgYXQgMDU6MTc6MjlQTSArMDIwMCwgTWljaGFlbCBTLiBUc2ly a2luIHdyb3RlOgo+IE9uIFdlZCwgTm92IDI2LCAyMDE0IGF0IDExOjA1OjA0QU0gKzAxMDAsIERh dmlkIEhpbGRlbmJyYW5kIHdyb3RlOgo+ID4gPiBXaGF0J3MgdGhlIHBhdGggeW91IGFyZSB0cnlp bmcgdG8gZGVidWc/Cj4gPiAKPiA+IFdlbGwsIHdlIGhhZCBhIHByb2JsZW0gd2hlcmUgd2UgaGVs ZCBhIHNwaW5fbG9jayBhbmQgY2FsbGVkCj4gPiBjb3B5Xyhmcm9tfHRvKV91c2VyKCkuIFdlIGV4 cGVyaWVuY2VkIHZlcnkgcmFuZG9tIGRlYWRsb2NrcyB0aGF0IHRvb2sgc29tZSBndXkKPiA+IGFs bW9zdCBhIHdlZWsgdG8gZGVidWcuIFRoZSBzaW1wbGUgbWlnaHRfc2xlZXAoKSBjaGVjayB3b3Vs ZCBoYXZlIHNob3dlZCB0aGlzCj4gPiBlcnJvciBpbW1lZGlhdGVseS4KPiAKPiBUaGlzIG11c3Qg aGF2ZSBiZWVuIGEgdmVyeSBvbGQga2VybmVsLgo+IEEgbW9kZXJuIGtlcm5lbCB3aWxsIHJldHVy biBhbiBlcnJvciBmcm9tIGNvcHlfdG9fdXNlci4KPiBXaGljaCBpcyByZWFsbHkgdGhlIHBvaW50 IG9mIHRoZSBwYXRjaCB5b3UgYXJlIHRyeWluZyB0byByZXZlcnQuCgpUaGF0J3MgYXNzdW1pbmcg eW91IGRpc2FibGVkIHByZWVtcHRpb24uIElmIHlvdSBkaWRuJ3QsIGFuZCB0YWtlCmEgc3Bpbmxv Y2ssIHlvdSBoYXZlIGRlYWRsb2NrcyBldmVuIHdpdGhvdXQgdXNlcnNwYWNlIGFjY2Vzcy4KCi0t IApNU1QKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KTGlu dXhwcGMtZGV2IG1haWxpbmcgbGlzdApMaW51eHBwYy1kZXZAbGlzdHMub3psYWJzLm9yZwpodHRw czovL2xpc3RzLm96bGFicy5vcmcvbGlzdGluZm8vbGludXhwcGMtZGV2 From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mx1.redhat.com ([209.132.183.28]:49300 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753431AbaKZPXy (ORCPT ); Wed, 26 Nov 2014 10:23:54 -0500 Date: Wed, 26 Nov 2014 17:23:34 +0200 From: "Michael S. Tsirkin" Subject: Re: [RFC 0/2] Reenable might_sleep() checks for might_fault() when atomic Message-ID: <20141126152334.GA9648@redhat.com> References: <1416915806-24757-1-git-send-email-dahi@linux.vnet.ibm.com> <20141126070258.GA25523@redhat.com> <20141126110504.511b733a@thinkpad-w530> <20141126151729.GB9612@redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20141126151729.GB9612@redhat.com> Sender: linux-arch-owner@vger.kernel.org List-ID: To: David Hildenbrand Cc: linuxppc-dev@lists.ozlabs.org, linux-arch@vger.kernel.org, linux-kernel@vger.kernel.org, benh@kernel.crashing.org, paulus@samba.org, akpm@linux-foundation.org, heiko.carstens@de.ibm.com, schwidefsky@de.ibm.com, borntraeger@de.ibm.com, mingo@kernel.org Message-ID: <20141126152334.Oxemp-1yViOj9ykvNJiTPs4pVmXd8SQW7MxUvTKxFRE@z> On Wed, Nov 26, 2014 at 05:17:29PM +0200, Michael S. Tsirkin wrote: > On Wed, Nov 26, 2014 at 11:05:04AM +0100, David Hildenbrand wrote: > > > What's the path you are trying to debug? > > > > Well, we had a problem where we held a spin_lock and called > > copy_(from|to)_user(). We experienced very random deadlocks that took some guy > > almost a week to debug. The simple might_sleep() check would have showed this > > error immediately. > > This must have been a very old kernel. > A modern kernel will return an error from copy_to_user. > Which is really the point of the patch you are trying to revert. That's assuming you disabled preemption. If you didn't, and take a spinlock, you have deadlocks even without userspace access. -- MST