From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id ; Fri, 10 May 2002 11:59:57 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id ; Fri, 10 May 2002 11:59:55 -0400 Received: from pizda.ninka.net ([216.101.162.242]:59840 "EHLO pizda.ninka.net") by vger.kernel.org with ESMTP id ; Fri, 10 May 2002 11:59:51 -0400 Date: Fri, 10 May 2002 08:47:22 -0700 (PDT) Message-Id: <20020510.084722.124055793.davem@redhat.com> To: macro@ds2.pg.gda.pl Cc: dizzy@roedu.net, linux-kernel@vger.kernel.org Subject: Re: mmap, SIGBUS, and handling it From: "David S. Miller" In-Reply-To: X-Mailer: Mew version 2.1 on Emacs 21.1 / Mule 5.0 (SAKAKI) Mime-Version: 1.0 Content-Type: Text/Plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org X-Mailing-List: linux-kernel@vger.kernel.org From: "Maciej W. Rozycki" Date: Fri, 10 May 2002 17:53:21 +0200 (MET DST) On Fri, 10 May 2002, David S. Miller wrote: > How would you like the kernel to "ignore" a page fault that cannot be > serviced? I would expect it to return from the handler with no action, possibly re-executing the faulting instruction (if the reason was synchronous) and causing an infinite loop. For consistency, whether it makes sense, or not (ditto for SIGSEGV, etc.). If we reexecute the instruction it will take the signal endlessly, forever. That makes no sense. Next, if we skip the instruation, what should be in the destination register of the load? There is no reasonable answer. If you put zero there the program will likely segfault on a NULL pointer dereference. So my original point I was trying to make, which still stands, is that what is being requested is totally rediculious behavior, trying to ignore a page fault that can't be serviced.