BTW, Takashi, if that would be of any help, I could add some #ifdef's to the driver's code that would log additional information, if you could tell me what to log. It seems that the current log messages aren't detailed enough to diagnose the problem.
For starters, I've added this:
diff -ruN alsa-driver-20091017.orig/alsa-kernel/pci/hda/hda_intel.c alsa-driver-20091017/alsa-kernel/pci/hda/hda_intel.c --- alsa-driver-20091017.orig/alsa-kernel/pci/hda/hda_intel.c 2009-10-15 00:05:03.000000000 +0200 +++ alsa-driver-20091017/alsa-kernel/pci/hda/hda_intel.c 2009-10-17 19:07:19.283328740 +0200 @@ -1182,8 +1182,8 @@ pos_align; pos_adj = frames_to_bytes(runtime, pos_adj); if (pos_adj >= period_bytes) { - snd_printk(KERN_WARNING SFX "Too big adjustment %d\n", - bdl_pos_adj[chip->dev_index]); + snd_printk(KERN_WARNING SFX "Too big adjustment %d, pos_adj: %d, period_bytes: %d\n", + bdl_pos_adj[chip->dev_index], pos_adj, period_bytes); pos_adj = 0; } else { ofs = setup_bdle(substream, azx_dev,
On Sat, Oct 17, 2009 at 2:57 PM, Aleksander Adamowski alsa@olo.org.pl wrote:
Concerning that problem, after a reboot the problem has reoccured two days later:
Oct 17 14:16:09 hostname kernel: [192087.249165] ALSA hda_intel.c:1187: Too big adjustment 32 Oct 17 14:22:08 hostname kernel: [192447.072018] ALSA hda_intel.c:1187: Too big adjustment 32 Oct 17 14:22:38 hostname kernel: [192477.062967] ALSA hda_intel.c:1187: Too big adjustment 32 Oct 17 14:23:06 hostname kernel: [192504.918440] ALSA hda_intel.c:1187: Too big adjustment 32 Oct 17 14:23:37 hostname kernel: [192535.594196] ALSA hda_intel.c:1187: Too big adjustment 32
Uploaded new alsa-info.sh data from the machine: http://www.alsa-project.org/db/?f=e7e696254df6f61fa5e4755e9d1d06403dacf144
Upgrading from alsa-driver-20091005 to alsa-driver-20091017 and will let you know how it worked.
On Wed, Oct 14, 2009 at 9:04 AM, Aleksander Adamowski alsa@olo.org.pl wrote:
After running for almost ten days with alsa-driver-20091005, I didn't observe that problem.
However, a new one (well, one with slightly different symptoms) has surfaced.
The difference is only in the log files. During a Skype conversation, the other side has stopped hearing us; after trying to record some sound with arecord, I got an empty stream (a 44 byte WAV file with only a header) - just like previously.
However, this time there were no messages in the kernel logs whatsoever - no "azx_get_response timeout", no "Suggest a bigger bdl_pos_adj". Arecord also didn't flood the console with overrun errors - it was completely silent apart from the fact that it did not record anything.
The only hda-related entries I saw in the kernel log were a couple hours earlier at 20:44 - while the failure has occured between 23:00 and 00:00.
At 20:44 the following has been logged:
Oct 13 20:44:25 hostname kernel: [117828.065069] ALSA hda_intel.c:1187: Too big adjustment 32 Oct 13 20:44:25 hostname kernel: [117828.073562] ALSA hda_intel.c:1187: Too big adjustment 32 Oct 13 20:44:25 hostname kernel: [117828.083367] ALSA hda_intel.c:1187: Too big adjustment 32 Oct 13 20:44:25 hostname kernel: [117828.578958] ALSA hda_intel.c:1187: Too big adjustment 32 Oct 13 20:44:25 hostname kernel: [117828.584872] ALSA hda_intel.c:1187: Too big adjustment 32 Oct 13 20:44:25 hostname kernel: [117828.592909] ALSA hda_intel.c:1187: Too big adjustment 32 Oct 13 20:44:25 hostname kernel: [117828.651513] ALSA hda_intel.c:1187: Too big adjustment 32 Oct 13 20:44:25 hostname kernel: [117828.657009] ALSA hda_intel.c:1187: Too big adjustment 32 Oct 13 20:44:25 hostname kernel: [117828.665794] ALSA hda_intel.c:1187: Too big adjustment 32
The machine is currently still in the failed state - I cannot record anything until I reboot.
-- Best Regards, Aleksander Adamowski http://olo.org.pl
-- Best Regards, Aleksander Adamowski http://olo.org.pl