Re: 2.6.8-3 kernel freezes on Inspiron 8100 at isapnp

From: Joost Witteveen (joostje_at_iliana.nl)
Date: 09/25/04

  • Next message: Tim Kelley: "Re: Via CLE266 Graphics"
    Date: Sat, 25 Sep 2004 11:41:01 +0200
    To: debian-user@lists.debian.org, andrea.vettorello@gmail.com
    
    

    Andrea Vettorello wrote:

    >On Fri, 24 Sep 2004 21:51:09 +0800, Uwe Dippel <udippel@uniten.edu.my> wrote:
    >
    >
    >>(today I'm kind of unlucky with the daily update, it seems: Thunderbird
    >>broke, XMMS broke and now:)
    >>After the update from 2.6.8-2 (??), but 2.6.8 in any case 2.6.8; the
    >>kernel freezes at isapnp. I tried three times (Power-Off); and then booted
    >>to 2.6.3; the install-kernel; without any problem.
    >>
    >>I wonder if I'm the only one and should file a bug-report ?
    >>
    >>
    >>
    >
    >I've experienced a freeze plugging/unplugging my usb printer with 2.6.8-2...
    >
    >

    There is actually a bug in 2.6.8.1 that causes an OOPS when I switch
    off my USB printer
    in 2.6.8.1 -- a bug that apparently already was there in 2.6.5 (or before).

    Here's the patch that worked for me (and now apparently has been applied
    by Greg KH to
    the kernel):

    Below is the email with the patch in it:

    Vojtech:

    This bug was reported back in July, and I sent out a patch but apparently
    it never got to you. The usblp driver was calling usb_buffer_free() from
    usblp_cleanup(), which runs after disconnect() if a user process holds the
    device open. But once the usb_device is gone usb_buffer_free() will
    oops. The patch frees the buffers in usb_disconnect() instead.

    Recently Joost Witteveen reported the same oops and found that the
    patch solved it for him. So there shouldn't be problems with accepting
    it.

    Alan Stern

    Signed-off-by: Alan Stern <stern@rowland.harvard.edu>

    ===== drivers/usb/class/usblp.c 1.108 vs edited =====
    --- 1.108/drivers/usb/class/usblp.c 2004-09-09 05:24:11 -04:00
    +++ edited/drivers/usb/class/usblp.c 2004-09-20 14:33:03 -04:00
    @@ -397,10 +397,6 @@
     {
             info("usblp%d: removed", usblp->minor);
     
    - usb_buffer_free (usblp->dev, USBLP_BUF_SIZE,
    - usblp->writebuf, usblp->writeurb->transfer_dma);
    - usb_buffer_free (usblp->dev, USBLP_BUF_SIZE,
    - usblp->readbuf, usblp->readurb->transfer_dma);
             kfree (usblp->device_id_string);
             kfree (usblp->statusbuf);
             usb_free_urb(usblp->writeurb);
    @@ -1159,6 +1155,10 @@
             usb_set_intfdata (intf, NULL);
     
             usblp_unlink_urbs(usblp);
    + usb_buffer_free (usblp->dev, USBLP_BUF_SIZE,
    + usblp->writebuf, usblp->writeurb->transfer_dma);
    + usb_buffer_free (usblp->dev, USBLP_BUF_SIZE,
    + usblp->readbuf, usblp->readurb->transfer_dma);
     
             if (!usblp->used)

                     usblp_cleanup (usblp);

    >
    >Andrea
    >
    >
    >
    >

    -- 
    To UNSUBSCRIBE, email to debian-user-REQUEST@lists.debian.org 
    with a subject of "unsubscribe". Trouble? Contact listmaster@lists.debian.org
    

  • Next message: Tim Kelley: "Re: Via CLE266 Graphics"

    Relevant Pages