Browse Source

virtio: console: prevent use-after-free of port name in port unplug

Remove the debugfs path before freeing port->name, to prevent a possible
use-after-free.

Reported-by: Jason Wang <jasowang@redhat.com>
Signed-off-by: Amit Shah <amit.shah@redhat.com>
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Amit Shah 12 years ago
parent
commit
3b868a4073
1 changed files with 1 additions and 2 deletions
  1. 1 2
      drivers/char/virtio_console.c

+ 1 - 2
drivers/char/virtio_console.c

@@ -1591,9 +1591,8 @@ static void unplug_port(struct port *port)
 	device_destroy(pdrvdata.class, port->dev->devt);
 	cdev_del(port->cdev);
 
-	kfree(port->name);
-
 	debugfs_remove(port->debugfs_file);
+	kfree(port->name);
 
 	/*
 	 * Locks around here are not necessary - a port can't be