diff options
| author | Linus Torvalds <torvalds@linux-foundation.org> | 2015-06-26 15:07:37 -0700 | 
|---|---|---|
| committer | Linus Torvalds <torvalds@linux-foundation.org> | 2015-06-26 15:07:37 -0700 | 
| commit | 8d7804a2f03dbd34940fcb426450c730adf29dae (patch) | |
| tree | 749f33776e38f734b81c2a93275b6bf76e96f74e /init | |
| parent | d87823813fe498fdd47894bd28e460a9dee8d771 (diff) | |
| parent | 0e6c861f73ec42ab5c89fda9892f2173c7aaf6cf (diff) | |
| download | linux-8d7804a2f03dbd34940fcb426450c730adf29dae.tar.bz2 | |
Merge tag 'driver-core-4.2-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core
Pull driver core updates from Greg KH:
 "Here is the driver core / firmware changes for 4.2-rc1.
  A number of small changes all over the place in the driver core, and
  in the firmware subsystem.  Nothing really major, full details in the
  shortlog.  Some of it is a bit of churn, given that the platform
  driver probing changes was found to not work well, so they were
  reverted.
  All of these have been in linux-next for a while with no reported
  issues"
* tag 'driver-core-4.2-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core: (31 commits)
  Revert "base/platform: Only insert MEM and IO resources"
  Revert "base/platform: Continue on insert_resource() error"
  Revert "of/platform: Use platform_device interface"
  Revert "base/platform: Remove code duplication"
  firmware: add missing kfree for work on async call
  fs: sysfs: don't pass count == 0 to bin file readers
  base:dd - Fix for typo in comment to function driver_deferred_probe_trigger().
  base/platform: Remove code duplication
  of/platform: Use platform_device interface
  base/platform: Continue on insert_resource() error
  base/platform: Only insert MEM and IO resources
  firmware: use const for remaining firmware names
  firmware: fix possible use after free on name on asynchronous request
  firmware: check for file truncation on direct firmware loading
  firmware: fix __getname() missing failure check
  drivers: of/base: move of_init to driver_init
  drivers/base: cacheinfo: fix annoying typo when DT nodes are absent
  sysfs: disambiguate between "error code" and "failure" in comments
  driver-core: fix build for !CONFIG_MODULES
  driver-core: make __device_attach() static
  ...
Diffstat (limited to 'init')
| -rw-r--r-- | init/main.c | 25 | 
1 files changed, 15 insertions, 10 deletions
| diff --git a/init/main.c b/init/main.c index 2a89545e0a5d..c599aea23bb1 100644 --- a/init/main.c +++ b/init/main.c @@ -235,7 +235,8 @@ static int __init loglevel(char *str)  early_param("loglevel", loglevel);  /* Change NUL term back to "=", to make "param" the whole string. */ -static int __init repair_env_string(char *param, char *val, const char *unused) +static int __init repair_env_string(char *param, char *val, +				    const char *unused, void *arg)  {  	if (val) {  		/* param=val or param="val"? */ @@ -252,14 +253,15 @@ static int __init repair_env_string(char *param, char *val, const char *unused)  }  /* Anything after -- gets handed straight to init. */ -static int __init set_init_arg(char *param, char *val, const char *unused) +static int __init set_init_arg(char *param, char *val, +			       const char *unused, void *arg)  {  	unsigned int i;  	if (panic_later)  		return 0; -	repair_env_string(param, val, unused); +	repair_env_string(param, val, unused, NULL);  	for (i = 0; argv_init[i]; i++) {  		if (i == MAX_INIT_ARGS) { @@ -276,9 +278,10 @@ static int __init set_init_arg(char *param, char *val, const char *unused)   * Unknown boot options get handed to init, unless they look like   * unused parameters (modprobe will find them in /proc/cmdline).   */ -static int __init unknown_bootoption(char *param, char *val, const char *unused) +static int __init unknown_bootoption(char *param, char *val, +				     const char *unused, void *arg)  { -	repair_env_string(param, val, unused); +	repair_env_string(param, val, unused, NULL);  	/* Handle obsolete-style parameters */  	if (obsolete_checksetup(param)) @@ -410,7 +413,8 @@ static noinline void __init_refok rest_init(void)  }  /* Check for early params. */ -static int __init do_early_param(char *param, char *val, const char *unused) +static int __init do_early_param(char *param, char *val, +				 const char *unused, void *arg)  {  	const struct obs_kernel_param *p; @@ -429,7 +433,8 @@ static int __init do_early_param(char *param, char *val, const char *unused)  void __init parse_early_options(char *cmdline)  { -	parse_args("early options", cmdline, NULL, 0, 0, 0, do_early_param); +	parse_args("early options", cmdline, NULL, 0, 0, 0, NULL, +		   do_early_param);  }  /* Arch code calls this early on, or if not, just before other parsing. */ @@ -535,10 +540,10 @@ asmlinkage __visible void __init start_kernel(void)  	after_dashes = parse_args("Booting kernel",  				  static_command_line, __start___param,  				  __stop___param - __start___param, -				  -1, -1, &unknown_bootoption); +				  -1, -1, NULL, &unknown_bootoption);  	if (!IS_ERR_OR_NULL(after_dashes))  		parse_args("Setting init args", after_dashes, NULL, 0, -1, -1, -			   set_init_arg); +			   NULL, set_init_arg);  	jump_label_init(); @@ -848,7 +853,7 @@ static void __init do_initcall_level(int level)  		   initcall_command_line, __start___param,  		   __stop___param - __start___param,  		   level, level, -		   &repair_env_string); +		   NULL, &repair_env_string);  	for (fn = initcall_levels[level]; fn < initcall_levels[level+1]; fn++)  		do_one_initcall(*fn); |