Bug 542521

Summary: BELL (ascii 7) on /dev/pts/X does not beep in F12
Product: [Fedora] Fedora Reporter: Igor Durdanovic <idurdanovic>
Component: libX11Assignee: Søren Sandmann Pedersen <sandmann>
Status: CLOSED DUPLICATE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: low    
Version: 12CC: kem, mcepl, mlichvar, pertusus, ralston, sandmann
Target Milestone: ---   
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2009-12-09 08:53:22 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Igor Durdanovic 2009-11-30 02:00:13 UTC
Description of problem:

I upgraded from F10 to F12 on T61p (x86_64) and the beeping sound
disappeared. So far this has affected xterm and x/emacs.

I am running identical kernel configuration (except for being compiled
with different gcc) in both F10 and F12. The pc-speaker works, command 
beep works.

I traced the issue to the following 3 cases:

- Writing "bell" (ascii 7) to /dev/console it beeps on both (F10 & F12).
- Writing to /dev/ttyX it beeps on both too.
- Writing to /dev/pts/X does not beep on F12 while it beeps on F10!?

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

Upgrade from F10 to F12.

How reproducible:

Every time.

Steps to Reproduce:
1. printf "\a" >> /dev/console 
2. printf "\a" >> /dev/tty1
3. printf "\a" >> /dev/pts/1
  
Actual results:
1. beeps
2. beeps 
3. does not beep

Expected results:
1. beeps
2. beeps 
3. beeps

Additional info:

Comment 1 Miroslav Lichvar 2009-12-01 12:40:08 UTC
Not sure what's wrong, but xterm is calling XBell() as it should.

Comment 2 Igor Durdanovic 2009-12-01 16:39:21 UTC
I do not think it is xterm or x/emacs problem, the problem is in /dev/pts/X <- it does not interpret "\a" as bell and it does not beep. I checked /etc/inputrc, and ~/.inputrc and visuall bell is not on.

Comment 3 Igor Durdanovic 2009-12-03 06:20:27 UTC
Few more things, if I run screen from console, created /dev/pts/X will beep on bell chracter. Starting X and attaching the same screen /dev/pts/X inside an xterm still beeps. But if I start new screen within X (xterm) the newly created /dev/pts/X does not beep. It seems as if X does something to newly created /dev/pts/X devices that turns off beeping? I did strace on X and xterm and it uses ioctl( SNDCTL_TIMER... ) call. Not sure what effect does that have on /dev/pts/X ? maybe that is the problem?

Comment 4 Igor Durdanovic 2009-12-06 00:01:51 UTC
Just discovered interesting thing, the beep happens when I am remotely controlling the desktop (via vncviewer)! It seems the check somewhere deep in the bowels of the X server is reversed. Any idea where to look?

Comment 5 James Ralston 2009-12-09 03:45:12 UTC
Igor, bug 520137 might be relevant...

Comment 6 Igor Durdanovic 2009-12-09 08:18:59 UTC
Yes, I had a look at it. I solved the problem for the moment by brute force - making a small library that replaces XBell() with XKbBell() and then preloading it.

What is most puzzling though is that when vieving the display remotely via vncviewer (+ vine-server) the BELL character produces beep (on the remote machine), same for Ctrl-G in x/emacs. IMO, the behavior should be reversed, can somebody look into that (I have no idea where to look)?

Comment 7 Matěj Cepl 2009-12-09 08:53:22 UTC

*** This bug has been marked as a duplicate of bug 520137 ***