Bug 216961 - [PATCH] No sound--ALSA audio drivers fail to load on boot of kernel-xen
Summary: [PATCH] No sound--ALSA audio drivers fail to load on boot of kernel-xen
Keywords:
Status: CLOSED WONTFIX
Alias: None
Product: Fedora
Classification: Fedora
Component: kernel-xen
Version: 8
Hardware: x86_64
OS: Linux
medium
urgent
Target Milestone: ---
Assignee: Xen Maintainance List
QA Contact: Virtualization Bugs
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2006-11-22 21:43 UTC by mcnster
Modified: 2009-12-14 20:40 UTC (History)
2 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2009-01-09 07:01:39 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)
[PATCH] To enable sound in kernel-xen. (1.05 KB, patch)
2006-11-22 21:43 UTC, mcnster
no flags Details | Diff
Alternate fix to enable sound in kernel-xen (x86_64). Possibly safer than prior. (678 bytes, patch)
2007-01-05 03:42 UTC, mcnster
no flags Details | Diff

Description mcnster 2006-11-22 21:43:54 UTC
Description of problem:
When Linux boots from kernel-xen (domain-0) the ice1712.o soundcard module does
not load properly and gives an error of:

architecture does not support 28bit PCI bus master DMA
device disabled

The result is the /dev/timer and /dev/seq devices are available but there is no
/dev/pcm* and thus no sound.  There are numerous other ALSA cards that will
probably also fail with this message, but I haven't tested them.

Version-Release number of selected component (if applicable):
kernel-xen-2.6.18-1.2849fc6.x86_64.rpm

How reproducible:
Always.

Steps to Reproduce:
1.  Install kernel-xen
2.  Reboot and select the xen kernel from the GRUB menu.
3.  Run 'dmesg' to view the error described above.
4.  Run 'speaker-test'.

Actual results:
No sound.

Expected results:
Sound.

Additional info:
A patch to the kernel sources is attached that seems to remedy the problem.  It
works by eliminating the early fail-return of the soundcard driver's calls to
pci_set_dma_mask() and pci_set_consistent_dma_mask().  This leaves the dma_mask
its pci driver undefined.  Furthermore, the pci driver code is changed in
several places so that if dma_mask is undefined, the default dma_mask to use
will be 28 bits instead of 32 bits.  This suits the ice1712 driver fine, but its
impact on other drivers who do not set the dma_mask is unknown.  You have been
warned.

The included patch fixes the ice1712 code only.  If you have a different sound
card needing a 28 bit dma_mask then you need to search out and comment out the
early-return yourself in its driver source.  Good luck.

Comment 1 mcnster 2006-11-22 21:43:54 UTC
Created attachment 141945 [details]
[PATCH] To enable sound in kernel-xen.

Comment 2 Stephen Tweedie 2006-11-23 22:14:15 UTC
Please don't attach gzipped patches, it's much easier to browse then uncompressed.

But anyway, this isn't a proper fix --- it's going to have all sorts of problems
for other drivers.  The right fix is probably going to have to be within
swiotlb, and I just happen to have been looking at another driver (networking
this time) which has similar trouble.

Can you please try an alternative patch?  Look at
linux/arch/i386/kernel/swiotlb.c, and change 

#define IO_TLB_DMA_BITS 31

to

#define IO_TLB_DMA_BITS 28

near the top.  (The same file should be used for both i386 and x86_64 builds.)

Does that help?  Thanks.


Comment 3 mcnster 2007-01-05 03:42:59 UTC
Created attachment 144878 [details]
Alternate fix to enable sound in kernel-xen (x86_64).  Possibly safer than prior.

That the dma_supported code works at all is a bit of a miracle.  This
quasi-patch may illustrate the deficiency.

Comment 4 Red Hat Bugzilla 2007-07-25 01:36:33 UTC
change QA contact

Comment 5 Stephen Miller 2008-02-12 14:50:38 UTC
Having a similar problem, fc8, kernel 2.6.23.14-115.fc8. Audio drivers only load
about half the time. Also, even when it works, the usb webcam audio  (mic)
driver sometimes fails to show up in the administrative soundcard detection
window, but does show up in the hardware sound preferences menu and does work.
Symptoms vary; system is apparently unstable, at least from an audio standpoint.
Let me know if you'd like any files. One of my recent dmesg's can be found as an
attachment to bug# 432258.

Comment 6 Bug Zapper 2008-11-26 07:06:24 UTC
This message is a reminder that Fedora 8 is nearing its end of life.
Approximately 30 (thirty) days from now Fedora will stop maintaining
and issuing updates for Fedora 8.  It is Fedora's policy to close all
bug reports from releases that are no longer maintained.  At that time
this bug will be closed as WONTFIX if it remains open with a Fedora 
'version' of '8'.

Package Maintainer: If you wish for this bug to remain open because you
plan to fix it in a currently maintained version, simply change the 'version' 
to a later Fedora version prior to Fedora 8's end of life.

Bug Reporter: Thank you for reporting this issue and we are sorry that 
we may not be able to fix it before Fedora 8 is end of life.  If you 
would still like to see this bug fixed and are able to reproduce it 
against a later version of Fedora please change the 'version' of this 
bug to the applicable version.  If you are unable to change the version, 
please add a comment here and someone will do it for you.

Although we aim to fix as many bugs as possible during every release's 
lifetime, sometimes those efforts are overtaken by events.  Often a 
more recent Fedora release includes newer upstream software that fixes 
bugs or makes them obsolete.

The process we are following is described here: 
http://fedoraproject.org/wiki/BugZappers/HouseKeeping

Comment 7 Bug Zapper 2009-01-09 07:01:39 UTC
Fedora 8 changed to end-of-life (EOL) status on 2009-01-07. Fedora 8 is 
no longer maintained, which means that it will not receive any further 
security or bug fix updates. As a result we are closing this bug.

If you can reproduce this bug against a currently maintained version of 
Fedora please feel free to reopen this bug against that version.

Thank you for reporting this bug and we are sorry it could not be fixed.


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