public inbox for linux-next@vger.kernel.org 
 help / color / mirror / Atom feed
From: Kamalesh Babulal <kamalesh@linux•vnet.ibm.com>
To: David Howells <dhowells@redhat•com>
Cc: sfr@canb•auug.org.au, jmorris@namei•org, tony.luck@intel•com,
	linux-next@vger•kernel.org,
	linux-security-module@vger•kernel.org
Subject: Re: [PATCH] CRED: Fix IA64 COW credentials handling
Date: Tue, 12 Aug 2008 18:10:44 +0530	[thread overview]
Message-ID: <48A184CC.50805@linux.vnet.ibm.com> (raw)
In-Reply-To: <20080812092454.20969.30774.stgit@warthog.procyon.org.uk>

David Howells wrote:
> Fix the IA64 arch's use of COW credentials.
Hi David,

Thanks, the build failure is fixed by the thanks.

Tested-by: Kamalesh Babulal <kamalesh@linux•vnet.ibm.com>

> 
> Signed-off-by: David Howells <dhowells@redhat•com>
> ---
> 
>  arch/ia64/ia32/sys_ia32.c     |    7 +++----
>  arch/ia64/kernel/perfmon.c    |   32 ++++++++++++++++++++------------
>  include/sound/ad1848.h        |    0 
>  sound/isa/ad1848/ad1848_lib.c |    0 
>  4 files changed, 23 insertions(+), 16 deletions(-)
>  delete mode 100644 include/sound/ad1848.h
>  delete mode 100644 sound/isa/ad1848/ad1848_lib.c
> 
> diff --git a/arch/ia64/ia32/sys_ia32.c b/arch/ia64/ia32/sys_ia32.c
> index 465116a..7f0704f 100644
> --- a/arch/ia64/ia32/sys_ia32.c
> +++ b/arch/ia64/ia32/sys_ia32.c
> @@ -2084,25 +2084,24 @@ groups16_from_user(struct group_info *group_info, short __user *grouplist)
>  asmlinkage long
>  sys32_getgroups16 (int gidsetsize, short __user *grouplist)
>  {
> +	const struct cred *cred = current_cred();
>  	int i;
> 
>  	if (gidsetsize < 0)
>  		return -EINVAL;
> 
> -	get_group_info(current->group_info);
> -	i = current->group_info->ngroups;
> +	i = cred->group_info->ngroups;
>  	if (gidsetsize) {
>  		if (i > gidsetsize) {
>  			i = -EINVAL;
>  			goto out;
>  		}
> -		if (groups16_to_user(grouplist, current->group_info)) {
> +		if (groups16_to_user(grouplist, cred->group_info)) {
>  			i = -EFAULT;
>  			goto out;
>  		}
>  	}
>  out:
> -	put_group_info(current->group_info);
>  	return i;
>  }
> 
> diff --git a/arch/ia64/kernel/perfmon.c b/arch/ia64/kernel/perfmon.c
> index ffe6de0..a1aead7 100644
> --- a/arch/ia64/kernel/perfmon.c
> +++ b/arch/ia64/kernel/perfmon.c
> @@ -2403,25 +2403,33 @@ error_kmem:
>  static int
>  pfm_bad_permissions(struct task_struct *task)
>  {
> +	const struct cred *tcred;
>  	uid_t uid = current_uid();
>  	gid_t gid = current_gid();
> +	int ret;
> +
> +	rcu_read_lock();
> +	tcred = __task_cred(task);
> 
>  	/* inspired by ptrace_attach() */
>  	DPRINT(("cur: uid=%d gid=%d task: euid=%d suid=%d uid=%d egid=%d sgid=%d\n",
>  		uid,
>  		gid,
> -		task->euid,
> -		task->suid,
> -		task->uid,
> -		task->egid,
> -		task->sgid));
> -
> -	return (uid != task->euid)
> -	    || (uid != task->suid)
> -	    || (uid != task->uid)
> -	    || (gid != task->egid)
> -	    || (gid != task->sgid)
> -	    || (gid != task->gid)) && !capable(CAP_SYS_PTRACE);
> +		tcred->euid,
> +		tcred->suid,
> +		tcred->uid,
> +		tcred->egid,
> +		tcred->sgid));
> +
> +	ret = ((uid != tcred->euid)
> +	       || (uid != tcred->suid)
> +	       || (uid != tcred->uid)
> +	       || (gid != tcred->egid)
> +	       || (gid != tcred->sgid)
> +	       || (gid != tcred->gid)) && !capable(CAP_SYS_PTRACE);
> +
> +	rcu_read_unlock();
> +	return ret;
>  }
> 
>  static int
> diff --git a/include/sound/ad1848.h b/include/sound/ad1848.h
> deleted file mode 100644
> index e69de29..0000000
> diff --git a/sound/isa/ad1848/ad1848_lib.c b/sound/isa/ad1848/ad1848_lib.c
> deleted file mode 100644
> index e69de29..0000000
> 


-- 
Thanks & Regards,
Kamalesh Babulal,
Linux Technology Center,
IBM, ISTL.

  reply	other threads:[~2008-08-12 12:41 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-08-12  9:24 [PATCH] CRED: Fix IA64 COW credentials handling David Howells
2008-08-12 12:40 ` Kamalesh Babulal [this message]
2008-08-12 22:48 ` James Morris
2008-08-12 23:43   ` David Howells
2008-08-12 22:52 ` James Morris

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=48A184CC.50805@linux.vnet.ibm.com \
    --to=kamalesh@linux$(echo .)vnet.ibm.com \
    --cc=dhowells@redhat$(echo .)com \
    --cc=jmorris@namei$(echo .)org \
    --cc=linux-next@vger$(echo .)kernel.org \
    --cc=linux-security-module@vger$(echo .)kernel.org \
    --cc=sfr@canb$(echo .)auug.org.au \
    --cc=tony.luck@intel$(echo .)com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox