Menu

#1 Dirver version 0.7.2 can not be compiled with kernel 2.6.22

open
nobody
None
5
2007-09-23
2007-09-23
No

Since kernel macros were removed pcm.c can not not be compiled.

Error is:
make default
make -C /lib/modules/2.6.22-12-generic/build SUBDIRS=/home/user1/workspace/line6usb-0.7.2 modules
make[1]: Entering directory `/usr/src/linux-headers-2.6.22-12-generic'
CC [M] /home/user1/workspace/line6usb-0.7.2/pcm.o
/home/user1/workspace/line6usb-0.7.2/pcm.c: In function ‘snd_pod_trigger’:
/home/user1/workspace/line6usb-0.7.2/pcm.c:40: warning: implicit declaration of function ‘snd_pcm_group_for_each’
/home/user1/workspace/line6usb-0.7.2/pcm.c:40: error: expected ‘;’ before ‘{’ token
/home/user1/workspace/line6usb-0.7.2/pcm.c:33: warning: unused variable ‘err’
/home/user1/workspace/line6usb-0.7.2/pcm.c:32: warning: unused variable ‘s’
make[2]: *** [/home/user1/workspace/line6usb-0.7.2/pcm.o] Error 1
make[1]: Leaving directory `/usr/src/linux-headers-2.6.22-12-generic'
make[1]: *** [_module_/home/user1/workspace/line6usb-0.7.2] Error 2
make: *** [default] Error 2

The correction is easy but probably can save some of your time. Commented out are obsoleted macro calls and right after the replacing ones.

/* trigger callback */
int snd_pod_trigger(struct snd_pcm_substream *substream, int cmd)
{
struct snd_pod_pcm *chip = snd_pcm_substream_chip(substream);
struct list_head *pos;
struct snd_pcm_substream *s;
int err;
unsigned long flags;

printk(KERN_INFO "*** Entering snd_pod_trigger\n");
spin_lock_irqsave(&chip->lock_trigger, flags);
clear_bit(BIT_PREPARED, &chip->flags);

//snd_pcm_group_for_each(pos, substream) {
list_for_each(pos,&substream->group->substreams) {
//s = snd_pcm_group_substream_entry(pos);
s = list_entry(pos,struct snd_pcm_substream,link_list);

switch(s->stream) {
case SNDRV_PCM_STREAM_PLAYBACK:

P.S. : Anyway thanks for the driver.

Related

Discussion: arecord locks up my system

Discussion

  • Nobody/Anonymous

    Logged In: NO

    Hello,
    the fix doesn't work for me here on 2.6.22 or above;
    applications are crashing like this with the plughw:x.x option:

    usbcore: registered new interface driver line6usb
    usb 2-1: new full speed USB device using ohci_hcd and address 2
    usb 2-1: configuration #1 chosen from 1 choice
    line6usb 2-1:1.0: Line6 PODxt Pro found
    line6usb 2-1:1.0: Line6 PODxt Pro now attached
    Line6 device 0: PODxt Pro:0
    Line6 device 1: (not used)
    Line6 device 2: (not used)
    Line6 device 3: (not used)
    Line6 device 4: (not used)
    Line6 device 5: (not used)
    Line6 device 6: (not used)
    Line6 device 7: (not used)
    *** Entering snd_pod_trigger
    BUG: scheduling while atomic: amarokapp/0x00000002/8812

    Call Trace:
    [<ffffffff80736e06>] schedule+0x7f/0x2b7
    [<ffffffff8073862c>] __down_write_nested+0xc6/0xdd
    [<ffffffff8028c55b>] do_coredump+0x6c/0x6d1
    [<ffffffff805ceeae>] snd_pcm_delay+0x138/0x14f
    [<ffffffff805d2bba>] snd_pcm_common_ioctl1+0x751/0xde1
    [<ffffffff80237252>] __dequeue_signal+0xfe/0x158
    [<ffffffff802366e5>] recalc_sigpending+0xe/0x24
    [<ffffffff80239162>] get_signal_to_deliver+0x449/0x48b
    [<ffffffff8020aacc>] do_notify_resume+0xa7/0x719
    [<ffffffff8021d392>] do_page_fault+0x722/0x734
    [<ffffffff805d3eca>] snd_pcm_playback_ioctl+0x2e/0x38
    [<ffffffff802930d9>] do_ioctl+0x21/0x6b
    [<ffffffff8020bbbc>] retint_signal+0x3d/0x81

    BUG: scheduling while atomic: amarokapp/0x00000002/8812

    Call Trace:
    [<ffffffff80736e06>] schedule+0x7f/0x2b7
    [<ffffffff80229e14>] enqueue_task_fair+0x21/0x33
    [<ffffffff807375eb>] schedule_timeout+0x1e/0xbc
    [<ffffffff807373fd>] wait_for_common+0xf8/0x193
    [<ffffffff80229d2a>] default_wake_function+0x0/0xe
    [<ffffffff8028c7a0>] do_coredump+0x2b1/0x6d1
    [<ffffffff805ceeae>] snd_pcm_delay+0x138/0x14f
    [<ffffffff805d2bba>] snd_pcm_common_ioctl1+0x751/0xde1
    [<ffffffff80237252>] __dequeue_signal+0xfe/0x158
    [<ffffffff802366e5>] recalc_sigpending+0xe/0x24
    [<ffffffff80239162>] get_signal_to_deliver+0x449/0x48b
    [<ffffffff8020aacc>] do_notify_resume+0xa7/0x719
    [<ffffffff8021d392>] do_page_fault+0x722/0x734
    [<ffffffff805d3eca>] snd_pcm_playback_ioctl+0x2e/0x38
    [<ffffffff802930d9>] do_ioctl+0x21/0x6b
    [<ffffffff8020bbbc>] retint_signal+0x3d/0x81

    note: amarokapp[8812] exited with preempt_count 1
    *** Entering snd_pod_trigger
    BUG: scheduling while atomic: amarokapp/0x00000002/8847

    Call Trace:
    [<ffffffff80736e06>] schedule+0x7f/0x2b7
    [<ffffffff80737666>] schedule_timeout+0x99/0xbc
    [<ffffffff80235cb6>] process_timeout+0x0/0x5
    [<ffffffff88771ed2>] :line6usb:unlink_wait_clear_audio_out_urbs+0x50/0x80
    [<ffffffff88771f17>] :line6usb:snd_pod_playback_hw_free+0x15/0x3c
    [<ffffffff805d0509>] snd_pcm_release_substream+0x39/0x74
    [<ffffffff805d058c>] snd_pcm_release+0x48/0x98
    [<ffffffff80287d45>] __fput+0xa1/0x195
    [<ffffffff802855ea>] filp_close+0x5d/0x65
    [<ffffffff8022f44a>] put_files_struct+0x65/0xc3
    [<ffffffff802308b2>] do_exit+0x2ad/0x8a0
    [<ffffffff80230f38>] sys_exit_group+0x0/0xe
    [<ffffffff80239169>] get_signal_to_deliver+0x450/0x48b
    [<ffffffff8020aacc>] do_notify_resume+0xa7/0x719
    [<ffffffff80737191>] preempt_schedule+0x4f/0x7f
    [<ffffffff8021d050>] do_page_fault+0x3e0/0x734
    [<ffffffff8020bbbc>] retint_signal+0x3d/0x81

    On 2.6.21 everything is stable; thanks for the driver, too!

     
  • Tamas Tarjanyi

    Tamas Tarjanyi - 2007-10-16

    Logged In: YES
    user_id=1897125
    Originator: YES

    Hello,

    One important thing could be that I do not have the printk in my source anymore. See the patch below. So please try that patch and let me know whatever the result is.

    I have been using this version without any problem since the error reported. So can you please first check the description http://tamastarjanyi.blogspot.com/2007/09/line6-podxt-linux-driver-072-is.html and download and apply the patch - bottom of page - on a clean source?
    Then
    # make clean ; make ; make install
    Please make sure you have the right version of the kernel headers coresponding to your kernel. I think you have.
    If possible log all of these.

    If still does not work:
    And please let me know which kernel version is this? Subversion too. (uname -a)
    Which distribution?
    What is aplay -l output?
    Does
    $ aplay -D plughw:x something.wav
    works?

    One important thing could be that I do not have the printk in my source anymore. See the patch. So please try that patch and let me know whatever the result is.

    Regards: Tamás

     
  • Tamas Tarjanyi

    Tamas Tarjanyi - 2007-10-16

    Logged In: YES
    user_id=1897125
    Originator: YES

    Tested with printk and it also works. So printk is not an issue.
    But please try the patch as I wrote and inform me.

    Also let me know how you start amarok and what in your asoundrc is.

     
  • Nobody/Anonymous

    Logged In: NO

    Hello Tamás,

    the line6usb-0.7.2_patch.diff made the driver work again for me on amd64, kernel 2.6.23.1 with gcc-4.2.0
    and x86, kernel 2.6.22; same compiler version and linux-headers-2.6.23/2.6.22-r2 installed.

    Thank you very much!

    LG

     
  • Nobody/Anonymous

    Logged In: NO

    Hello,

    that's the diff output of the manually applied fix and the patched version if it is of any help:

    diff line6_fixed/line6usb-0.7.2/pcm.c line6_patched/line6usb-0.7.2/pcm.c
    37,40d36
    < clear_bit(BIT_PREPARED, &chip->flags);
    <
    < printk(KERN_INFO "*** Entering snd_pod_trigger\n");
    < spin_lock_irqsave(&chip->lock_trigger, flags);
    42,46d37
    <
    < //snd_pcm_group_for_each(pos, substream) {
    < list_for_each(pos,&substream->group->substreams) {
    < //s = snd_pcm_group_substream_entry(pos);
    < s = list_entry(pos,struct snd_pcm_substream,link_list);
    47a39,43
    > //snd_pcm_group_for_each(pos, substream) {
    > list_for_each(pos,&substream->group->substreams) {
    > //s = snd_pcm_group_substream_entry(pos);
    > s = list_entry(pos,struct snd_pcm_substream,link_list);
    >
    Thanks again!

     
  • Tamas Tarjanyi

    Tamas Tarjanyi - 2007-10-17

    Logged In: YES
    user_id=1897125
    Originator: YES

    Hello LG,

    Are you the same nobody who had the initial problem before?
    Just to know if this is working after all or not?
    If so I am happy to help you. And enjoy your PodXT like I do.

    Regards: Tamás

     
  • Nobody/Anonymous

    Logged In: NO

    Hello Tamás,

    yes I am the same nobody;
    except a much happier nobody now.

    LG

     
  • Mario Franzbonenkamp

    Logged In: YES
    user_id=1838782
    Originator: NO

    This bug is fixed in the trunk svn already. I just have had the same issue a few minutes ago with the current ubuntu gutsy repository (generic i386 kernel 2.6.22-14). I tried the svn trunk I downloaded a couple of month ago and the baby compiled without any problem.

    Markus, please put the current trunk in a tarball and update your website or at least give a hint there.

     

Log in to post a comment.

Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.