Bug 676242 - thread race on UDP socket_send()
thread race on UDP socket_send()
Product: Red Hat Enterprise Linux 5
Classification: Red Hat
Component: bind (Show other bugs)
All Linux
high Severity medium
: rc
: ---
Assigned To: Adam Tkac
: OtherQA
Depends On:
Blocks: 719046 668957
  Show dependency treegraph
Reported: 2011-02-09 02:36 EST by Takuma Umeya
Modified: 2012-07-11 03:19 EDT (History)
3 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Last Closed: 2012-02-21 01:20:24 EST
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---

Attachments (Terms of Use)
config files (7.50 KB, application/x-gzip)
2011-02-09 02:36 EST, Takuma Umeya
no flags Details
Improved patch (1.74 KB, patch)
2011-08-04 14:05 EDT, Adam Tkac
no flags Details | Diff

  None (edit)
Description Takuma Umeya 2011-02-09 02:36:00 EST
Created attachment 477752 [details]
config files

Description of problem:
socket_send() operation must invoke LOCK(&sock->lock) to take lock during the procedure on UDP. Without it, socket_send()->doio_send() is invoked in multiple threads, causing the following error to show up: 
Jan xx xx:xx:xx xxx named[xxxx]: zone xxx.xxx.xxx.in-addr.arpa/IN: refresh: failure trying master xxx.xxx.xxx.xxx#53 (source xxx.xxx.xxx.xxx#0): operation canceled

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

How reproducible:

Steps to Reproduce:
(Reference from the vendor's report)
Please set up the configuration of named by using attached sample files.
Please refer following example operations.

a. install the named configuration
Please use the attached archive file named_config_files.tgz.
Following files are included in this archive file.
-configuration files:

-symbolic links:
etc/init.d/named-prv -> /etc/namedb-prv/named-prv
etc/init.d/named-wgw -> /etc/namedb-wgw/named-wgw
usr/sbin/named-prv -> named
usr/sbin/named-wgw -> named

b. customize configurations for named
Please verify configurations( /etc/namedb-prv/* and /etc/namedb-wgw/*)
and customize each /etc/namedb-prv/named.conf and /etc/namedb-wgw/named.conf.
Especially, you should verify and customize ip addresses.

c. set up named service
Please execute following operation to set up
each named-prv and named-wgw service.

# cd /
# tar xvzf named_config_files.tgz
# chkconfig --add named-prv
# chkconfig --add named-wgw
# chkconfig --levels 2345 named-prv on
# chkconfig --levels 2345 named-wgw on

d. customize named debug options
- init script for named(/etc/init.d/xxx)
Please verify the installed script files(/etc/init.d/named-prv, /etc/init.d/named-wgw)
If you need to set up the debug-level option of named,
please change the daemon command line as follows:

daemon /usr/sbin/$prog -c $conffile
-> daemon /usr/sbin/$prog -d 99 -c $conffile

- logging paragraph of the named.conf
Please confirm and customize the logging paragraph of the
/etc/namedb-prv/named.conf and /etc/namedb-wgw/named.conf.
Regaeding attached sample named.conf files, debug log files are as follows:
- /var/log/named-prv_debug for named-prv
- /var/log/named-wgw_debug for named-wgw

e. start both named-prv and named-wgw services
# service named-prv start
# service named-wgw start 

Actual results:
Operation cancelled error appears. 

Expected results:
The error should not appear. 

Additional info:
Comment 5 Adam Tkac 2011-08-04 14:05:54 EDT
Created attachment 516761 [details]
Improved patch

Improved patch which doesn't affect performance of named.
Comment 19 errata-xmlrpc 2012-02-21 01:20:24 EST
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.


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