On Mon, Nov 10, 2025 at 6:13 PM Paul Moore <[email protected]> wrote: > On Sun, Nov 9, 2025 at 1:37 AM Al Viro <[email protected]> wrote: > > > > Originally we tried to avoid multiple insertions into audit names array > > during retry loop by a cute hack - memorize the userland pointer and > > if there already is a match, just grab an extra reference to it. > > > > Cute as it had been, it had problems - two identical pointers had > > audit aux entries merged, two identical strings did not. Having > > different behaviour for syscalls that differ only by addresses of > > otherwise identical string arguments is obviously wrong - if nothing > > else, compiler can decide to merge identical string literals. > > > > Besides, this hack does nothing for non-audited processes - they get > > a fresh copy for retry. It's not time-critical, but having behaviour > > subtly differ that way is bogus. > > > > These days we have very few places that import filename more than once > > (9 functions total) and it's easy to massage them so we get rid of all > > re-imports. With that done, we don't need audit_reusename() anymore. > > There's no need to memorize userland pointer either. > > > > Signed-off-by: Al Viro <[email protected]> > > --- > > fs/namei.c | 11 +++-------- > > include/linux/audit.h | 11 ----------- > > include/linux/fs.h | 1 - > > kernel/auditsc.c | 23 ----------------------- > > 4 files changed, 3 insertions(+), 43 deletions(-) > > Looks reasonable to me. Not sure if you've run it through the > audit-testsuite yet, but I'm building a test kernel as I write this, > I'll let you know how it goes. > > Acked-by: Paul Moore <[email protected]>
FWIW, it passes the audit-testsuite. Tested-by: Paul Moore <[email protected]> -- paul-moore.com
