• Linus Torvalds's avatar
    Merge branch 'siginfo-linus' of... · d66db9f6
    Linus Torvalds authored
    Merge branch 'siginfo-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ebiederm/user-namespace
    
    Pull siginfo updates from Eric Biederman:
     "The work on cleaning up and getting the bugs out of siginfo generation
      was largely stalled this round. The progress that was made was the
      definition of FPE_FLTUNK. Which is usable to fix many of the cases
      where siginfo generation is erroneously generating SI_USER by setting
      si_code to 0, that has recently been tagged as FPE_FIXME.
    
      You already have the change by way of the arm64 tree as that
      definition was pulled into the arm64 tree to allow fixing the problem
      there.
    
      What remains is the second round of fixing for what I thought was a
      trivial change to the struct siginfo when put the union in _sigfault
      where it belongs. Do to historical reasons 32bit m68k only ensures
      that pointers are 2 byte aligned. So I have added a m68k test case
      made of BUILD_BUG_ONs to verify I have this fix correct and possibly
      catch problems, and I have computed the number of bytes of padding
      needed for the _addr_bnd and _addr_pkey cases and just use an array of
      characters that size.
    
      For pure paranoia I have written the code so if there is an
      architecture out there that does not perform any alignment of
      structures it should still work.
    
      With the removal of all of the stale arechitectures this cycle future
      work on cleaning up struct siginfo should be much easier. Almost all
      of the conflicting si_code definitions have been removed with the
      removal of (blackfin, tile, and frv). Plus some of the most difficult
      to test cases have simply been removed from the tree.
    
      Which means that with a little luck copy_siginfo_to_user can become a
      light weight wrapper around copy_to_user in the next cycle"
    
    * 'siginfo-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ebiederm/user-namespace:
      m68k: Verify the offsets in struct siginfo never change.
      signal: Correct the offset of si_pkey and si_lower in struct siginfo on m68k
    d66db9f6
siginfo.h 9.75 KB