projects
/
powerpc.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
[IA64] move SAL_CACHE_FLUSH check later in boot
[powerpc.git]
/
fs
/
proc
/
inode.c
diff --git
a/fs/proc/inode.c
b/fs/proc/inode.c
index
075d3e9
..
49dfb2a
100644
(file)
--- a/
fs/proc/inode.c
+++ b/
fs/proc/inode.c
@@
-58,14
+58,11
@@
static void de_put(struct proc_dir_entry *de)
static void proc_delete_inode(struct inode *inode)
{
struct proc_dir_entry *de;
static void proc_delete_inode(struct inode *inode)
{
struct proc_dir_entry *de;
- struct task_struct *tsk;
truncate_inode_pages(&inode->i_data, 0);
truncate_inode_pages(&inode->i_data, 0);
- /* Let go of any associated process */
- tsk = PROC_I(inode)->task;
- if (tsk)
- put_task_struct(tsk);
+ /* Stop tracking associated processes */
+ put_pid(PROC_I(inode)->pid);
/* Let go of any associated proc directory entry */
de = PROC_I(inode)->pde;
/* Let go of any associated proc directory entry */
de = PROC_I(inode)->pde;
@@
-94,8
+91,8
@@
static struct inode *proc_alloc_inode(struct super_block *sb)
ei = (struct proc_inode *)kmem_cache_alloc(proc_inode_cachep, SLAB_KERNEL);
if (!ei)
return NULL;
ei = (struct proc_inode *)kmem_cache_alloc(proc_inode_cachep, SLAB_KERNEL);
if (!ei)
return NULL;
- ei->
task
= NULL;
- ei->
type
= 0;
+ ei->
pid
= NULL;
+ ei->
fd
= 0;
ei->op.proc_get_link = NULL;
ei->pde = NULL;
inode = &ei->vfs_inode;
ei->op.proc_get_link = NULL;
ei->pde = NULL;
inode = &ei->vfs_inode;
@@
-121,7
+118,8
@@
int __init proc_init_inodecache(void)
{
proc_inode_cachep = kmem_cache_create("proc_inode_cache",
sizeof(struct proc_inode),
{
proc_inode_cachep = kmem_cache_create("proc_inode_cache",
sizeof(struct proc_inode),
- 0, SLAB_RECLAIM_ACCOUNT,
+ 0, (SLAB_RECLAIM_ACCOUNT|
+ SLAB_MEM_SPREAD),
init_once, NULL);
if (proc_inode_cachep == NULL)
return -ENOMEM;
init_once, NULL);
if (proc_inode_cachep == NULL)
return -ENOMEM;
@@
-194,7
+192,7
@@
int proc_fill_super(struct super_block *s, void *data, int silent)
{
struct inode * root_inode;
{
struct inode * root_inode;
- s->s_flags |= MS_NODIRATIME;
+ s->s_flags |= MS_NODIRATIME
| MS_NOSUID | MS_NOEXEC
;
s->s_blocksize = 1024;
s->s_blocksize_bits = 10;
s->s_magic = PROC_SUPER_MAGIC;
s->s_blocksize = 1024;
s->s_blocksize_bits = 10;
s->s_magic = PROC_SUPER_MAGIC;