add lock_pages option
This commit is contained in:
parent
73a05e3e42
commit
74ee338c37
2 changed files with 18 additions and 8 deletions
12
l2tpns.c
12
l2tpns.c
|
|
@ -4,7 +4,7 @@
|
|||
// Copyright (c) 2002 FireBrick (Andrews & Arnold Ltd / Watchfront Ltd) - GPL licenced
|
||||
// vim: sw=8 ts=8
|
||||
|
||||
char const *cvs_id_l2tpns = "$Id: l2tpns.c,v 1.13 2004/07/11 07:57:35 bodea Exp $";
|
||||
char const *cvs_id_l2tpns = "$Id: l2tpns.c,v 1.14 2004/07/12 08:21:45 bodea Exp $";
|
||||
|
||||
#include <arpa/inet.h>
|
||||
#include <assert.h>
|
||||
|
|
@ -111,6 +111,7 @@ struct config_descriptt config_values[] = {
|
|||
CONFIG("cleanup_interval", cleanup_interval, INT),
|
||||
CONFIG("multi_read_count", multi_read_count, INT),
|
||||
CONFIG("scheduler_fifo", scheduler_fifo, BOOL),
|
||||
CONFIG("lock_pages", lock_pages, BOOL),
|
||||
CONFIG("icmp_rate", icmp_rate, INT),
|
||||
CONFIG("cluster_address", cluster_address, IP),
|
||||
CONFIG("cluster_interface", cluster_interface, STRING),
|
||||
|
|
@ -2955,6 +2956,15 @@ int main(int argc, char *argv[])
|
|||
signal(SIGQUIT, sigquit_handler);
|
||||
signal(SIGCHLD, sigchild_handler);
|
||||
|
||||
// Prevent us from getting paged out
|
||||
if (config->lock_pages)
|
||||
{
|
||||
if (!mlockall(MCL_CURRENT))
|
||||
log(1, 0, 0, 0, "Locking pages into memory\n");
|
||||
else
|
||||
log(0, 0, 0, 0, "Can't lock pages: %s\n", strerror(errno));
|
||||
}
|
||||
|
||||
alarm(1);
|
||||
|
||||
// Drop privileges here
|
||||
|
|
|
|||
8
l2tpns.h
8
l2tpns.h
|
|
@ -1,5 +1,5 @@
|
|||
// L2TPNS Global Stuff
|
||||
// $Id: l2tpns.h,v 1.11 2004/07/08 16:54:35 bodea Exp $
|
||||
// $Id: l2tpns.h,v 1.12 2004/07/12 08:21:45 bodea Exp $
|
||||
|
||||
#ifndef __L2TPNS_H__
|
||||
#define __L2TPNS_H__
|
||||
|
|
@ -413,9 +413,9 @@ struct configt
|
|||
char old_plugins[64][MAXPLUGINS];
|
||||
|
||||
int next_tbf; // Next HTB id available to use
|
||||
int scheduler_fifo; // If 1, will force scheduler to use SCHED_FIFO.
|
||||
// Don't use this unless you have a dual processor machine!
|
||||
int icmp_rate; // Max number of ICMP unreachable per second to send
|
||||
int scheduler_fifo; // If the system has multiple CPUs, use FIFO scheduling policy for this process.
|
||||
int lock_pages; // Lock pages into memory.
|
||||
int icmp_rate; // Max number of ICMP unreachable per second to send>
|
||||
|
||||
u32 cluster_address; // Multicast address of cluster.
|
||||
// Send to this address to have everyone hear.
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue