s390/tty3270: remove function callback casts
authorOscar Carter <oscar.carter@gmx.com>
Sat, 27 Jun 2020 12:54:17 +0000 (14:54 +0200)
committerHeiko Carstens <heiko.carstens@de.ibm.com>
Wed, 1 Jul 2020 18:00:55 +0000 (20:00 +0200)
In an effort to enable -Wcast-function-type in the top-level Makefile to
support Control Flow Integrity builds, remove all the function callback
casts.

To do this modify the function prototypes accordingly.

Signed-off-by: Oscar Carter <oscar.carter@gmx.com>
Message-Id: <20200627125417.18887-1-oscar.carter@gmx.com>
Reviewed-by: Kees Cook <keescook@chromium.org>
[heiko.carstens@de.ibm.com: coding style changes]
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
drivers/s390/char/tty3270.c

index 98d7fc1..aec996d 100644 (file)
@@ -556,8 +556,9 @@ tty3270_scroll_backward(struct kbd_data *kbd)
  * Pass input line to tty.
  */
 static void
-tty3270_read_tasklet(struct raw3270_request *rrq)
+tty3270_read_tasklet(unsigned long data)
 {
+       struct raw3270_request *rrq = (struct raw3270_request *)data;
        static char kreset_data = TW_KR;
        struct tty3270 *tp = container_of(rrq->view, struct tty3270, view);
        char *input;
@@ -652,8 +653,9 @@ tty3270_issue_read(struct tty3270 *tp, int lock)
  * Hang up the tty
  */
 static void
-tty3270_hangup_tasklet(struct tty3270 *tp)
+tty3270_hangup_tasklet(unsigned long data)
 {
+       struct tty3270 *tp = (struct tty3270 *)data;
        tty_port_tty_hangup(&tp->port, true);
        raw3270_put_view(&tp->view);
 }
@@ -752,11 +754,9 @@ tty3270_alloc_view(void)
 
        tty_port_init(&tp->port);
        timer_setup(&tp->timer, tty3270_update, 0);
-       tasklet_init(&tp->readlet,
-                    (void (*)(unsigned long)) tty3270_read_tasklet,
+       tasklet_init(&tp->readlet, tty3270_read_tasklet,
                     (unsigned long) tp->read);
-       tasklet_init(&tp->hanglet,
-                    (void (*)(unsigned long)) tty3270_hangup_tasklet,
+       tasklet_init(&tp->hanglet, tty3270_hangup_tasklet,
                     (unsigned long) tp);
        INIT_WORK(&tp->resize_work, tty3270_resize_work);