[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20230616084715.2140984-1-glider@google.com>
Date: Fri, 16 Jun 2023 10:47:15 +0200
From: Alexander Potapenko <glider@...gle.com>
To: torvalds@...ux-foundation.org
Cc: dave.hansen@...ux.intel.com, kirill.shutemov@...ux.intel.com,
linux-kernel@...r.kernel.org, peterz@...radead.org, x86@...nel.org,
Alexander Potapenko <glider@...gle.com>
Subject: Re: [GIT PULL] x86/mm for 6.4
Hi Linus,
> static bool ex_handler_uaccess(const struct exception_table_entry *fixup,
> - struct pt_regs *regs, int trapnr)
> + struct pt_regs *regs, int trapnr,
> + unsigned long fault_address)
> {
> - WARN_ONCE(trapnr == X86_TRAP_GP, "General protection fault in user access. Non-canonical address?");
> + WARN_ONCE(trapnr == X86_TRAP_GP && !gp_fault_address_ok(fault_address),
> + "General protection fault in user access. Non-canonical address?");
> return ex_handler_default(fixup, regs);
> }
Shouldn't ex_handler_copy() be fixed in the same way?
Looks like it's still possible for a tagged userspace address to be passed to it and trigger a warning.
Alex
Powered by blists - more mailing lists