Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
L
linux-davinci
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Redmine
Redmine
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Operations
Operations
Metrics
Environments
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
linux
linux-davinci
Commits
6e62775e
Commit
6e62775e
authored
Oct 04, 2008
by
Alexey Dobriyan
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
proc: move /proc/execdomains to kernel/exec_domain.c
Signed-off-by:
Alexey Dobriyan
<
adobriyan@gmail.com
>
parent
cf9887f1
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
27 additions
and
15 deletions
+27
-15
fs/proc/proc_misc.c
fs/proc/proc_misc.c
+0
-9
kernel/exec_domain.c
kernel/exec_domain.c
+27
-6
No files found.
fs/proc/proc_misc.c
View file @
6e62775e
...
...
@@ -63,7 +63,6 @@
* have a way to deal with that gracefully. Right now I used straightforward
* wrappers, but this needs further analysis wrt potential overflows.
*/
extern
int
get_exec_domain_list
(
char
*
);
static
int
proc_calc_metrics
(
char
*
page
,
char
**
start
,
off_t
off
,
int
count
,
int
*
eof
,
int
len
)
...
...
@@ -486,13 +485,6 @@ static const struct file_operations proc_locks_operations = {
};
#endif
/* CONFIG_FILE_LOCKING */
static
int
execdomains_read_proc
(
char
*
page
,
char
**
start
,
off_t
off
,
int
count
,
int
*
eof
,
void
*
data
)
{
int
len
=
get_exec_domain_list
(
page
);
return
proc_calc_metrics
(
page
,
start
,
off
,
count
,
eof
,
len
);
}
#ifdef CONFIG_PROC_PAGE_MONITOR
#define KPMSIZE sizeof(u64)
#define KPMMASK (KPMSIZE - 1)
...
...
@@ -632,7 +624,6 @@ void __init proc_misc_init(void)
char
*
name
;
int
(
*
read_proc
)(
char
*
,
char
**
,
off_t
,
int
,
int
*
,
void
*
);
}
*
p
,
simple_ones
[]
=
{
{
"execdomains"
,
execdomains_read_proc
},
{
NULL
,}
};
for
(
p
=
simple_ones
;
p
->
name
;
p
++
)
...
...
kernel/exec_domain.c
View file @
6e62775e
...
...
@@ -12,7 +12,9 @@
#include <linux/kmod.h>
#include <linux/module.h>
#include <linux/personality.h>
#include <linux/proc_fs.h>
#include <linux/sched.h>
#include <linux/seq_file.h>
#include <linux/syscalls.h>
#include <linux/sysctl.h>
#include <linux/types.h>
...
...
@@ -173,20 +175,39 @@ __set_personality(u_long personality)
return
0
;
}
int
get_exec_domain_list
(
char
*
page
)
#ifdef CONFIG_PROC_FS
static
int
execdomains_proc_show
(
struct
seq_file
*
m
,
void
*
v
)
{
struct
exec_domain
*
ep
;
int
len
=
0
;
read_lock
(
&
exec_domains_lock
);
for
(
ep
=
exec_domains
;
ep
&&
len
<
PAGE_SIZE
-
80
;
ep
=
ep
->
next
)
len
+=
sprintf
(
page
+
len
,
"%d-%d
\t
%-16s
\t
[%s]
\n
"
,
for
(
ep
=
exec_domains
;
ep
;
ep
=
ep
->
next
)
seq_printf
(
m
,
"%d-%d
\t
%-16s
\t
[%s]
\n
"
,
ep
->
pers_low
,
ep
->
pers_high
,
ep
->
name
,
module_name
(
ep
->
module
));
read_unlock
(
&
exec_domains_lock
);
return
(
len
);
return
0
;
}
static
int
execdomains_proc_open
(
struct
inode
*
inode
,
struct
file
*
file
)
{
return
single_open
(
file
,
execdomains_proc_show
,
NULL
);
}
static
const
struct
file_operations
execdomains_proc_fops
=
{
.
open
=
execdomains_proc_open
,
.
read
=
seq_read
,
.
llseek
=
seq_lseek
,
.
release
=
single_release
,
};
static
int
__init
proc_execdomains_init
(
void
)
{
proc_create
(
"execdomains"
,
0
,
NULL
,
&
execdomains_proc_fops
);
return
0
;
}
module_init
(
proc_execdomains_init
);
#endif
asmlinkage
long
sys_personality
(
u_long
personality
)
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment