On 02/12/2018 06:18 PM, Eric W. Biederman wrote: > Randy Dunlap <rdunlap@xxxxxxxxxxxxx> writes: > >> From: Randy Dunlap <rdunlap@xxxxxxxxxxxxx> >> >> Fix build error in fs/signalfd.c by using same method that is used in >> kernel/signal.c: separate blocks for different signal si_code values. >> >> ./fs/signalfd.c: error: 'BUS_MCEERR_AR' undeclared (first use in this function) >> >> Reported-by: Geert Uytterhoeven <geert@xxxxxxxxxxxxxx> >> Signed-off-by: Randy Dunlap <rdunlap@xxxxxxxxxxxxx> >> Cc: Eric Biederman <ebiederm@xxxxxxxxxxxx> >> Cc: Alexander Viro <viro@xxxxxxxxxxxxxxxxxx> > > Acked-by: "Eric W. Biederman" <ebiederm@xxxxxxxxxxxx> > > Do you want to me to pick this one up? Or does it have another path > into mainline? > Just via you or Al. You might as well take it. Thanks. > >> --- >> fs/signalfd.c | 15 ++++++++++++--- >> 1 file changed, 12 insertions(+), 3 deletions(-) >> >> Applies to mainline 4.16-rc1. >> >> --- linux-next-20180212.orig/fs/signalfd.c >> +++ linux-next-20180212/fs/signalfd.c >> @@ -118,13 +118,22 @@ static int signalfd_copyinfo(struct sign >> err |= __put_user(kinfo->si_trapno, &uinfo->ssi_trapno); >> #endif >> #ifdef BUS_MCEERR_AO >> - /* >> + /* >> * Other callers might not initialize the si_lsb field, >> * so check explicitly for the right codes here. >> */ >> if (kinfo->si_signo == SIGBUS && >> - (kinfo->si_code == BUS_MCEERR_AR || >> - kinfo->si_code == BUS_MCEERR_AO)) >> + kinfo->si_code == BUS_MCEERR_AO) >> + err |= __put_user((short) kinfo->si_addr_lsb, >> + &uinfo->ssi_addr_lsb); >> +#endif >> +#ifdef BUS_MCEERR_AR >> + /* >> + * Other callers might not initialize the si_lsb field, >> + * so check explicitly for the right codes here. >> + */ >> + if (kinfo->si_signo == SIGBUS && >> + kinfo->si_code == BUS_MCEERR_AR) >> err |= __put_user((short) kinfo->si_addr_lsb, >> &uinfo->ssi_addr_lsb); >> #endif -- ~Randy