Bug 1076714

Summary: modcluster: module does not handle stdin polling correctly
Product: Red Hat Enterprise Linux 5 Reporter: Jan Pokorný [poki] <jpokorny>
Component: clustermonAssignee: Jan Pokorný [poki] <jpokorny>
Status: CLOSED ERRATA QA Contact: Cluster QE <mspqa-list>
Severity: high Docs Contact:
Priority: high    
Version: 5.11CC: cluster-maint, djansa, fdinitto, jharriga, rsteiger
Target Milestone: rcKeywords: Patch
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: clustermon-0.12.1-11.el5 Doc Type: Bug Fix
Doc Text:
See BZ#1076711, although this is for a detached module from a non-ricci package. Cause: Modcluster, module of ricci, but shipped with clustermon package, mishandling requests with size (in bytes) divisible by 4096 (size of the read buffer in bytes). Such requests will be evaluated as an error condition accompanied with "Success" description (if presented to the requester at all). Consequence: Rare request handling error under otherwise error-free conditions. Fix: Now the modcluster module shipped clustermon (that is, the remaining modules shipped directly with ricci are to be addressed with the update for that separate package/BZ#1076711) will process even requests with size (in bytes) divisible by 4096 correctly. Result: No rare request handling error under otherwise error-free conditions.
Story Points: ---
Clone Of: 1076711 Environment:
Last Closed: 2014-09-16 00:25:10 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On: 1076711    
Bug Blocks: 1076713    

Description Jan Pokorný [poki] 2014-03-14 21:25:28 UTC
clustermon (because of modcluster) also affected...

+++ This bug was initially created as a clone of Bug #1076711 +++

Just observed a situation where the current polling code breaks in case
of input being the exact multiple of the read buffer size (4096).

The cardinal issue is that the code didn't expect POLLHUP to appear
when not original asked for capture, and in turn, not expecting poll
will return positive number in such case, leading to fallback to
"nothing read of malformatted input" condition.

This is partly in one line with previously discovered issues
([bug 732483]), which led me to some more code base reviews,
resulting even in a patch to this very issue (although it was
more like fix "suspicious" than "apparent" back then): [1].
Unfortunately there was no direct justification for that patch
at that time.

[1] https://git.fedorahosted.org/cgit/conga.git/commit/?id=631b17aab8f44396c4cf373bc4466bbfcaab6563

Comment 1 RHEL Program Management 2014-03-14 21:39:04 UTC
This request was evaluated by Red Hat Product Management for
inclusion in the current release of Red Hat Enterprise Linux.
Because the affected component is not scheduled to be updated
in the current release, Red Hat is unable to address this
request at this time.

Red Hat invites you to ask your support representative to
propose this request, if appropriate, in the next release of
Red Hat Enterprise Linux.

Comment 6 RHEL Program Management 2014-03-31 20:49:01 UTC
This request was evaluated by Red Hat Product Management for
inclusion in the current release of Red Hat Enterprise Linux.
Because the affected component is not scheduled to be updated
in the current release, Red Hat is unable to address this
request at this time.

Red Hat invites you to ask your support representative to
propose this request, if appropriate, in the next release of
Red Hat Enterprise Linux.

Comment 9 RHEL Program Management 2014-04-02 12:51:50 UTC
This request was evaluated by Red Hat Product Management for
inclusion in a Red Hat Enterprise Linux release.  Product
Management has requested further review of this request by
Red Hat Engineering, for potential inclusion in a Red Hat
Enterprise Linux release for currently deployed products.
This request is not yet committed for inclusion in a release.

Comment 14 errata-xmlrpc 2014-09-16 00:25:10 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

http://rhn.redhat.com/errata/RHBA-2014-1216.html