signal-common.h 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. /*
  2. * This file is subject to the terms and conditions of the GNU General Public
  3. * License. See the file "COPYING" in the main directory of this archive
  4. * for more details.
  5. *
  6. * Copyright (C) 1991, 1992 Linus Torvalds
  7. * Copyright (C) 1994 - 2000 Ralf Baechle
  8. * Copyright (C) 1999, 2000 Silicon Graphics, Inc.
  9. */
  10. #ifndef __SIGNAL_COMMON_H
  11. #define __SIGNAL_COMMON_H
  12. /* #define DEBUG_SIG */
  13. #ifdef DEBUG_SIG
  14. # define DEBUGP(fmt, args...) printk("%s: " fmt, __func__, ##args)
  15. #else
  16. # define DEBUGP(fmt, args...)
  17. #endif
  18. /*
  19. * Determine which stack to use..
  20. */
  21. extern void __user *get_sigframe(struct k_sigaction *ka, struct pt_regs *regs,
  22. size_t frame_size);
  23. /* Check and clear pending FPU exceptions in saved CSR */
  24. extern int fpcsr_pending(unsigned int __user *fpcsr);
  25. /* Make sure we will not lose FPU ownership */
  26. #ifdef CONFIG_PREEMPT
  27. #define lock_fpu_owner() preempt_disable()
  28. #define unlock_fpu_owner() preempt_enable()
  29. #else
  30. #define lock_fpu_owner() pagefault_disable()
  31. #define unlock_fpu_owner() pagefault_enable()
  32. #endif
  33. #endif /* __SIGNAL_COMMON_H */