Skip to content

Commit

Permalink
TTY:vt: convert remain take_over_console's users to do_take_over_console
Browse files Browse the repository at this point in the history
Impact:
1:convert all remain take_over_console to do_take_over_console
2:update take_over_console to do_take_over_console in comment

Commit dc96418 ("vt: delete unneeded functions
register_con_driver|take_over_console") delete take_over_console,
but forget to convert remain take_over_console's users to new API
do_take_over_console, this patch fix it.

Reported-by: Stephen Rothwell <[email protected]>
Signed-off-by: Wang YanQing <[email protected]>
Signed-off-by: Greg Kroah-Hartman <[email protected]>
  • Loading branch information
wyqkp authored and gregkh committed May 21, 2013
1 parent 4898e64 commit 155957f
Show file tree
Hide file tree
Showing 11 changed files with 43 additions and 20 deletions.
4 changes: 3 additions & 1 deletion arch/alpha/kernel/console.c
Original file line number Diff line number Diff line change
Expand Up @@ -61,7 +61,9 @@ locate_and_init_vga(void *(*sel_func)(void *, void *))

/* Set the VGA hose and init the new console. */
pci_vga_hose = hose;
take_over_console(&vga_con, 0, MAX_NR_CONSOLES-1, 1);
console_lock();
do_take_over_console(&vga_con, 0, MAX_NR_CONSOLES-1, 1);
console_unlock();
}

void __init
Expand Down
4 changes: 3 additions & 1 deletion arch/alpha/kernel/process.c
Original file line number Diff line number Diff line change
Expand Up @@ -117,7 +117,9 @@ common_shutdown_1(void *generic_ptr)
if (in_interrupt())
irq_exit();
/* This has the effect of resetting the VGA video origin. */
take_over_console(&dummy_con, 0, MAX_NR_CONSOLES-1, 1);
console_lock();
do_take_over_console(&dummy_con, 0, MAX_NR_CONSOLES-1, 1);
console_unlock();
#endif
pci_restore_srm_config();
set_hae(srm_hae);
Expand Down
4 changes: 3 additions & 1 deletion arch/mips/pci/pci-bcm1480.c
Original file line number Diff line number Diff line change
Expand Up @@ -257,7 +257,9 @@ static int __init bcm1480_pcibios_init(void)
register_pci_controller(&bcm1480_controller);

#ifdef CONFIG_VGA_CONSOLE
take_over_console(&vga_con, 0, MAX_NR_CONSOLES-1, 1);
console_lock();
do_take_over_console(&vga_con, 0, MAX_NR_CONSOLES-1, 1);
console_unlock();
#endif
return 0;
}
Expand Down
4 changes: 3 additions & 1 deletion arch/mips/pci/pci-sb1250.c
Original file line number Diff line number Diff line change
Expand Up @@ -283,7 +283,9 @@ static int __init sb1250_pcibios_init(void)
register_pci_controller(&sb1250_controller);

#ifdef CONFIG_VGA_CONSOLE
take_over_console(&vga_con, 0, MAX_NR_CONSOLES - 1, 1);
console_lock();
do_take_over_console(&vga_con, 0, MAX_NR_CONSOLES - 1, 1);
console_unlock();
#endif
return 0;
}
Expand Down
2 changes: 1 addition & 1 deletion arch/parisc/kernel/setup.c
Original file line number Diff line number Diff line change
Expand Up @@ -155,7 +155,7 @@ void __init setup_arch(char **cmdline_p)
#endif

#if defined(CONFIG_VT) && defined(CONFIG_DUMMY_CONSOLE)
conswitchp = &dummy_con; /* we use take_over_console() later ! */
conswitchp = &dummy_con; /* we use do_take_over_console() later ! */
#endif

}
Expand Down
2 changes: 1 addition & 1 deletion drivers/tty/vt/vt.c
Original file line number Diff line number Diff line change
Expand Up @@ -3592,7 +3592,7 @@ EXPORT_SYMBOL_GPL(do_unregister_con_driver);
* when a driver wants to take over some existing consoles
* and become default driver for newly opened ones.
*
* take_over_console is basically a register followed by unbind
* do_take_over_console is basically a register followed by unbind
*/
int do_take_over_console(const struct consw *csw, int first, int last, int deflt)
{
Expand Down
18 changes: 11 additions & 7 deletions drivers/usb/misc/sisusbvga/sisusb_con.c
Original file line number Diff line number Diff line change
Expand Up @@ -208,7 +208,7 @@ sisusbcon_init(struct vc_data *c, int init)
struct sisusb_usb_data *sisusb;
int cols, rows;

/* This is called by take_over_console(),
/* This is called by do_take_over_console(),
* ie by us/under our control. It is
* only called after text mode and fonts
* are set up/restored.
Expand Down Expand Up @@ -273,7 +273,7 @@ sisusbcon_deinit(struct vc_data *c)
struct sisusb_usb_data *sisusb;
int i;

/* This is called by take_over_console()
/* This is called by do_take_over_console()
* and others, ie not under our control.
*/

Expand Down Expand Up @@ -1490,8 +1490,9 @@ sisusb_console_init(struct sisusb_usb_data *sisusb, int first, int last)
mutex_unlock(&sisusb->lock);

/* Now grab the desired console(s) */
ret = take_over_console(&sisusb_con, first - 1, last - 1, 0);

console_lock();
ret = do_take_over_console(&sisusb_con, first - 1, last - 1, 0);
console_unlock();
if (!ret)
sisusb->haveconsole = 1;
else {
Expand Down Expand Up @@ -1535,11 +1536,14 @@ sisusb_console_exit(struct sisusb_usb_data *sisusb)

if (sisusb->haveconsole) {
for (i = 0; i < MAX_NR_CONSOLES; i++)
if (sisusb->havethisconsole[i])
take_over_console(&sisusb_dummy_con, i, i, 0);
if (sisusb->havethisconsole[i]) {
console_lock();
do_take_over_console(&sisusb_dummy_con, i, i, 0);
console_unlock();
/* At this point, con_deinit for all our
* consoles is executed by take_over_console().
* consoles is executed by do_take_over_console().
*/
}
sisusb->haveconsole = 0;
}

Expand Down
2 changes: 1 addition & 1 deletion drivers/video/console/fbcon.c
Original file line number Diff line number Diff line change
Expand Up @@ -873,7 +873,7 @@ static int set_con2fb_map(int unit, int newidx, int user)
/*
* Low Level Operations
*/
/* NOTE: fbcon cannot be __init: it may be called from take_over_console later */
/* NOTE: fbcon cannot be __init: it may be called from do_take_over_console later */
static int var_to_display(struct display *disp,
struct fb_var_screeninfo *var,
struct fb_info *info)
Expand Down
8 changes: 6 additions & 2 deletions drivers/video/console/mdacon.c
Original file line number Diff line number Diff line change
Expand Up @@ -585,10 +585,14 @@ static const struct consw mda_con = {

int __init mda_console_init(void)
{
int err;

if (mda_first_vc > mda_last_vc)
return 1;

return take_over_console(&mda_con, mda_first_vc-1, mda_last_vc-1, 0);
console_lock();
err = do_take_over_console(&mda_con, mda_first_vc-1, mda_last_vc-1, 0);
console_unlock();
return err;
}

static void __exit mda_console_exit(void)
Expand Down
9 changes: 6 additions & 3 deletions drivers/video/console/newport_con.c
Original file line number Diff line number Diff line change
Expand Up @@ -297,7 +297,7 @@ static void newport_exit(void)
newport_set_def_font(i, NULL);
}

/* Can't be __init, take_over_console may call it later */
/* Can't be __init, do_take_over_console may call it later */
static const char *newport_startup(void)
{
int i;
Expand Down Expand Up @@ -746,6 +746,7 @@ static int newport_probe(struct gio_device *dev,
const struct gio_device_id *id)
{
unsigned long newport_addr;
int err;

if (!dev->resource.start)
return -EINVAL;
Expand All @@ -759,8 +760,10 @@ static int newport_probe(struct gio_device *dev,

npregs = (struct newport_regs *)/* ioremap cannot fail */
ioremap(newport_addr, sizeof(struct newport_regs));

return take_over_console(&newport_con, 0, MAX_NR_CONSOLES - 1, 1);
console_lock();
err = do_take_over_console(&newport_con, 0, MAX_NR_CONSOLES - 1, 1);
console_unlock();
return err;
}

static void newport_remove(struct gio_device *dev)
Expand Down
6 changes: 5 additions & 1 deletion drivers/video/console/sticon.c
Original file line number Diff line number Diff line change
Expand Up @@ -372,6 +372,7 @@ static const struct consw sti_con = {

static int __init sticonsole_init(void)
{
int err;
/* already initialized ? */
if (sticon_sti)
return 0;
Expand All @@ -382,7 +383,10 @@ static int __init sticonsole_init(void)

if (conswitchp == &dummy_con) {
printk(KERN_INFO "sticon: Initializing STI text console.\n");
return take_over_console(&sti_con, 0, MAX_NR_CONSOLES - 1, 1);
console_lock();
err = do_take_over_console(&sti_con, 0, MAX_NR_CONSOLES - 1, 1);
console_unlock();
return err;
}
return 0;
}
Expand Down

0 comments on commit 155957f

Please sign in to comment.