Messages in this thread | | | Date | Tue, 19 Dec 2017 14:16:25 -0800 | From | Matthew Wilcox <> | Subject | Re: BUG: bad usercopy in memdup_user |
| |
On Tue, Dec 19, 2017 at 01:36:46PM -0800, Linus Torvalds wrote: > On Tue, Dec 19, 2017 at 5:22 AM, Matthew Wilcox <willy@infradead.org> wrote: > > > > Could we have a way to know that the printed address is hashed and not just > > a pointer getting completely scrogged? Perhaps prefix it with ... a hash! > > So this line would look like: > > The problem with that is that it will break tools that parse things.
Yeah, but the problem is that until people know to expect hashes, it breaks people. I spent most of a day last week puzzling over a value coming from a VM_BUG_ON that was explicitly tested for and couldn't happen.
> When we find something like this, we should either remove it, fix the > permissions, or switch to %px.
Right; I sent a patch to fix VM_BUG_ON earlier today after reading this thread.
> But honestly, what do people expect that the pointer value will > actually tell you if it is unhashed?
It would have been meaningful to me. For a start, I would have seen that the bottom two bits were clear, so this was actually a pointer and not something masquerading as a pointer.
| |