All of lore.kernel.org
 help / color / mirror / Atom feed
From: Greg KH <gregkh@suse.de>
To: Rusty Russell <rusty@rustcorp.com.au>
Cc: linux-hotplug-devel@lists.sourceforge.net,
	linux-kernel@vger.kernel.org, linux@dominikbrodowski.net
Subject: Re: [ANNOUNCE] hotplug-ng 002 release
Date: Mon, 09 May 2005 23:21:03 +0000	[thread overview]
Message-ID: <20050509232103.GA24238@suse.de> (raw)
In-Reply-To: <1115611034.14447.11.camel@localhost.localdomain>

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

On Mon, May 09, 2005 at 01:57:14PM +1000, Rusty Russell wrote:
> On Fri, 2005-05-06 at 14:22 -0700, Greg KH wrote:
> > Oh, and the upstream module-init-tools maintainer needs to accept that
> > patch one of these days...
> 
> ??

I've attached the original message sent to you and me below.

thanks,

greg k-h

[-- Attachment #2: modprobe_load_all_aliases.mbox --]
[-- Type: text/plain, Size: 7992 bytes --]

From brodo@linta.de Fri Mar  4 13:16:17 2005
Return-Path: <brodo@linta.de>
Delivered-To: unknown
Received: from kroah.com ([216.218.225.136]) by kroah.com for <kroah@kroah.com>; Fri, 4 Mar 2005 13:09:32 -0800
Received: from linta.de ([213.239.214.66]) by kroah.com for <greg@kroah.com>; Fri, 4 Mar 2005 13:09:28 -0800
Received: (qmail 26925 invoked by uid 1000); 4 Mar 2005 21:09:27 -0000
Date: Fri, 4 Mar 2005 22:09:27 +0100
From: Dominik Brodowski <linux@dominikbrodowski.net>
To: rusty@rustcorp.com.au, greg@kroah.com
Subject: [PATCH] module-init-tools - modprobe: load _all_ aliases instead of only one
Message-ID: <20050304210927.GA26896@isilmar.linta.de>
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
User-Agent: Mutt/1.5.6+20040907i
X-SpamProbe: GOOD 0.0000021 44092103930514f517776d6bcb20e468
Status: RO
Content-Length: 7103
Lines: 241

This patch compiles, it seems to work for the purposes I use modprobe for 
locally, but please review it thoroughly.

Thanks,
	Dominik


hotplug-ng as well as pcmcia's hotplug agents require that "modprobe" called
with an alias string load _all_ modules instead of just one match. The
attached patch tries to implement it.

Signed-off-by: Dominik Brodowski <linux@dominikbrodowski.net>

--- module-init-tools-3.2-pre1/modprobe.c.original	2005-03-04 20:51:22.000000000 +0100
+++ module-init-tools-3.2-pre1/modprobe.c	2005-03-04 22:00:55.000000000 +0100
@@ -950,6 +950,21 @@
 	return strsep(string, delim);
 }
 
+struct alias_module {
+	struct alias_module *next;
+	char * name;
+};
+
+static int add_alias_module(char *name, struct alias_module **alias_module)
+{
+	struct alias_module *new = NOFAIL(malloc(sizeof(struct alias_module)));
+	new->next = *alias_module;
+	new->name = NOFAIL(strdup(name));
+	*alias_module = new;
+
+	return 0;
+}
+
 /* Recursion */
 static int read_config(const char *filename,
 		       const char *name,
@@ -957,7 +972,8 @@
 		       int removing,
 		       struct module_options **options,
 		       struct module_command **commands,
-		       char **alias);
+		       struct alias_module **alias);
+
 
 /* FIXME: Maybe should be extended to "alias a b [and|or c]...". --RR */
 static int read_config_file(const char *filename,
@@ -966,7 +982,7 @@
 			    int removing,
 			    struct module_options **options,
 			    struct module_command **commands,
-			    char **alias)
+			    struct alias_module **alias)
 {
 	char *line;
 	unsigned int linenum = 0;
@@ -996,9 +1012,9 @@
 			if (!wildcard || !realname)
 				grammar(cmd, filename, linenum);
 			else if (fnmatch(wildcard,name,0) == 0)
-				*alias = NOFAIL(strdup(realname));
+				add_alias_module(realname, alias);
 		} else if (strcmp(cmd, "include") == 0) {
-			char *newalias = NULL, *newfilename;
+			char *newfilename;
 
 			newfilename = strsep_skipspace(&ptr, "\t ");
 			if (!newfilename)
@@ -1006,15 +1022,10 @@
 			else {
 				if (!read_config(newfilename, name,
 						 dump_only, removing,
-						 options, commands, &newalias))
+						 options, commands, alias))
 					warn("Failed to open included"
 					      " config file %s: %s\n",
 					      newfilename, strerror(errno));
-
-				/* Files included override aliases,
-				   etc that was already set ... */
-				if (newalias)
-					*alias = newalias;
 			}
 		} else if (strcmp(cmd, "options") == 0) {
 			modname = strsep_skipspace(&ptr, "\t ");
@@ -1060,7 +1071,7 @@
 		       int removing,
 		       struct module_options **options,
 		       struct module_command **commands,
-		       char **alias)
+		       struct alias_module **alias)
 {
 	DIR *dir;
 
@@ -1103,7 +1114,7 @@
 				 int removing,
 				 struct module_options **options,
 				 struct module_command **commands,
-				 char **alias)
+				 struct alias_module **alias)
 {
 	unsigned int i;
 
@@ -1226,6 +1237,48 @@
 	return 0;
 }
 
+#define HANDLE_ONE_MODULE()						\
+	if (list_empty(&list)) {					\
+		/* The dependencies have to be real modules, but	\
+		   handle case where the first is completely bogus. */	\
+		command = find_command(modname, commands);		\
+		if (command && !ignore_commands) {			\
+			do_command(modname, command, verbose, dry_run,	\
+				   fatal, remove ? "remove":"install");	\
+			continue;					\
+		}							\
+		if (unknown_silent)					\
+			exit(1);					\
+		error("Module %s not found.\n", modname);		\
+		continue;						\
+	}								\
+									\
+	if (remove)							\
+		rmmod(&list, newname, first_time, error, dry_run,	\
+		      verbose, commands, ignore_commands, 0);		\
+	else								\
+		insmod(&list, NOFAIL(strdup(optstring)), newname,	\
+		       first_time, error, dry_run, verbose, modoptions,	\
+		       commands, ignore_commands, ignore_proc,		\
+		       strip_vermagic, strip_modversion);		\
+	free(modname);
+
+#define HANDLE_ALL_ALIASES()						\
+	while (alias_module) {						\
+		struct alias_module *next = alias_module->next;		\
+		char *modname = alias_module->name;			\
+									\
+		optstring = add_extra_options(modulearg, optstring,	\
+					      modoptions);		\
+		read_depends(dirname, modname, &list);			\
+									\
+		HANDLE_ONE_MODULE();					\
+									\
+		free(alias_module);					\
+		alias_module = next;					\
+	}
+
+
 int main(int argc, char *argv[])
 {
 	struct utsname buf;
@@ -1391,7 +1444,7 @@
 	if (dump_only) {
 		struct module_command *commands = NULL;
 		struct module_options *modoptions = NULL;
-		char *a = NULL;
+		struct alias_module *a = NULL;
 
 		read_toplevel_config(config, "", 1, 0,
 				     &modoptions, &commands, &a);
@@ -1415,27 +1468,26 @@
 		LIST_HEAD(list);
 		char *modulearg = argv[optind + i];
 		char *modname = NULL;
+		struct alias_module *alias_module = NULL;
 
 		/* Convert name we are looking for */
 		underscores(modulearg);
 
 		/* Returns the resolved alias, options */
 		read_toplevel_config(config, modulearg, 0,
-				     remove, &modoptions, &commands, &modname);
+				     remove, &modoptions, &commands, &alias_module);
 
 		/* No luck?  Try symbol names, if starts with symbol:. */
-		if (!modname
+		if (!alias_module
 		    && strncmp(modulearg, "symbol:", strlen("symbol:")) == 0)
 			read_config(symfilename, modulearg, 0,
-				    remove, &modoptions, &commands, &modname);
+				    remove, &modoptions, &commands, &alias_module);
 
-		/* If we have an alias, gather any options associated with it
+
+		/* If we have aliases, gather any options associated with it
 		   (needs to happen after parsing complete). */
-		if (modname) {
-		got_modname:
-			optstring = add_extra_options(modulearg, optstring,
-						      modoptions);
-			read_depends(dirname, modname, &list);
+		if (alias_module) {
+			HANDLE_ALL_ALIASES();
 		} else {
 			read_depends(dirname, modulearg, &list);
 			/* We don't allow canned aliases to override
@@ -1446,37 +1498,14 @@
 			    && read_config(aliasfilename,
 					   modulearg, 0,
 					   remove, &modoptions,
-					   &commands, &modname)
-			    && modname)
-				goto got_modname;
-
-			modname = strdup(modulearg);
-		}
-
-		if (list_empty(&list)) {
-			/* The dependencies have to be real modules, but
-			   handle case where the first is completely bogus. */
-			command = find_command(modname, commands);
-			if (command && !ignore_commands) {
-				do_command(modname, command, verbose, dry_run,
-					   fatal, remove ? "remove":"install");
-				continue;
+					   &commands, &alias_module)
+			    && alias_module) {
+				HANDLE_ALL_ALIASES();
+			} else {
+				modname = strdup(modulearg);
+				HANDLE_ONE_MODULE();
 			}
-			if (unknown_silent)
-				exit(1);
-			error("Module %s not found.\n", modname);
-			continue;
 		}
-
-		if (remove)
-			rmmod(&list, newname, first_time, error, dry_run,
-			      verbose, commands, ignore_commands, 0);
-		else
-			insmod(&list, NOFAIL(strdup(optstring)), newname,
-			       first_time, error, dry_run, verbose, modoptions,
-			       commands, ignore_commands, ignore_proc,
-			       strip_vermagic, strip_modversion);
-		free(modname);
 	}
 
 	free(dirname);


WARNING: multiple messages have this Message-ID (diff)
From: Greg KH <gregkh@suse.de>
To: Rusty Russell <rusty@rustcorp.com.au>
Cc: linux-hotplug-devel@lists.sourceforge.net,
	linux-kernel@vger.kernel.org, linux@dominikbrodowski.net
Subject: Re: [ANNOUNCE] hotplug-ng 002 release
Date: Mon, 9 May 2005 16:21:03 -0700	[thread overview]
Message-ID: <20050509232103.GA24238@suse.de> (raw)
In-Reply-To: <1115611034.14447.11.camel@localhost.localdomain>

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

On Mon, May 09, 2005 at 01:57:14PM +1000, Rusty Russell wrote:
> On Fri, 2005-05-06 at 14:22 -0700, Greg KH wrote:
> > Oh, and the upstream module-init-tools maintainer needs to accept that
> > patch one of these days...
> 
> ??

I've attached the original message sent to you and me below.

thanks,

greg k-h

[-- Attachment #2: modprobe_load_all_aliases.mbox --]
[-- Type: text/plain, Size: 7993 bytes --]

>From brodo@linta.de Fri Mar  4 13:16:17 2005
Return-Path: <brodo@linta.de>
Delivered-To: unknown
Received: from kroah.com ([216.218.225.136]) by kroah.com for <kroah@kroah.com>; Fri, 4 Mar 2005 13:09:32 -0800
Received: from linta.de ([213.239.214.66]) by kroah.com for <greg@kroah.com>; Fri, 4 Mar 2005 13:09:28 -0800
Received: (qmail 26925 invoked by uid 1000); 4 Mar 2005 21:09:27 -0000
Date: Fri, 4 Mar 2005 22:09:27 +0100
From: Dominik Brodowski <linux@dominikbrodowski.net>
To: rusty@rustcorp.com.au, greg@kroah.com
Subject: [PATCH] module-init-tools - modprobe: load _all_ aliases instead of only one
Message-ID: <20050304210927.GA26896@isilmar.linta.de>
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
User-Agent: Mutt/1.5.6+20040907i
X-SpamProbe: GOOD 0.0000021 44092103930514f517776d6bcb20e468
Status: RO
Content-Length: 7103
Lines: 241

This patch compiles, it seems to work for the purposes I use modprobe for 
locally, but please review it thoroughly.

Thanks,
	Dominik


hotplug-ng as well as pcmcia's hotplug agents require that "modprobe" called
with an alias string load _all_ modules instead of just one match. The
attached patch tries to implement it.

Signed-off-by: Dominik Brodowski <linux@dominikbrodowski.net>

--- module-init-tools-3.2-pre1/modprobe.c.original	2005-03-04 20:51:22.000000000 +0100
+++ module-init-tools-3.2-pre1/modprobe.c	2005-03-04 22:00:55.000000000 +0100
@@ -950,6 +950,21 @@
 	return strsep(string, delim);
 }
 
+struct alias_module {
+	struct alias_module *next;
+	char * name;
+};
+
+static int add_alias_module(char *name, struct alias_module **alias_module)
+{
+	struct alias_module *new = NOFAIL(malloc(sizeof(struct alias_module)));
+	new->next = *alias_module;
+	new->name = NOFAIL(strdup(name));
+	*alias_module = new;
+
+	return 0;
+}
+
 /* Recursion */
 static int read_config(const char *filename,
 		       const char *name,
@@ -957,7 +972,8 @@
 		       int removing,
 		       struct module_options **options,
 		       struct module_command **commands,
-		       char **alias);
+		       struct alias_module **alias);
+
 
 /* FIXME: Maybe should be extended to "alias a b [and|or c]...". --RR */
 static int read_config_file(const char *filename,
@@ -966,7 +982,7 @@
 			    int removing,
 			    struct module_options **options,
 			    struct module_command **commands,
-			    char **alias)
+			    struct alias_module **alias)
 {
 	char *line;
 	unsigned int linenum = 0;
@@ -996,9 +1012,9 @@
 			if (!wildcard || !realname)
 				grammar(cmd, filename, linenum);
 			else if (fnmatch(wildcard,name,0) == 0)
-				*alias = NOFAIL(strdup(realname));
+				add_alias_module(realname, alias);
 		} else if (strcmp(cmd, "include") == 0) {
-			char *newalias = NULL, *newfilename;
+			char *newfilename;
 
 			newfilename = strsep_skipspace(&ptr, "\t ");
 			if (!newfilename)
@@ -1006,15 +1022,10 @@
 			else {
 				if (!read_config(newfilename, name,
 						 dump_only, removing,
-						 options, commands, &newalias))
+						 options, commands, alias))
 					warn("Failed to open included"
 					      " config file %s: %s\n",
 					      newfilename, strerror(errno));
-
-				/* Files included override aliases,
-				   etc that was already set ... */
-				if (newalias)
-					*alias = newalias;
 			}
 		} else if (strcmp(cmd, "options") == 0) {
 			modname = strsep_skipspace(&ptr, "\t ");
@@ -1060,7 +1071,7 @@
 		       int removing,
 		       struct module_options **options,
 		       struct module_command **commands,
-		       char **alias)
+		       struct alias_module **alias)
 {
 	DIR *dir;
 
@@ -1103,7 +1114,7 @@
 				 int removing,
 				 struct module_options **options,
 				 struct module_command **commands,
-				 char **alias)
+				 struct alias_module **alias)
 {
 	unsigned int i;
 
@@ -1226,6 +1237,48 @@
 	return 0;
 }
 
+#define HANDLE_ONE_MODULE()						\
+	if (list_empty(&list)) {					\
+		/* The dependencies have to be real modules, but	\
+		   handle case where the first is completely bogus. */	\
+		command = find_command(modname, commands);		\
+		if (command && !ignore_commands) {			\
+			do_command(modname, command, verbose, dry_run,	\
+				   fatal, remove ? "remove":"install");	\
+			continue;					\
+		}							\
+		if (unknown_silent)					\
+			exit(1);					\
+		error("Module %s not found.\n", modname);		\
+		continue;						\
+	}								\
+									\
+	if (remove)							\
+		rmmod(&list, newname, first_time, error, dry_run,	\
+		      verbose, commands, ignore_commands, 0);		\
+	else								\
+		insmod(&list, NOFAIL(strdup(optstring)), newname,	\
+		       first_time, error, dry_run, verbose, modoptions,	\
+		       commands, ignore_commands, ignore_proc,		\
+		       strip_vermagic, strip_modversion);		\
+	free(modname);
+
+#define HANDLE_ALL_ALIASES()						\
+	while (alias_module) {						\
+		struct alias_module *next = alias_module->next;		\
+		char *modname = alias_module->name;			\
+									\
+		optstring = add_extra_options(modulearg, optstring,	\
+					      modoptions);		\
+		read_depends(dirname, modname, &list);			\
+									\
+		HANDLE_ONE_MODULE();					\
+									\
+		free(alias_module);					\
+		alias_module = next;					\
+	}
+
+
 int main(int argc, char *argv[])
 {
 	struct utsname buf;
@@ -1391,7 +1444,7 @@
 	if (dump_only) {
 		struct module_command *commands = NULL;
 		struct module_options *modoptions = NULL;
-		char *a = NULL;
+		struct alias_module *a = NULL;
 
 		read_toplevel_config(config, "", 1, 0,
 				     &modoptions, &commands, &a);
@@ -1415,27 +1468,26 @@
 		LIST_HEAD(list);
 		char *modulearg = argv[optind + i];
 		char *modname = NULL;
+		struct alias_module *alias_module = NULL;
 
 		/* Convert name we are looking for */
 		underscores(modulearg);
 
 		/* Returns the resolved alias, options */
 		read_toplevel_config(config, modulearg, 0,
-				     remove, &modoptions, &commands, &modname);
+				     remove, &modoptions, &commands, &alias_module);
 
 		/* No luck?  Try symbol names, if starts with symbol:. */
-		if (!modname
+		if (!alias_module
 		    && strncmp(modulearg, "symbol:", strlen("symbol:")) == 0)
 			read_config(symfilename, modulearg, 0,
-				    remove, &modoptions, &commands, &modname);
+				    remove, &modoptions, &commands, &alias_module);
 
-		/* If we have an alias, gather any options associated with it
+
+		/* If we have aliases, gather any options associated with it
 		   (needs to happen after parsing complete). */
-		if (modname) {
-		got_modname:
-			optstring = add_extra_options(modulearg, optstring,
-						      modoptions);
-			read_depends(dirname, modname, &list);
+		if (alias_module) {
+			HANDLE_ALL_ALIASES();
 		} else {
 			read_depends(dirname, modulearg, &list);
 			/* We don't allow canned aliases to override
@@ -1446,37 +1498,14 @@
 			    && read_config(aliasfilename,
 					   modulearg, 0,
 					   remove, &modoptions,
-					   &commands, &modname)
-			    && modname)
-				goto got_modname;
-
-			modname = strdup(modulearg);
-		}
-
-		if (list_empty(&list)) {
-			/* The dependencies have to be real modules, but
-			   handle case where the first is completely bogus. */
-			command = find_command(modname, commands);
-			if (command && !ignore_commands) {
-				do_command(modname, command, verbose, dry_run,
-					   fatal, remove ? "remove":"install");
-				continue;
+					   &commands, &alias_module)
+			    && alias_module) {
+				HANDLE_ALL_ALIASES();
+			} else {
+				modname = strdup(modulearg);
+				HANDLE_ONE_MODULE();
 			}
-			if (unknown_silent)
-				exit(1);
-			error("Module %s not found.\n", modname);
-			continue;
 		}
-
-		if (remove)
-			rmmod(&list, newname, first_time, error, dry_run,
-			      verbose, commands, ignore_commands, 0);
-		else
-			insmod(&list, NOFAIL(strdup(optstring)), newname,
-			       first_time, error, dry_run, verbose, modoptions,
-			       commands, ignore_commands, ignore_proc,
-			       strip_vermagic, strip_modversion);
-		free(modname);
 	}
 
 	free(dirname);


  reply	other threads:[~2005-05-09 23:21 UTC|newest]

Thread overview: 116+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-05-06 21:22 [ANNOUNCE] hotplug-ng 002 release Greg KH
2005-05-06 21:22 ` Greg KH
2005-05-08 22:52 ` Per Liden
2005-05-08 22:52   ` Per Liden
2005-05-09 21:13   ` Per Svennerbrandt
2005-05-09 21:13     ` Per Svennerbrandt
2005-05-10 22:17     ` Per Liden
2005-05-10 22:17       ` Per Liden
2005-05-10 22:41       ` Greg KH
2005-05-10 22:41         ` Greg KH
2005-05-10 23:56         ` Per Liden
2005-05-10 23:56           ` Per Liden
2005-05-11  1:22           ` Brian Gerst
2005-05-11  1:22             ` Brian Gerst
2005-05-11  5:33           ` Greg KH
2005-05-11  5:33             ` Greg KH
2005-05-11 17:36             ` Per Liden
2005-05-11 17:41               ` Greg KH
2005-05-18 23:00       ` Per Svennerbrandt
2005-05-18 23:00         ` Per Svennerbrandt
2005-05-18 23:00       ` [PATCH][RFC] __request_module: fixed argument request_module with waitflag Per Svennerbrandt
2005-05-18 23:00         ` Per Svennerbrandt
2005-05-18 23:01       ` [PATCH][RFC] request_modalias: MODALIAS based module loading Per Svennerbrandt
2005-05-18 23:01         ` Per Svennerbrandt
2005-05-18 23:37         ` Per Svennerbrandt
2005-05-10 22:41     ` [ANNOUNCE] hotplug-ng 002 release Greg KH
2005-05-10 22:41       ` Greg KH
2005-05-12 21:42     ` Greg KH
2005-05-12 21:42       ` Greg KH
2005-05-13  8:19       ` Michael Tokarev
2005-05-13  8:19         ` Michael Tokarev
2005-05-13 16:02         ` Greg KH
2005-05-13 16:02           ` Greg KH
2005-05-13 23:21       ` Per Svennerbrandt
2005-05-13 23:21         ` Per Svennerbrandt
2005-05-14  5:59         ` Greg KH
2005-05-14  5:59           ` Greg KH
2005-05-15 22:37           ` Per Svennerbrandt
2005-05-18  9:27     ` David Weinehall
2005-05-18  9:27       ` David Weinehall
2005-05-09 23:22   ` Greg KH
2005-05-09 23:22     ` Greg KH
2005-05-10 21:51     ` Per Liden
2005-05-10 21:51       ` Per Liden
2005-05-11  5:36       ` Greg KH
2005-05-11  5:36         ` Greg KH
2005-05-09  3:57 ` Rusty Russell
2005-05-09  3:57   ` Rusty Russell
2005-05-09 23:21   ` Greg KH [this message]
2005-05-09 23:21     ` Greg KH
2005-05-10  9:29     ` Rusty Russell
2005-05-10  9:29       ` Rusty Russell
2005-05-10  9:43       ` Marco d'Itri
2005-05-10  9:43         ` Marco d'Itri
2005-05-10 12:58         ` Alexander E. Patrakov
2005-05-10 12:58           ` Alexander E. Patrakov
2005-05-10 17:24           ` Marco d'Itri
2005-05-10 17:24             ` Marco d'Itri
2005-05-10 20:13             ` Greg KH
2005-05-10 20:13               ` Greg KH
2005-05-10 20:28               ` Lee Revell
2005-05-10 20:28                 ` Lee Revell
2005-05-10 20:59                 ` Greg KH
2005-05-10 20:59                   ` Greg KH
2005-05-10 21:02                   ` Marco d'Itri
2005-05-10 21:02                     ` Marco d'Itri
2005-05-10 20:31               ` Marco d'Itri
2005-05-10 20:31                 ` Marco d'Itri
2005-05-10 20:52                 ` Greg KH
2005-05-10 20:52                   ` Greg KH
2005-05-10 20:59                   ` Bill Nottingham
2005-05-10 20:59                     ` Bill Nottingham
2005-05-10 21:08                   ` Marco d'Itri
2005-05-10 21:08                     ` Marco d'Itri
2005-05-10 21:22                     ` Erik van Konijnenburg
2005-05-10 21:22                       ` Erik van Konijnenburg
2005-05-10 23:55                       ` [PATCH] " Erik van Konijnenburg
2005-05-10 23:55                         ` Erik van Konijnenburg
2005-05-11  0:05                         ` Marco d'Itri
2005-05-11  0:05                           ` Marco d'Itri
2005-05-11  5:40                           ` Greg KH
2005-05-11  5:40                             ` Greg KH
2005-05-11  0:08                         ` [PATCH] " Rusty Russell
2005-05-11  0:08                           ` Rusty Russell
2005-05-11  1:11                           ` Erik van Konijnenburg
2005-05-11  1:11                             ` Erik van Konijnenburg
2005-05-11  3:39                             ` Rusty Russell
2005-05-11  3:39                               ` Rusty Russell
2005-05-11  9:59                               ` Erik van Konijnenburg
2005-05-11  9:59                                 ` Erik van Konijnenburg
2005-05-11 10:52                                 ` Rusty Russell
2005-05-11 10:52                                   ` Rusty Russell
2005-05-11 10:58                                   ` Marco d'Itri
2005-05-11 10:58                                     ` Marco d'Itri
2005-05-11 13:06                                     ` Erik van Konijnenburg
2005-05-11 13:06                                       ` Erik van Konijnenburg
2005-05-12  4:39                                       ` Rusty Russell
2005-05-12  4:39                                         ` Rusty Russell
2005-05-12  7:47                                         ` Erik van Konijnenburg
2005-05-12  7:47                                           ` Erik van Konijnenburg
2005-05-10 21:21               ` Giuseppe Bilotta
2005-05-11  0:01               ` Rusty Russell
2005-05-11  0:01                 ` Rusty Russell
2005-05-11  0:10                 ` Marco d'Itri
2005-05-11  0:10                   ` Marco d'Itri
2005-05-11  1:09                   ` Rusty Russell
2005-05-11  1:09                     ` Rusty Russell
2005-05-11  7:31 ` Christian Zoz
2005-05-14 23:02 ` Michael Tokarev
2005-05-14 23:02   ` Michael Tokarev
2005-05-16 19:11   ` Greg KH
2005-05-16 19:11     ` Greg KH
2005-05-16 21:24 ` Marco d'Itri
     [not found] <41iyE-8mI-11@gated-at.bofh.it>
     [not found] ` <427KM-h4-9@gated-at.bofh.it>
     [not found]   ` <42pRx-75A-19@gated-at.bofh.it>
     [not found]     ` <42znJ-6x7-25@gated-at.bofh.it>
     [not found]       ` <42zQL-70r-25@gated-at.bofh.it>
     [not found]         ` <42CF0-YV-37@gated-at.bofh.it>
     [not found]           ` <42GIH-4u3-31@gated-at.bofh.it>
     [not found]             ` <42Jn3-6Qj-5@gated-at.bofh.it>
     [not found]               ` <42KsY-7KW-33@gated-at.bofh.it>
2005-05-11  2:04                 ` Bodo Eggert <harvested.in.lkml@posting.7eggert.dyndns.org>
2005-05-11  2:04                   ` Bodo Eggert <harvested.in.lkml@posting.7eggert.dyndns.org>
2005-05-18  7:23                   ` Giuseppe Bilotta

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=20050509232103.GA24238@suse.de \
    --to=gregkh@suse.de \
    --cc=linux-hotplug-devel@lists.sourceforge.net \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux@dominikbrodowski.net \
    --cc=rusty@rustcorp.com.au \
    /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.