![]() | |||||||||||||
Messages in this thread |
Russell King wrote: > On Fri, Aug 12, 2005 at 08:21:45PM +0200, blaisorblade@yahoo.it 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 http://au.messenger.yahoo.com - 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/ | ||||||||||||
| Last update: 2005-08-15 12:16 [W:1.265 / U:0.630 seconds] ©2003-2008 Jasper Spaans | |||||||||||||