Skip to contentSkip to conversation

2.5.67: ppa driver & preempt == oops

PATCH walt 2 participants 2 messages Apr 15, 2003 2 messages not in the archive

lore
Share & tools
lore

A message that is not in the archive (sent off-list or not yet received): [email protected]

A message that is not in the archive (sent off-list or not yet received): [email protected]

walt

author
#2 lore raw
Quoted 31 lines · walt
Quoted 29 lines · Patrick Mansfield

On Sun, Apr 13, 2003 at 07:44:04PM +0200, Gert Vervoort wrote:

Here is a patch against 2.5.67, can you try it out?

I did not compile let alone run with this patch.

We never hold the host_lock while calling the detect function (unlike the io_request_lock, see the bizzare 2.4 code), so acquiring it inside ppa_detect is very wrong. I don't know why your scsi scan did not hang.

drivers/scsi/ppa.c Tue Apr 15 11:54:34 2003 renamed from drivers/scsi/ppa.c-orig Mon Apr 7 10:31:47 2003 +1 -4
@@ -219,15 +219,12 @@
         printk("  supported by the imm (ZIP Plus) driver. If the\n");
         printk("  cable is marked with \"AutoDetect\", this is what 
 has\n");
         printk("  happened.\n");
-        spin_lock_irq(hreg->host_lock);
         return 0;
     }
     try_again = 1;
     goto retry_entry;
-    } else {
-    spin_lock_irq(hreg->host_lock);
+    } else
     return 1;        /* return number of hosts detected */
-    }
 }
 
Quoted 5 lines
Quoted 1 line

/* This is to give the ppa driver a way to modify the timings (and other

Yes! Thank you. This patch fixes the segfault of modprobe that I've been seeing for ages.

Hmm. An important addendum --

I can mount and unmount the Zip disk as many times as I want, as long as I don't eject the disk from the drive.

Once I eject the disk and insert it again, the mount commant just hangs forever. No error messages anywhere -- it just hangs. I can't even kill the mount command. The only way out is to reboot and then all is well again until the next time I eject the disk from the drive.

#3 lore raw

On Tue, 15 Apr 2003 16:51:53 -0700 walt <[email protected]> wrote:

| walt wrote:
| > Patrick Mansfield wrote:
| > 
| >> On Sun, Apr 13, 2003 at 07:44:04PM +0200, Gert Vervoort wrote:
| >>
| >> Here is a patch against 2.5.67, can you try it out?
| >>
| >> I did not compile let alone run with this patch.
| >>
| >> We never hold the host_lock while calling the detect function (unlike the
| >> io_request_lock, see the bizzare 2.4 code), so acquiring it inside
| >> ppa_detect is very wrong. I don't know why your scsi scan did not hang.
| >>
...
| > 
| > 
| > 
| > Yes!  Thank you.  This patch fixes the segfault of modprobe that I've 
| > been seeing for ages.
| 
| Hmm.  An important addendum --
| 
| I can mount and unmount the Zip disk as many times as I want, as long as
| I don't eject the disk from the drive.
| 
| Once I eject the disk and insert it again, the mount commant just hangs
| forever.  No error messages anywhere -- it just hangs.  I can't even
| kill the mount command.  The only way out is to reboot and then all is
| well again until the next time I eject the disk from the drive.

I don't know that it's _required_, but you can try doing
umount /mnt/zip (or /dev/sdx)
eject /mnt/zip (or dev/sdx)

and then eject it, reinsert it, try to mount, etc.?

--
~Randy