Bug 679534

Summary: read/write syscalls are suspect in that they do not handle signal interrupts
Product: Red Hat Enterprise Linux 5 Reporter: Steven Dake <sdake>
Component: openaisAssignee: Jan Friesse <jfriesse>
Status: CLOSED NOTABUG QA Contact: Cluster QE <mspqa-list>
Severity: medium Docs Contact:
Priority: low    
Version: 5.8CC: cluster-maint, edamato
Target Milestone: rc   
Target Release: ---   
Hardware: All   
OS: All   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: 679531 Environment:
Last Closed: 2011-02-24 13:20:26 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Bug Depends On: 679531    
Bug Blocks:    

Description Steven Dake 2011-02-22 19:42:20 UTC
+++ This bug was initially created as a clone of Bug #679531 +++

Description of problem:
If a read/write occurs while a signal is delivered to openais, the signal could interrupt the read/write operation.  Hunt down all read/write operations in corosync of fixed length and add mechanism to handle interrupted read/write system calls.

Version-Release number of selected component (if applicable):
corosync-1.2.3

How reproducible:
theoretical problem, could be cause of ring id file being zero.

Steps to Reproduce:
1. none known
2.
3.
  
Actual results:
read and write operations on files read or write may only return partial read or  partial write.

Expected results:
read or write operations should return full length of read/write even when signals interrupt the operation.

Additional info:

Comment 1 Jan Friesse 2011-02-24 13:20:26 UTC
Copy from original bug:

> Reading signal(7) man page isn't very clear about restarts (it says disks do
> not count as "slow medium" and don't return EINTR if interrupted with SIGACTION
> but other mediums do.
> 
> I wrote a test case attached which verifies this manpage behavior with 1gb of
> reads couldn't get a short read operation.  It says this may be linux specific,
> so if people report this in the future on other platforms we can reopen.

Test case:

https://bugzilla.redhat.com/attachment.cgi?id=480526&action=diff

So closing as notabug same as original bug.