mirror of https://gitee.com/openkylin/linux.git
[S390] 3270 console: convert from bootmem to slab
The slab allocator is earlier available so convert the bootmem allocations to slab/gfp allocations. Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com> Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
This commit is contained in:
parent
6d56eee2c0
commit
33403dcfcd
|
@ -7,7 +7,6 @@
|
||||||
* Copyright IBM Corp. 2003, 2009
|
* Copyright IBM Corp. 2003, 2009
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include <linux/bootmem.h>
|
|
||||||
#include <linux/console.h>
|
#include <linux/console.h>
|
||||||
#include <linux/init.h>
|
#include <linux/init.h>
|
||||||
#include <linux/interrupt.h>
|
#include <linux/interrupt.h>
|
||||||
|
@ -600,16 +599,14 @@ con3270_init(void)
|
||||||
if (IS_ERR(rp))
|
if (IS_ERR(rp))
|
||||||
return PTR_ERR(rp);
|
return PTR_ERR(rp);
|
||||||
|
|
||||||
condev = (struct con3270 *) alloc_bootmem_low(sizeof(struct con3270));
|
condev = kzalloc(sizeof(struct con3270), GFP_KERNEL | GFP_DMA);
|
||||||
memset(condev, 0, sizeof(struct con3270));
|
|
||||||
condev->view.dev = rp;
|
condev->view.dev = rp;
|
||||||
|
|
||||||
condev->read = raw3270_request_alloc_bootmem(0);
|
condev->read = raw3270_request_alloc(0);
|
||||||
condev->read->callback = con3270_read_callback;
|
condev->read->callback = con3270_read_callback;
|
||||||
condev->read->callback_data = condev;
|
condev->read->callback_data = condev;
|
||||||
condev->write =
|
condev->write = raw3270_request_alloc(CON3270_OUTPUT_BUFFER_SIZE);
|
||||||
raw3270_request_alloc_bootmem(CON3270_OUTPUT_BUFFER_SIZE);
|
condev->kreset = raw3270_request_alloc(1);
|
||||||
condev->kreset = raw3270_request_alloc_bootmem(1);
|
|
||||||
|
|
||||||
INIT_LIST_HEAD(&condev->lines);
|
INIT_LIST_HEAD(&condev->lines);
|
||||||
INIT_LIST_HEAD(&condev->update);
|
INIT_LIST_HEAD(&condev->update);
|
||||||
|
@ -623,7 +620,7 @@ con3270_init(void)
|
||||||
|
|
||||||
INIT_LIST_HEAD(&condev->freemem);
|
INIT_LIST_HEAD(&condev->freemem);
|
||||||
for (i = 0; i < CON3270_STRING_PAGES; i++) {
|
for (i = 0; i < CON3270_STRING_PAGES; i++) {
|
||||||
cbuf = (void *) alloc_bootmem_low_pages(PAGE_SIZE);
|
cbuf = (void *) get_zeroed_page(GFP_KERNEL | GFP_DMA);
|
||||||
add_string_memory(&condev->freemem, cbuf, PAGE_SIZE);
|
add_string_memory(&condev->freemem, cbuf, PAGE_SIZE);
|
||||||
}
|
}
|
||||||
condev->cline = alloc_string(&condev->freemem, condev->view.cols);
|
condev->cline = alloc_string(&condev->freemem, condev->view.cols);
|
||||||
|
|
|
@ -7,7 +7,6 @@
|
||||||
* Copyright IBM Corp. 2003, 2009
|
* Copyright IBM Corp. 2003, 2009
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include <linux/bootmem.h>
|
|
||||||
#include <linux/module.h>
|
#include <linux/module.h>
|
||||||
#include <linux/err.h>
|
#include <linux/err.h>
|
||||||
#include <linux/init.h>
|
#include <linux/init.h>
|
||||||
|
@ -143,33 +142,6 @@ raw3270_request_alloc(size_t size)
|
||||||
return rq;
|
return rq;
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef CONFIG_TN3270_CONSOLE
|
|
||||||
/*
|
|
||||||
* Allocate a new 3270 ccw request from bootmem. Only works very
|
|
||||||
* early in the boot process. Only con3270.c should be using this.
|
|
||||||
*/
|
|
||||||
struct raw3270_request __init *raw3270_request_alloc_bootmem(size_t size)
|
|
||||||
{
|
|
||||||
struct raw3270_request *rq;
|
|
||||||
|
|
||||||
rq = alloc_bootmem_low(sizeof(struct raw3270));
|
|
||||||
|
|
||||||
/* alloc output buffer. */
|
|
||||||
if (size > 0)
|
|
||||||
rq->buffer = alloc_bootmem_low(size);
|
|
||||||
rq->size = size;
|
|
||||||
INIT_LIST_HEAD(&rq->list);
|
|
||||||
|
|
||||||
/*
|
|
||||||
* Setup ccw.
|
|
||||||
*/
|
|
||||||
rq->ccw.cda = __pa(rq->buffer);
|
|
||||||
rq->ccw.flags = CCW_FLAG_SLI;
|
|
||||||
|
|
||||||
return rq;
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Free 3270 ccw request
|
* Free 3270 ccw request
|
||||||
*/
|
*/
|
||||||
|
@ -846,8 +818,8 @@ struct raw3270 __init *raw3270_setup_console(struct ccw_device *cdev)
|
||||||
char *ascebc;
|
char *ascebc;
|
||||||
int rc;
|
int rc;
|
||||||
|
|
||||||
rp = (struct raw3270 *) alloc_bootmem_low(sizeof(struct raw3270));
|
rp = kzalloc(sizeof(struct raw3270), GFP_KERNEL | GFP_DMA);
|
||||||
ascebc = (char *) alloc_bootmem(256);
|
ascebc = kzalloc(256, GFP_KERNEL);
|
||||||
rc = raw3270_setup_device(cdev, rp, ascebc);
|
rc = raw3270_setup_device(cdev, rp, ascebc);
|
||||||
if (rc)
|
if (rc)
|
||||||
return ERR_PTR(rc);
|
return ERR_PTR(rc);
|
||||||
|
|
Loading…
Reference in New Issue