• Jeff Dike's avatar
    [PATCH] uml: SIGIO cleanups · 19bdf040
    Jeff Dike authored
    - Various cleanups in the sigio code.
    
    - Removed explicit zero-initializations of a few structures.
    
    - Improved some error messages.
    
    - An API change - there was an asymmetry between reactivate_fd calling
      maybe_sigio_broken, which goes through all the machinery of figuring out if
      a file descriptor supports SIGIO and applying the workaround to it if not,
      and deactivate_fd, which just turns off the descriptor.
    
      This is changed so that only activate_fd calls maybe_sigio_broken, when
      the descriptor is first seen.  reactivate_fd now calls add_sigio_fd, which
      is symmetric with ignore_sigio_fd.
    
      This removes a recursion which makes a critical section look more critical
      than it really was, obsoleting a big comment to that effect.  This requires
      keeping track of all descriptors which are getting the SIGIO treatment, not
      just the ones being polled at any given moment, so that reactivate_fd,
      through add_sigio_fd, doesn't try to tell the SIGIO thread about descriptors
      it doesn't care about.
    Signed-off-by: default avatarJeff Dike <jdike@addtoit.com>
    Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
    Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
    19bdf040
sigio.c 7.38 KB