Skip to content

Commit

Permalink
[S390] cio: remove subchannel init_name
Browse files Browse the repository at this point in the history
We used the init_name to set the console subchannels name early
at the boot stage. With the patch cio: fix memleak in subchannel validation
we moved the name setting to the point where we actually register the
console subchannel. At this time we can do dynamic allocations and therefore
use dev_set_name.

Signed-off-by: Sebastian Ott <sebott@linux.vnet.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
  • Loading branch information
Sebastian Ott authored and Martin Schwidefsky committed Sep 11, 2009
1 parent ab6aae0 commit 6ee4fec
Show file tree
Hide file tree
Showing 3 changed files with 2 additions and 14 deletions.
7 changes: 0 additions & 7 deletions drivers/s390/cio/cio.c
Original file line number Diff line number Diff line change
Expand Up @@ -667,7 +667,6 @@ void __irq_entry do_IRQ(struct pt_regs *regs)

#ifdef CONFIG_CCW_CONSOLE
static struct subchannel console_subchannel;
static char console_sch_name[10] = "0.x.xxxx";
static struct io_subchannel_private console_priv;
static int console_subchannel_in_use;

Expand Down Expand Up @@ -854,12 +853,6 @@ cio_get_console_subchannel(void)
return &console_subchannel;
}

const char *cio_get_console_sch_name(struct subchannel_id schid)
{
snprintf(console_sch_name, 10, "0.%x.%04x", schid.ssid, schid.sch_no);
return (const char *)console_sch_name;
}

#endif
static int
__disable_subchannel_easy(struct subchannel_id schid, struct schib *schib)
Expand Down
2 changes: 0 additions & 2 deletions drivers/s390/cio/cio.h
Original file line number Diff line number Diff line change
Expand Up @@ -133,14 +133,12 @@ extern int cio_is_console(struct subchannel_id);
extern struct subchannel *cio_get_console_subchannel(void);
extern spinlock_t * cio_get_console_lock(void);
extern void *cio_get_console_priv(void);
extern const char *cio_get_console_sch_name(struct subchannel_id schid);
extern const char *cio_get_console_cdev_name(struct subchannel *sch);
#else
#define cio_is_console(schid) 0
#define cio_get_console_subchannel() NULL
#define cio_get_console_lock() NULL
#define cio_get_console_priv() NULL
#define cio_get_console_sch_name(schid) NULL
#define cio_get_console_cdev_name(sch) NULL
#endif

Expand Down
7 changes: 2 additions & 5 deletions drivers/s390/cio/css.c
Original file line number Diff line number Diff line change
Expand Up @@ -183,11 +183,8 @@ static int css_sch_device_register(struct subchannel *sch)
int ret;

mutex_lock(&sch->reg_mutex);
if (cio_is_console(sch->schid))
sch->dev.init_name = cio_get_console_sch_name(sch->schid);
else
dev_set_name(&sch->dev, "0.%x.%04x", sch->schid.ssid,
sch->schid.sch_no);
dev_set_name(&sch->dev, "0.%x.%04x", sch->schid.ssid,
sch->schid.sch_no);
ret = device_register(&sch->dev);
mutex_unlock(&sch->reg_mutex);
return ret;
Expand Down

0 comments on commit 6ee4fec

Please sign in to comment.