FAQ Search Today's Posts Mark Forums Read
» Video Reviews

» Linux Archive

Linux-archive is a website aiming to archive linux email lists and to make them easily accessible for linux users/developers.

» Sponsor

» Partners

» Sponsor

Go Back   Linux Archive > Debian > Debian Kernel

LinkBack Thread Tools
Old 11-28-2008, 05:35 AM
Arthur Marsh
Default Bug#506835:

Forwarded from Debian-user:

-------- Original Message --------
Subject: Re: DPT2044W SCSI adaptor with disk installed but no /dev/sd*
devices created

Date: Fri, 28 Nov 2008 17:02:35 +1030
From: Arthur Marsh <arthur.marsh@internode.on.net>
Newsgroups: gmane.linux.debian.user
References: <sfspv5-ec4.ln1@CPE-124-182-251-164.sa.bigpond.net.au>

lee wrote, on 2008-11-28 04:19:

I've tried a kernel recompile from linux-source-2.6.27 and experienced
the same problems.

I get a kernel stack trace that ends in:

note: scsi_scan0 [240] exited with preempt_count 1

Did you compile eata into the kernel or as a module?

compiled into the kernel.

and the machine locks up after the line:

clock source tsc unstable

http://www.google.com/search?hl=en&sa=X&oi=spell&resnum=1&ct=result&cd=1 &q=%22clocksource+tsc+unstable%22&spell=1

nothing much there, but thanks for the links.

Any suggestions?

No good ones ... You could put the SCSI controller into another slot
and see what happens then --- I've had some SCSI controllers that
won't work in one slot but in another, and I've seen network cards
working just fine in one board but not in another.

You could try older kernels.

Yes, I'll try 2.6.18 (2.6.18.dfsg.1-12etch2 is the earliest Debian 2.6
kernel I can get hold of from my current archives)


The sysrescuecd 0.30 beta that found the SCSI controller and hard disk
identified its kernel version as:

Linux sysrescuecd #1 Tue Dec 5 11:20:14 UTC 2006 i686
Pentium II (Klamath) GenuineIntel GNU/Linux

SCSI-related lines from the dmesg output of the sysrescuecd were:

SCSI subsystem initialized
Loading iSCSI transport class v1.1-646.Loading Adaptec I2O RAID: Version
2.4 Build 5go
scsi: <fdomain> Detection failed (no card)
Emulex LightPulse Fibre Channel SCSI driver 8.1.9
Failed initialization of WD-7000 SCSI card!
EATA0: wide SCSI support enabled, max_id 16, max_lun 8.
EATA0: SCSI channel 0 enabled, host target ID 7.
scsi2 : EATA/DMA 2.0x rev. 8.10.00
Type: Direct-Access ANSI SCSI revision: 02
scsi 2:0:6:0: cmds/lun 16, unsorted, no tags.
ipr: IBM Power RAID SCSI Device Driver version: 2.1.3 (March 29, 2006)
SCSI device sda: 8466688 512-byte hdwr sectors (4335 MB)
SCSI device sda: drive cache: write back
SCSI device sda: 8466688 512-byte hdwr sectors (4335 MB)
SCSI device sda: drive cache: write back
sd 2:0:6:0: Attached scsi disk sda
sd 2:0:6:0: Attached scsi generic sg0 type 0

The current eata.c from 2.6.27 source on kernel-archive.buildserver.net has:

eata.c: .name = "EATA/DMA 2.0x rev. 8.10.00 "

so it appears that the eata.c file hasn't changed significantly since
the working eata code built-in to the sysrescuecd kernel.

I'll download the 2.6.18.dfsg.1-12etch2 kernel and try it.


To UNSUBSCRIBE, email to debian-kernel-REQUEST@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmaster@lists.debian.org
Old 12-22-2008, 06:34 AM
Arthur Marsh
Default Bug#506835:

I received this reply but do not know how to apply the patch.


-------- Original Message --------
Subject: Re: BUG: bad: [58e2a02eb18393e76a469580fedf7caec190eb5e] [SCSI]
eata: convert to use the data buffer accessors

Date: Mon, 22 Dec 2008 11:09:17 +0900
From: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
To: arthur.marsh@internode.on.net
CC: linux-scsi@vger.kernel.org, ballabio_dario@emc.com
References: <494E69F0.3060300@internode.on.net>

On Mon, 22 Dec 2008 02:38:16 +1030
Arthur Marsh <arthur.marsh@internode.on.net> wrote:

I've recently installed Debian on a PII-266 machine with DPT2044W SCSI

Kernels 2.6.18-2.6.22 work fine, and kernels 2.6.23-2.6.27 lock up after
loading the eata module using modprobe, with the error:

modprobe exited with preempt_count 1

I've run a git bisection and have a few more passes to go, but suspect
the commit in the subject line,

[58e2a02eb18393e76a469580fedf7caec190eb5e] [SCSI] eata: convert to use
the data buffer accessors

to be the patch which triggers the problem.

I'm not a C programmer, let alone a kernel programmer, but can build and
check any suggested patches.

Is anyone successfully using the eata module since the data buffer
accessors patch?

Is anyone able to examine the code to see if anything was done wrong in
the data buffer accessors patch?

Sorry about the problem. Can you try this patch?

diff --git a/drivers/scsi/eata.c b/drivers/scsi/eata.c
index a73a6bb..976cdd5 100644
--- a/drivers/scsi/eata.c
+++ b/drivers/scsi/eata.c
@@ -1626,8 +1626,15 @@ static void map_dma(unsigned int i, struct
hostdata *ha)

cpp->sense_len = SCSI_SENSE_BUFFERSIZE;

- count = scsi_dma_map(SCpnt);
- BUG_ON(count < 0);
+ if (!scsi_sg_count(SCpnt)) {
+ cpp->data_len = 0;
+ return;
+ }
+ count = pci_map_sg(ha->pdev, scsi_sglist(SCpnt), scsi_sg_count(SCpnt),
+ pci_dir);
+ BUG_ON(!count);
scsi_for_each_sg(SCpnt, sg, count, k) {
cpp->sglist[k].address = H2DEV(sg_dma_address(sg));
cpp->sglist[k].num_bytes = H2DEV(sg_dma_len(sg));
@@ -1655,7 +1662,9 @@ static void unmap_dma(unsigned int i, struct
hostdata *ha)

pci_unmap_single(ha->pdev, DEV2H(cpp->sense_addr),
DEV2H(cpp->sense_len), PCI_DMA_FROMDEVICE);

- scsi_dma_unmap(SCpnt);
+ if (scsi_sg_count(SCpnt))
+ pci_unmap_sg(ha->pdev, scsi_sglist(SCpnt), scsi_sg_count(SCpnt),
+ pci_dir);

if (!DEV2H(cpp->data_len))

To UNSUBSCRIBE, email to debian-kernel-REQUEST@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmaster@lists.debian.org
Old 12-23-2008, 08:53 PM
Arthur Marsh
Default Bug#506835:

Please close this bug as it will be fixed in kernel 2.6.28.



-------- Original Message --------
Subject: Patch added to scsi-rc-fixes-2.6: [SCSI] eata: fix the data
buffer accessors conversion regression

Date: Tue, 23 Dec 2008 19:49:58 GMT
From: James Bottomley <jejb@kernel.org>
To: Arthur Marsh <arthur.marsh@internode.on.net>, FUJITA Tomonori
<fujita.tomonori@lab.ntt.co.jp>, James Bottomley
<James.Bottomley@HansenPartnership.com>, stable@kernel.org

Your commit:

[SCSI] eata: fix the data buffer accessors conversion regression

This fixes the regression introduced by the commit
58e2a02eb18393e76a469580fedf7caec190eb5e (eata: convert to use the
data buffer accessors), reported:


- fix DMA_NONE handling in map_dma()

- this driver can't use scsi_dma_map since host->shost_gendev.parent
is not set properly (it uses scsi_register).

Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
Reported-by: Arthur Marsh <arthur.marsh@internode.on.net>
Tested-by: Arthur Marsh <arthur.marsh@internode.on.net>
Cc: stable@kernel.org
Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>

has been added to the upstream SCSI tree
You can find it here:

http://git.kernel.org/?p=linux/kernel/git/jejb/scsi-rc-fixes-2.6.git;a=commit;h=508859405e33797342d42cda3e73146 4c2bcd7a8

This patch is scheduled to be pushed for 2.6.28

James Bottomley

P.S. If you find this email unwanted, set up a procmail rule junking on
the header:

X-Git-Tree: SCSI

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

Thread Tools

All times are GMT. The time now is 04:24 PM.

VBulletin, Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.
Content Relevant URLs by vBSEO ©2007, Crawlability, Inc.
Copyright 2007 - 2008, www.linux-archive.org