[lkml]   [2005]   [Aug]   [15]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
SubjectRe: [patch 18/39] remap_file_pages protection support: add VM_FAULT_SIGSEGV
Russell King wrote:
> On Fri, Aug 12, 2005 at 08:21:45PM +0200, wrote:
>>@@ -632,10 +632,11 @@ static inline int page_mapped(struct pag
>> * Used to decide whether a process gets delivered SIGBUS or
>> * just gets major/minor fault counters bumped up.
>> */
>>-#define VM_FAULT_OOM (-1)
>>-#define VM_FAULT_SIGBUS 0
>>-#define VM_FAULT_MINOR 1
>>-#define VM_FAULT_MAJOR 2
>>+#define VM_FAULT_OOM (-1)
>>+#define VM_FAULT_SIGBUS 0
>>+#define VM_FAULT_MINOR 1
>>+#define VM_FAULT_MAJOR 2
>>+#define VM_FAULT_SIGSEGV 3
>> #define offset_in_page(p) ((unsigned long)(p) & ~PAGE_MASK)
> Please arrange for "success" values to be numerically larger than "failure"
> values. This will avoid breaking ARM.
> Is there a reason why we don't use -ve numbers for failure and +ve for
> success here?

Well there is now, and that is we are now using a bit in the 2nd
byte as flags. So I had to do away with -ve numbers there entirely.

You could achieve a similar thing by using another bit in that byte
#define VM_FAULT_FAILED 0x20
and make that bit present in VM_FAULT_OOM and VM_FAULT_SIGBUS, then
do an unlikely test for that bit in your handler and branch away to
the slow path.

SUSE Labs, Novell Inc.

Send instant messages to your online friends

To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to
More majordomo info at
Please read the FAQ at

 \ /
  Last update: 2005-08-15 12:16    [W:0.065 / U:1.856 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site