[S390] raw3270: use mutex instead of semaphore
Signed-off-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
This commit is contained in:
parent
e11f0d04c6
commit
d330f93595
|
@ -487,7 +487,7 @@ struct raw3270_ua { /* Query Reply structure for Usable Area */
|
||||||
} __attribute__ ((packed));
|
} __attribute__ ((packed));
|
||||||
|
|
||||||
static struct diag210 raw3270_init_diag210;
|
static struct diag210 raw3270_init_diag210;
|
||||||
static DECLARE_MUTEX(raw3270_init_sem);
|
static DEFINE_MUTEX(raw3270_init_mutex);
|
||||||
|
|
||||||
static int
|
static int
|
||||||
raw3270_init_irq(struct raw3270_view *view, struct raw3270_request *rq,
|
raw3270_init_irq(struct raw3270_view *view, struct raw3270_request *rq,
|
||||||
|
@ -713,7 +713,7 @@ raw3270_size_device(struct raw3270 *rp)
|
||||||
{
|
{
|
||||||
int rc;
|
int rc;
|
||||||
|
|
||||||
down(&raw3270_init_sem);
|
mutex_lock(&raw3270_init_mutex);
|
||||||
rp->view = &raw3270_init_view;
|
rp->view = &raw3270_init_view;
|
||||||
raw3270_init_view.dev = rp;
|
raw3270_init_view.dev = rp;
|
||||||
if (MACHINE_IS_VM)
|
if (MACHINE_IS_VM)
|
||||||
|
@ -722,7 +722,7 @@ raw3270_size_device(struct raw3270 *rp)
|
||||||
rc = __raw3270_size_device(rp);
|
rc = __raw3270_size_device(rp);
|
||||||
raw3270_init_view.dev = NULL;
|
raw3270_init_view.dev = NULL;
|
||||||
rp->view = NULL;
|
rp->view = NULL;
|
||||||
up(&raw3270_init_sem);
|
mutex_unlock(&raw3270_init_mutex);
|
||||||
if (rc == 0) { /* Found something. */
|
if (rc == 0) { /* Found something. */
|
||||||
/* Try to find a model. */
|
/* Try to find a model. */
|
||||||
rp->model = 0;
|
rp->model = 0;
|
||||||
|
@ -749,7 +749,7 @@ raw3270_reset_device(struct raw3270 *rp)
|
||||||
{
|
{
|
||||||
int rc;
|
int rc;
|
||||||
|
|
||||||
down(&raw3270_init_sem);
|
mutex_lock(&raw3270_init_mutex);
|
||||||
memset(&rp->init_request, 0, sizeof(rp->init_request));
|
memset(&rp->init_request, 0, sizeof(rp->init_request));
|
||||||
memset(&rp->init_data, 0, sizeof(rp->init_data));
|
memset(&rp->init_data, 0, sizeof(rp->init_data));
|
||||||
/* Store reset data stream to init_data/init_request */
|
/* Store reset data stream to init_data/init_request */
|
||||||
|
@ -764,7 +764,7 @@ raw3270_reset_device(struct raw3270 *rp)
|
||||||
rc = raw3270_start_init(rp, &raw3270_init_view, &rp->init_request);
|
rc = raw3270_start_init(rp, &raw3270_init_view, &rp->init_request);
|
||||||
raw3270_init_view.dev = NULL;
|
raw3270_init_view.dev = NULL;
|
||||||
rp->view = NULL;
|
rp->view = NULL;
|
||||||
up(&raw3270_init_sem);
|
mutex_unlock(&raw3270_init_mutex);
|
||||||
return rc;
|
return rc;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue