lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [day] [month] [year] [list]
Date:	Wed, 11 Oct 2006 20:50:41 +0200
From:	Jiri Slaby <jirislaby@...il.com>
To:	Linux kernel mailing list <linux-kernel@...r.kernel.org>
CC:	Alan Cox <alan@...rguk.ukuu.org.uk>
Subject: tty_driver->ttys association

Hi,

I found this construction in the kernel:
static struct tty_driver *my_ttydriver;
static struct tty_struct *my_tty[PORTS + 1];
static struct termios *my_termios[PORTS + 1];
static struct termios *my_termios_locked[PORTS + 1];

...(alloc+set_op+...)
my_ttydriver->flags = TTY_DRIVER_REAL_RAW|TTY_DRIVER_DYNAMIC_DEV;
my_ttydriver->ttys = my_tty;
my_ttydriver->termios = my_termios;
my_ttydriver->termios_locked = my_termios_locked;
tty_register_driver(my_ttydriver);

The association is completely useless due to
if (p) {
     driver->ttys = (struct tty_struct **)p;
     driver->termios = (struct termios **)(p + driver->num);
     driver->termios_locked = (struct termios **)(p + driver->num * 2);
} else {
     driver->ttys = NULL;
     driver->termios = NULL;
     driver->termios_locked = NULL;
}

in tty_register_driver, isn't it? Can we save some memory?

thanks,
-- 
http://www.fi.muni.cz/~xslaby/            Jiri Slaby
faculty of informatics, masaryk university, brno, cz
e-mail: jirislaby gmail com, gpg pubkey fingerprint:
B674 9967 0407 CE62 ACC8  22A0 32CC 55C3 39D4 7A7E
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ