Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 36191
b: refs/heads/master
c: 7e96287
h: refs/heads/master
i:
  36189: a32eb60
  36187: cc1c373
  36183: d39316f
  36175: 96efe71
  36159: 4864c29
v: v3
  • Loading branch information
Vivek Goyal authored and Linus Torvalds committed Sep 27, 2006
1 parent e5822a3 commit 916781a
Show file tree
Hide file tree
Showing 4 changed files with 25 additions and 1 deletion.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: bcdc5e019d9f525a9f181a7de642d3a9c27c7610
refs/heads/master: 7e96287ddc4f42081e18248b6167041c0908004c
3 changes: 3 additions & 0 deletions trunk/Documentation/kernel-parameters.txt
Original file line number Diff line number Diff line change
Expand Up @@ -1370,6 +1370,9 @@ running once the system is up.
Reserves a hole at the top of the kernel virtual
address space.

reset_devices [KNL] Force drivers to reset the underlying device
during initialization.

resume= [SWSUSP]
Specify the partition device for software suspend

Expand Down
1 change: 1 addition & 0 deletions trunk/include/linux/init.h
Original file line number Diff line number Diff line change
Expand Up @@ -68,6 +68,7 @@ extern initcall_t __security_initcall_start[], __security_initcall_end[];

/* Defined in init/main.c */
extern char saved_command_line[];
extern unsigned int reset_devices;

/* used by init/main.c */
extern void setup_arch(char **);
Expand Down
20 changes: 20 additions & 0 deletions trunk/init/main.c
Original file line number Diff line number Diff line change
Expand Up @@ -127,6 +127,18 @@ static char *ramdisk_execute_command;
/* Setup configured maximum number of CPUs to activate */
static unsigned int max_cpus = NR_CPUS;

/*
* If set, this is an indication to the drivers that reset the underlying
* device before going ahead with the initialization otherwise driver might
* rely on the BIOS and skip the reset operation.
*
* This is useful if kernel is booting in an unreliable environment.
* For ex. kdump situaiton where previous kernel has crashed, BIOS has been
* skipped and devices will be in unknown state.
*/
unsigned int reset_devices;
EXPORT_SYMBOL(reset_devices);

/*
* Setup routine for controlling SMP activation
*
Expand All @@ -153,6 +165,14 @@ static int __init maxcpus(char *str)

__setup("maxcpus=", maxcpus);

static int __init set_reset_devices(char *str)
{
reset_devices = 1;
return 1;
}

__setup("reset_devices", set_reset_devices);

static char * argv_init[MAX_INIT_ARGS+2] = { "init", NULL, };
char * envp_init[MAX_INIT_ENVS+2] = { "HOME=/", "TERM=linux", NULL, };
static const char *panic_later, *panic_param;
Expand Down

0 comments on commit 916781a

Please sign in to comment.