Linux v4.11: signal stuff moved to sched/signal.h

In Linux commit c3edc4010e9d102eb7b8f17d15c2ebc425fed63c, signal_struct
and other signal handling declarations were moved from sched.h to
sched/signal.h.

This breaks existing OpenAFS autoconf tests for recalc_sigpending() and
task_struct.signal->rlim, so that the OpenAFS kernel module can no
longer build.

Modify OpenAFS autoconfig tests to cope.

Change-Id: Ic9f174b92704eabcbd374feffe5fbeb92c8987ce
Reviewed-on: https://gerrit.openafs.org/12573
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Joe Gorse <jhgorse@gmail.com>
Tested-by: Joe Gorse <jhgorse@gmail.com>
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
This commit is contained in:
Mark Vitale 2017-03-23 15:10:03 -07:00 committed by Benjamin Kaduk
parent de5ee1a67d
commit ad00155094
3 changed files with 12 additions and 2 deletions

View File

@ -937,6 +937,7 @@ case $AFS_SYSNAME in *_linux* | *_umlinux*)
AC_CHECK_LINUX_HEADER([key-type.h])
AC_CHECK_LINUX_HEADER([semaphore.h])
AC_CHECK_LINUX_HEADER([seq_file.h])
AC_CHECK_LINUX_HEADER([sched/signal.h])
dnl Type existence checks
AC_CHECK_LINUX_TYPE([struct vfs_path], [dcache.h])

View File

@ -152,6 +152,9 @@ struct xfs_inode_info {
# include <linux/fs.h>
# include <linux/quota.h>
# include <linux/sched.h>
# if defined(HAVE_LINUX_SCHED_SIGNAL_H)
# include <linux/sched/signal.h>
# endif
# include <linux/mm.h>
# include <linux/slab.h>
# include <linux/proc_fs.h>

View File

@ -114,7 +114,10 @@ AC_DEFUN([LINUX_EXPORTS_SYS_OPEN], [
AC_DEFUN([LINUX_RECALC_SIGPENDING_ARG_TYPE], [
AC_CHECK_LINUX_BUILD([for recalc_sigpending arg type],
[ac_cv_linux_func_recalc_sigpending_takes_void],
[#include <linux/sched.h>],
[#include <linux/sched.h>
#ifdef HAVE_LINUX_SCHED_SIGNAL_H
#include <linux/sched/signal.h>
#endif],
[recalc_sigpending();],
[RECALC_SIGPENDING_TAKES_VOID],
[define if your recalc_sigpending takes void],
@ -125,7 +128,10 @@ AC_DEFUN([LINUX_RECALC_SIGPENDING_ARG_TYPE], [
AC_DEFUN([LINUX_SCHED_STRUCT_TASK_STRUCT_HAS_SIGNAL_RLIM], [
AC_CHECK_LINUX_BUILD([for signal->rlim in struct task_struct],
[ac_cv_linux_sched_struct_task_struct_has_signal_rlim],
[#include <linux/sched.h>],
[#include <linux/sched.h>
#ifdef HAVE_LINUX_SCHED_SIGNAL_H
#include <linux/sched/signal.h>
#endif],
[struct task_struct _tsk; printk("%d\n", _tsk.signal->rlim);],
[STRUCT_TASK_STRUCT_HAS_SIGNAL_RLIM],
[define if your struct task_struct has signal->rlim],