Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit aab94460 authored by Theodore Ts'o's avatar Theodore Ts'o
Browse files

um: remove IRQF_SAMPLE_RANDOM which is now a no-op



With the changes in the random tree, IRQF_SAMPLE_RANDOM is now a
no-op; interrupt randomness is now collected unconditionally in a very
low-overhead fashion; see commit 775f4b29.  The IRQF_SAMPLE_RANDOM
flag was scheduled to be removed in 2009 on the
feature-removal-schedule, so this patch is preparation for the final
removal of this flag.

Signed-off-by: default avatar"Theodore Ts'o" <tytso@mit.edu>
Cc: Jeff Dike <jdike@addtoit.com>
Cc: Richard Weinberger <richard@nod.at>
parent 71ba8d44
Loading
Loading
Loading
Loading
+6 −7
Original line number Diff line number Diff line
@@ -362,17 +362,17 @@ static irqreturn_t line_write_interrupt(int irq, void *data)
int line_setup_irq(int fd, int input, int output, struct line *line, void *data)
{
	const struct line_driver *driver = line->driver;
	int err = 0, flags = IRQF_SHARED | IRQF_SAMPLE_RANDOM;
	int err = 0;

	if (input)
		err = um_request_irq(driver->read_irq, fd, IRQ_READ,
				       line_interrupt, flags,
				     line_interrupt, IRQF_SHARED,
				     driver->read_irq_name, data);
	if (err)
		return err;
	if (output)
		err = um_request_irq(driver->write_irq, fd, IRQ_WRITE,
					line_write_interrupt, flags,
				     line_write_interrupt, IRQF_SHARED,
				     driver->write_irq_name, data);
	return err;
}
@@ -779,8 +779,7 @@ void register_winch_irq(int fd, int tty_fd, int pid, struct tty_struct *tty,
				   .stack	= stack });

	if (um_request_irq(WINCH_IRQ, fd, IRQ_READ, winch_interrupt,
			   IRQF_SHARED | IRQF_SAMPLE_RANDOM,
			   "winch", winch) < 0) {
			   IRQF_SHARED, "winch", winch) < 0) {
		printk(KERN_ERR "register_winch_irq - failed to register "
		       "IRQ\n");
		goto out_free;
+1 −2
Original line number Diff line number Diff line
@@ -775,8 +775,7 @@ static int __init mconsole_init(void)
	register_reboot_notifier(&reboot_notifier);

	err = um_request_irq(MCONSOLE_IRQ, sock, IRQ_READ, mconsole_interrupt,
			     IRQF_SHARED | IRQF_SAMPLE_RANDOM,
			     "mconsole", (void *)sock);
			     IRQF_SHARED, "mconsole", (void *)sock);
	if (err) {
		printk(KERN_ERR "Failed to get IRQ for management console\n");
		goto out;
+2 −4
Original line number Diff line number Diff line
@@ -100,8 +100,7 @@ static int port_accept(struct port_list *port)
		  .port 	= port });

	if (um_request_irq(TELNETD_IRQ, socket[0], IRQ_READ, pipe_interrupt,
			  IRQF_SHARED | IRQF_SAMPLE_RANDOM,
			  "telnetd", conn)) {
			  IRQF_SHARED, "telnetd", conn)) {
		printk(KERN_ERR "port_accept : failed to get IRQ for "
		       "telnetd\n");
		goto out_free;
@@ -184,8 +183,7 @@ void *port_data(int port_num)
	}

	if (um_request_irq(ACCEPT_IRQ, fd, IRQ_READ, port_interrupt,
			  IRQF_SHARED | IRQF_SAMPLE_RANDOM,
			  "port", port)) {
			  IRQF_SHARED, "port", port)) {
		printk(KERN_ERR "Failed to get IRQ for port %d\n", port_num);
		goto out_close;
	}
+1 −2
Original line number Diff line number Diff line
@@ -131,8 +131,7 @@ static int __init rng_init (void)
	random_fd = err;

	err = um_request_irq(RANDOM_IRQ, random_fd, IRQ_READ, random_interrupt,
			     IRQF_SAMPLE_RANDOM, "random",
			     NULL);
			     0, "random", NULL);
	if (err)
		goto err_out_cleanup_hw;

+1 −2
Original line number Diff line number Diff line
@@ -50,8 +50,7 @@ int xterm_fd(int socket, int *pid_out)
	init_completion(&data->ready);

	err = um_request_irq(XTERM_IRQ, socket, IRQ_READ, xterm_interrupt,
			     IRQF_SHARED | IRQF_SAMPLE_RANDOM,
			     "xterm", data);
			     IRQF_SHARED, "xterm", data);
	if (err) {
		printk(KERN_ERR "xterm_fd : failed to get IRQ for xterm, "
		       "err = %d\n",  err);
Loading