]> git.pld-linux.org Git - packages/kernel.git/blob - 2.6.0-t4-pcmcia-sound-vx-bk.patch
- [2.4.2x, 2.6.x] don't recursively crash in die() on CHRP/PReP machines
[packages/kernel.git] / 2.6.0-t4-pcmcia-sound-vx-bk.patch
1 Index: linux-2.5-bkbits/sound/pcmcia/vx/vx_entry.c
2 ===================================================================
3 --- linux-2.5-bkbits/sound/pcmcia/vx/vx_entry.c (revision 12003)
4 +++ linux-2.5-bkbits/sound/pcmcia/vx/vx_entry.c (working copy)
5 @@ -34,10 +34,8 @@
6  static int vxpocket_event(event_t event, int priority, event_callback_args_t *args);
7  
8  
9 -static void vxpocket_release(u_long arg)
10 +static void vxpocket_release(dev_link_t* link)
11  {
12 -       dev_link_t *link = (dev_link_t *)arg;
13 -       
14         if (link->state & DEV_CONFIG) {
15                 /* release cs resources */
16                 CardServices(ReleaseConfiguration, link->handle);
17 @@ -56,7 +54,7 @@
18         struct snd_vxp_entry *hw;
19         dev_link_t *link = &vxp->link;
20  
21 -       vxpocket_release((u_long)link);
22 +       vxpocket_release(link);
23  
24         /* Break the link with Card Services */
25         if (link->handle)
26 @@ -148,9 +146,6 @@
27         link->irq.Handler = &snd_vx_irq_handler;
28         link->irq.Instance = chip;
29  
30 -       link->release.function = &vxpocket_release;
31 -       link->release.data = (u_long)link;
32 -
33         link->conf.Attributes = CONF_ENABLE_IRQ;
34         link->conf.Vcc = 50;
35         link->conf.IntType = INT_MEMORY_AND_IO;
36 @@ -229,8 +224,6 @@
37  {
38         vx_core_t *chip = snd_magic_cast(vx_core_t, link->priv, return);
39  
40 -       del_timer(&link->release);
41 -
42         snd_printdd(KERN_DEBUG "vxpocket_detach called\n");
43         /* Remove the interface data from the linked list */
44         if (hw) {
45 @@ -326,7 +319,6 @@
46                 snd_printdd(KERN_DEBUG "CARD_REMOVAL..\n");
47                 link->state &= ~DEV_PRESENT;
48                 if (link->state & DEV_CONFIG) {
49 -                       mod_timer(&link->release, jiffies + HZ/20);
50                         chip->chip_status |= VX_STAT_IS_STALE;
51                 }
52                 break;
This page took 0.063986 seconds and 3 git commands to generate.