From: Andrea Arcangeli on 19 Apr 2010 12:20 On Mon, Apr 19, 2010 at 05:45:05PM +0200, Peter Zijlstra wrote: > Wouldn't a longer poison be more recognisable? Also, shouldn't this use > POISON_POINTER_DELTA? > > Something like: > > #define HUGETBL_POISON ((void *) 0x00300300 + POISON_POINTER_DELTA) > > 0x2e5 isn't that high, I've had actual derefs in that range. The default at kernel config time sets only 4k as unmapped (I think it's a very bad default for 64bit archs), so above 4k userland can map it and you can have actual derefs with 0x00300300 but not with Mel's preferred <0x1000 address. So the address must be <0x1000. -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo(a)vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
From: Andrea Arcangeli on 19 Apr 2010 13:20 On Mon, Apr 19, 2010 at 06:18:48PM +0200, Peter Zijlstra wrote: > Well, most poison values have that problem and still we have them. Also That would better be fixed too to stay <4096 for higher chance of bug-detection, it doesn't make this case correct ;). > on 64bit machines you can use POISON_POINTER_DELTA to map it outside the > virtual address range. We've thousands of magic values there, I don't see much benefit from POISON_POINTER_DELTA other than being able to call it 0xdeadbeef+POISON_POINTER_DELTA ;). We always look the assembly to find the actual real raw pointer value (without the field offset) so I think using a range between 0xaaa and 0xbbb for the error pointers, is functional enough, but it's up to you as long as it is a address range that can't be used by userland it's surely ok ;). -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo(a)vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
First
|
Prev
|
Pages: 1 2 Prev: Add a global synchronization point for pvclock Next: Athlon L110 CPU and powernow-k8 |