From: Andrey Borzenkov <arvidjaar@mail.ru>
To: linux-kernel@vger.kernel.org
Cc: Andrew Morton <akpm@osdl.org>
Subject: [PATCH] rc3-mm1 - /proc/ide/HWIF for modular IDE
Date: Tue, 3 Feb 2004 22:48:40 +0300 [thread overview]
Message-ID: <20040203194840.GD3249@localhost.localdomain> (raw)
[-- Attachment #1: Type: text/plain, Size: 437 bytes --]
currently /proc/ide/HWIF are created in one shot during initialization
or in ide-generic meaning that for modular IDE you must include
ide-generic.
this adds per-hwif registration currently for PCI only (that is what I
can test); if this is OK I will make create_proc_ide_interfaces static
and replace it with create_proc_ide_interface where appropriate.
this also makes /proc/ide entries for PCI chipset be correctly created
-andrey
[-- Attachment #2: 2.6.2-rc3-mm1-modular_proc_ide.patch --]
[-- Type: text/plain, Size: 2429 bytes --]
--- linux-2.6.2-rc3-mm1/drivers/ide/ide-proc.c.modular 2004-02-03 20:37:32.000000000 +0300
+++ linux-2.6.2-rc3-mm1/drivers/ide/ide-proc.c 2004-02-03 21:13:38.000000000 +0300
@@ -768,23 +768,27 @@ static ide_proc_entry_t hwif_entries[] =
{ NULL, 0, NULL, NULL }
};
+void create_proc_ide_interface(ide_hwif_t *hwif)
+{
+ if (!hwif->present)
+ return;
+ if (!hwif->proc) {
+ hwif->proc = proc_mkdir(hwif->name, proc_ide_root);
+ if (!hwif->proc)
+ return;
+ ide_add_proc_entries(hwif->proc, hwif_entries, hwif);
+ }
+ create_proc_ide_drives(hwif);
+}
+
+EXPORT_SYMBOL(create_proc_ide_interface);
+
void create_proc_ide_interfaces(void)
{
int h;
- for (h = 0; h < MAX_HWIFS; h++) {
- ide_hwif_t *hwif = &ide_hwifs[h];
-
- if (!hwif->present)
- continue;
- if (!hwif->proc) {
- hwif->proc = proc_mkdir(hwif->name, proc_ide_root);
- if (!hwif->proc)
- return;
- ide_add_proc_entries(hwif->proc, hwif_entries, hwif);
- }
- create_proc_ide_drives(hwif);
- }
+ for (h = 0; h < MAX_HWIFS; h++)
+ create_proc_ide_interface(&ide_hwifs[h]);
}
#ifdef CONFIG_BLK_DEV_IDEPCI
@@ -801,6 +805,12 @@ void ide_pci_register_host_proc (ide_pci
tmp->next = p;
} else
ide_pci_host_proc_list = p;
+
+ if (proc_ide_root) {
+ p->parent = proc_ide_root;
+ create_proc_info_entry(p->name, 0, p->parent, p->get_info);
+ p->set = 2;
+ }
}
EXPORT_SYMBOL(ide_pci_register_host_proc);
--- linux-2.6.2-rc3-mm1/drivers/ide/setup-pci.c.modular 2004-02-03 20:37:33.000000000 +0300
+++ linux-2.6.2-rc3-mm1/drivers/ide/setup-pci.c 2004-02-03 21:11:22.000000000 +0300
@@ -659,6 +659,10 @@ bypass_legacy_dma:
*/
d->init_hwif(hwif);
+#ifdef CONFIG_PROC_FS
+ create_proc_ide_interface(hwif);
+#endif
+
mate = hwif;
at_least_one_hwif_enabled = 1;
}
--- linux-2.6.2-rc3-mm1/include/linux/ide.h.modular 2004-02-03 20:38:06.000000000 +0300
+++ linux-2.6.2-rc3-mm1/include/linux/ide.h 2004-02-03 21:15:33.000000000 +0300
@@ -1117,6 +1117,7 @@ extern void proc_ide_create(void);
extern void proc_ide_destroy(void);
extern void destroy_proc_ide_device(ide_hwif_t *, ide_drive_t *);
extern void destroy_proc_ide_drives(ide_hwif_t *);
+extern void create_proc_ide_interface(ide_hwif_t *);
extern void create_proc_ide_interfaces(void);
extern void ide_add_proc_entries(struct proc_dir_entry *, ide_proc_entry_t *, void *);
extern void ide_remove_proc_entries(struct proc_dir_entry *, ide_proc_entry_t *);
next reply other threads:[~2004-02-03 19:53 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2004-02-03 19:48 Andrey Borzenkov [this message]
2004-02-03 20:39 ` [PATCH] rc3-mm1 - /proc/ide/HWIF for modular IDE Bartlomiej Zolnierkiewicz
2004-02-04 19:44 ` Andrey Borzenkov
2004-02-04 21:55 ` Bartlomiej Zolnierkiewicz
2004-02-05 20:41 ` Andrey Borzenkov
2004-02-22 9:36 ` [PATCH][2.6.3-mm2] " Andrey Borzenkov
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=20040203194840.GD3249@localhost.localdomain \
--to=arvidjaar@mail.ru \
--cc=akpm@osdl.org \
--cc=linux-kernel@vger.kernel.org \
/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.