History

fs/signalfd: fix build error for BUS_MCEERR_AR

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)

Randy Dunlap committed 8 years ago

Commit 9026e821 parent 7928b2c1 file · +12 −3Browse files

Unified · Split

fs/signalfd.c+12−3
@@ -118,13 +118,22 @@ static int signalfd_copyinfo(struct signalfd_siginfo __user *uinfo, · 117 unmodified lines
118 err |= __put_user(kinfo->si_trapno, &uinfo->ssi_trapno);118 err |= __put_user(kinfo->si_trapno, &uinfo->ssi_trapno);
119#endif119#endif
120#ifdef BUS_MCEERR_AO120#ifdef BUS_MCEERR_AO
121 /* 121 /*
122 * Other callers might not initialize the si_lsb field,
123 * so check explicitly for the right codes here.
124 */
125 if (kinfo->si_signo == SIGBUS &&
126 kinfo->si_code == BUS_MCEERR_AO)
127 err |= __put_user((short) kinfo->si_addr_lsb,
128 &uinfo->ssi_addr_lsb);
129#endif
130#ifdef BUS_MCEERR_AR
131 /*
122 * Other callers might not initialize the si_lsb field,132 * Other callers might not initialize the si_lsb field,
123 * so check explicitly for the right codes here.133 * so check explicitly for the right codes here.
124 */134 */
125 if (kinfo->si_signo == SIGBUS &&135 if (kinfo->si_signo == SIGBUS &&
126 (kinfo->si_code == BUS_MCEERR_AR ||136 kinfo->si_code == BUS_MCEERR_AR)
127 kinfo->si_code == BUS_MCEERR_AO))
128 err |= __put_user((short) kinfo->si_addr_lsb,137 err |= __put_user((short) kinfo->si_addr_lsb,
129 &uinfo->ssi_addr_lsb);138 &uinfo->ssi_addr_lsb);
130#endif139#endif