All of lore.kernel.org
 help / color / mirror / Atom feed
From: Jeremy Jackson <jerj@coplanar.net>
To: Torben Mathiasen <torben.mathiasen@hp.com>,
	linux-kernel@vger.kernel.org,
	linux-ide <linux-ide@vger.kernel.org>
Subject: Re: 2.4.23 IDE hang on boot with two single-channel controllers
Date: Mon, 26 Jan 2004 10:56:54 -0500	[thread overview]
Message-ID: <401538C6.5030609@coplanar.net> (raw)

[-- Attachment #1: Type: text/plain, Size: 921 bytes --]

Hi,

(watch crossposting when replying all)

I'm hoping to reach the maintainer of the Linux IDE driver for the 
Compaq TriFlex controller.  I have a problem with this driver when used 
with a Compaq Armada 7730MT while docked in the base station.

The driver appears to only support one triflex controller, due to a 
missing check (that other chipset drivers have) that should prevent it 
from registering a /proc interface more than once.  The result is that 
it hangs on boot in proc_ide_create() in an infinite loop.

triflex.c:

static unsigned int __init init_chipset_triflex(struct pci_dev *dev,
                 const char *name)
{
#ifdef CONFIG_PROC_FS
         ide_pci_register_host_proc(&triflex_proc);
#endif
         return 0;
}

It also appears that triflex_get_info() doesn't support more that one 
controller.

I won't go into more detail until I can establish who might care :)

Regards,

Jeremy Jackson

[-- Attachment #2: 2.4.23 IDE hang on boot with two single-channel controllers --]
[-- Type: message/rfc822, Size: 3291 bytes --]

From: Jeremy Jackson <jerj@coplanar.net>
To: linux-ide@vger.kernel.org
Subject: 2.4.23 IDE hang on boot with two single-channel controllers
Date: Mon, 26 Jan 2004 09:44:49 -0500
Message-ID: <401527E1.6040108@coplanar.net>

Hi All,

Already posted this to linux-kernel.

kdb shows proc_ide_create() stuck in a loop when booting on a Compaq 
Armada 7730MT while attached to the docking station.

This is a unique IDE hardware setup.  Channel ide0's controller is in 
the laptop, while ide1 is a separate controller (pci device) in the 
docking station and is not always present.

This seems to be triggering a bug in ide-proc.c:

void proc_ide_create(void)
{
#ifdef CONFIG_BLK_DEV_IDEPCI
         ide_pci_host_proc_t *p = ide_pci_host_proc_list;
#endif /* CONFIG_BLK_DEV_IDEPCI */

         proc_ide_root = proc_mkdir("ide", 0);
         if (!proc_ide_root) return;

         create_proc_ide_interfaces();

         create_proc_read_entry("drivers", 0, proc_ide_root,
                                 proc_ide_read_drivers, NULL);

#ifdef CONFIG_BLK_DEV_IDEPCI
         while (p != NULL)  <------------------- INFINITE LOOP HERE
         {
                 if (p->name != NULL && p->set == 1 && p->get_info != NULL)
                 {
                         p->parent = proc_ide_root;
                         create_proc_info_entry(p->name, 0, p->parent, 
p->get_info);
                         p->set = 2;
                 }
                 p = p->next;
         }
#endif /* CONFIG_BLK_DEV_IDEPCI */
}

I'm not sure if the problem is in the loop or bad data being setup 
before it starts.

Assistance fixing it would be appreciated.

Regards,

Jeremy Jackson

-
To unsubscribe from this list: send the line "unsubscribe linux-ide" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

             reply	other threads:[~2004-01-26 15:57 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-01-26 15:56 Jeremy Jackson [this message]
2004-02-17 23:34 ` 2.4.23 IDE hang on boot with two single-channel controllers Bartlomiej Zolnierkiewicz
2004-02-24 17:49   ` Jeremy Jackson
2004-07-31 14:37   ` Marcelo Tosatti
2004-07-31 15:37     ` Jeremy Jackson
  -- strict thread matches above, loose matches on Subject: below --
2004-01-26 14:44 Jeremy Jackson
2004-01-26  0:42 Jeremy Jackson

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=401538C6.5030609@coplanar.net \
    --to=jerj@coplanar.net \
    --cc=linux-ide@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=torben.mathiasen@hp.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.