OpenAFS Master Repository branch, openafs-stable-1_6_x, updated. openafs-devel-1_5_77-16-gbfd2695

Gerrit Code Review gerrit@openafs.org
Mon, 27 Sep 2010 08:28:06 -0700 (PDT)


The following commit has been merged in the openafs-stable-1_6_x branch:
commit bfd269535f032dce04c0769ac2ca97ca3753fcf9
Author: Marc Dionne <marc.c.dionne@gmail.com>
Date:   Thu Jul 1 11:38:20 2010 -0400

    Linux: normalize error return for emulated syscalls
    
    pagsh and other code expect setpag() and pioctl() to behave like
    a regular syscall or pioctl, that is to return -1 on error, with
    errno set to the specific error code.
    On Linux, the underlying emulation does a straight return of any
    error code it gets from the ioctl, and errors are not properly
    caught by the callers.
    
    As an example, pagsh won't detect an error from setpag such as
    exceeding a keyring quota limit.  With this patch, the user
    will see this:
    
    $ pagsh
    setpag: Disk quota exceeded
    sh-4.1$
    
    The code in proc_afs_syscall is modified to set errno to the error
    code and to set errorcode to -1 in case of error.
    
    proc_afs_sycall is reindented while we're changing code there.
    
    FIXES 126230
    
    Change-Id: I945f2d28eb0ae26c7f42502c90eb2e6e95c29a58
    Reviewed-on: http://gerrit.openafs.org/2770
    Tested-by: BuildBot <buildbot@rampaginggeek.com>
    Reviewed-by: Derrick Brashear <shadow@dementia.org>
    Tested-by: Derrick Brashear <shadow@dementia.org>
    (cherry picked from commit 0bc837f68a72ba1f75d940cc5dd057774d9f36bb)
    Reviewed-on: http://gerrit.openafs.org/2797

 src/sys/glue.c |   34 ++++++++++++++++++++--------------
 1 files changed, 20 insertions(+), 14 deletions(-)

-- 
OpenAFS Master Repository