On Wed 18-04-18 20:43:11, Tetsuo Handa wrote: > Michal Hocko wrote: > > > Don't complain if IS_ERR_VALUE(), > > > > this is simply wrong. We do want to warn on the failure because this is > > when the actual clash happens. We should just warn on EEXIST. > > >From 25442cdd31aa5cc8522923a0153a77dfd2ebc832 Mon Sep 17 00:00:00 2001 > From: Tetsuo Handa <penguin-kernel@xxxxxxxxxxxxxxxxxxx> > Date: Wed, 18 Apr 2018 20:38:15 +0900 > Subject: [PATCH] fs, elf: don't complain MAP_FIXED_NOREPLACE unless -EEXIST > error. > > Commit 4ed28639519c7bad ("fs, elf: drop MAP_FIXED usage from elf_map") is > printing spurious messages under memory pressure due to map_addr == -ENOMEM. > > 9794 (a.out): Uhuuh, elf segment at 00007f2e34738000(fffffffffffffff4) requested but the memory is mapped already > 14104 (a.out): Uhuuh, elf segment at 00007f34fd76c000(fffffffffffffff4) requested but the memory is mapped already > 16843 (a.out): Uhuuh, elf segment at 00007f930ecc7000(fffffffffffffff4) requested but the memory is mapped already > > Complain only if -EEXIST, and use %px for printing the address. Yes this is better. But... [...] > - if ((type & MAP_FIXED_NOREPLACE) && BAD_ADDR(map_addr)) > - pr_info("%d (%s): Uhuuh, elf segment at %p requested but the memory is mapped already\n", > - task_pid_nr(current), current->comm, > - (void *)addr); > + if ((type & MAP_FIXED_NOREPLACE) && map_addr == -EEXIST) ... please use PTR_ERR(map_addr) == -EEXIST then you can add Acked-by: Michal Hocko <mhocko@xxxxxxxx> > + pr_info("%d (%s): Uhuuh, elf segment at %px requested but the memory is mapped already\n", > + task_pid_nr(current), current->comm, (void *)addr); > > return(map_addr); > } > -- > 1.8.3.1 -- Michal Hocko SUSE Labs