Whamcloud - gitweb
LU-3020 obdclass: Lustre returns EINTR when SA_RESTART is set
authorPatrick Farrell <paf@cray.com>
Wed, 27 Mar 2013 21:27:28 +0000 (16:27 -0500)
committerOleg Drokin <oleg.drokin@intel.com>
Tue, 23 Apr 2013 05:47:32 +0000 (01:47 -0400)
commitf89e5ac9ea117137d826d008b64ac3eaa625b456
treeae75258915dd1e5ff1f54e0fe4d60ad87a4c74ea
parent847e98c42002f2b22c9b3b9624a44c327dee9050
LU-3020 obdclass: Lustre returns EINTR when SA_RESTART is set

When Lustre is in a read or write system call and receives a
SIGALRM, it currently returns EINTR at this location. This is
problematic because it prevents the system call from being restarted
if SA_RESTART is set in the handler.

This patch changes behavior in this location to return ERESTARTSYS
when a signal is found.

Signed-off-by: Patrick Farrell <paf@cray.com>
Change-Id: I26e24b8e8e325c5b0bd7d5d20fa97e2180c12263
Reviewed-on: http://review.whamcloud.com/5814
Reviewed-by: Cory Spitz <spitzcor@cray.com>
Tested-by: Hudson
Reviewed-by: Bob Glossman <bob.glossman@intel.com>
Tested-by: Maloo <whamcloud.maloo@gmail.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
lustre/obdclass/cl_lock.c