Bug 210453 - gnbd handles signals outside process context
Summary: gnbd handles signals outside process context
Alias: None
Product: Red Hat Cluster Suite
Classification: Retired
Component: gnbd   
(Show other bugs)
Version: 4
Hardware: All Linux
Target Milestone: ---
Assignee: Ben Marzinski
QA Contact: Cluster QE
Depends On:
Blocks: 215099
TreeView+ depends on / blocked
Reported: 2006-10-12 08:26 UTC by Bryn M. Reeves
Modified: 2009-04-16 19:58 UTC (History)
2 users (show)

Fixed In Version: RHBA-2007-0144
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Last Closed: 2007-05-10 21:06:11 UTC
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---

Attachments (Terms of Use)

External Trackers
Tracker ID Priority Status Summary Last Updated
Red Hat Product Errata RHBA-2007:0144 normal SHIPPED_LIVE gnbd-kernel bug fix update 2007-05-10 21:06:09 UTC

Description Bryn M. Reeves 2006-10-12 08:26:40 UTC
Description of problem:
Processes accessing a GFS filesystem backed by gnbd devices become stuck in D

At the time of the hangs messages appear on the client nodes from gnbd:

Sep  4 14:06:01 HPC2 sshd(pam_unix)[18706]: session closed for user jopan
Sep  4 14:08:54 HPC2 kernel: gnbd (pid 18821: MakeNearBnBtJPE) got signal 9
Sep  4 14:08:54 HPC2 kernel: gnbd5: Send control failed (result -4)
Sep  4 14:10:17 HPC2 sshd(pam_unix)[18844]: session opened for user jopan by (uid=0)
Sep  4 14:10:19 HPC2 sshd(pam_unix)[18844]: session closed for user jopan

It looks like sock_xmit is being called via do_gnbd_request and gnbd_send_req
outside process context (softirq?).

At this time, current evaluates to the last process to be scheduled instead of
the gnbd thread. If the process happens to have a signal pending when we return
from sock_sendmsg, sock_xmit incorrectly dequeues it and returns -EINTR.

We should only attempt signal handling when running in the context of the gnbd

Comment 5 Red Hat Bugzilla 2007-05-10 21:06:11 UTC
An advisory has been issued which should help the problem
described in this bug report. This report is therefore being
closed with a resolution of ERRATA. For more information
on the solution and/or where to find the updated files,
please follow the link below. You may reopen this bug report
if the solution does not work for you.


Note You need to log in before you can comment on or make changes to this bug.