• S
    [PATCH] kthread: airo.c · 3b4c7d64
    Sukadev Bhattiprolu 提交于
    The airo driver is currently caching a pid for later use, but with the
    implementation of containers, pids themselves do not uniquely identify a
    task.  The driver is also using kernel_thread() which is deprecated in
    drivers.
    
    This patch essentially replaces the kernel_thread() with kthread_create().
    It also stores the task_struct of the airo_thread rather than its pid.
    Since this introduces a second task_struct in struct airo_info, the patch
    renames airo_info.task to airo_info.list_bss_task.
    
    As an extension of these changes, the patch further:
    
    	 - replaces kill_proc() with kthread_stop()
    	 - replaces signal_pending() with kthread_should_stop()
    	 - removes thread completion synchronisation which is handled by
    	   kthread_stop().
    
    [akpm@osdl.org: fix races]
    Signed-off-by: NSukadev Bhattiprolu <sukadev@us.ibm.com>
    Cc: Javier Achirica <achirica@gmail.com>
    Cc: Christoph Hellwig <hch@infradead.org>
    Signed-off-by: NAndrew Morton <akpm@osdl.org>
    Signed-off-by: NJohn W. Linville <linville@tuxdriver.com>
    3b4c7d64
airo.c 218.7 KB