• Eric W. Biederman's avatar
    signal/drbd: Use send_sig not force_sig · fee10990
    Eric W. Biederman authored
    The drbd module exclusively sends signals to kernel threads it creates with
    kthread_create.  These kernel threads do not block or ignore signals (only
    flush signals after they have been delivered), nor can drbd threads
    possibly be pid namespace init processes so the extra work that force_sig
    performs that send_sig does not is unnecessary.
    
    Further force_sig is for delivering synchronous signals (aka exceptions).
    The locking in force_sig is not prepared to deal with running processes, as
    tsk->sighand may change during exec for a running process.
    
    In short it is not only unnecessary for drbd to use force_sig it is
    semantically wrong.
    
    With drbd using send_sig it becomes easier to maintain force_sig as only
    synchronous signals need to be considered.
    
    Cc: Philipp Reisner <philipp.reisner@linbit.com>
    Cc: Lars Ellenberg <lars.ellenberg@linbit.com>
    Cc: drbd-dev@lists.linbit.com
    Signed-off-by: default avatar"Eric W. Biederman" <ebiederm@xmission.com>
    fee10990
drbd_int.h 80.9 KB