Project

General

Profile

Bug #17591

Samba failures: smbtorture, dbench.sh, fsstress.sh

Added by John Spray about 6 years ago. Updated about 6 years ago.

Status:
Resolved
Priority:
Urgent
Assignee:
Category:
-
Target version:
-
% Done:

0%

Source:
other
Tags:
Backport:
Regression:
No
Severity:
3 - minor
Reviewed:
Affected Versions:
ceph-qa-suite:
Component(FS):
Labels (FS):
Pull request ID:
Crash signature (v1):
Crash signature (v2):

Description

Samba tests were some of the most stable, they are suddenly failing on master.

http://pulpito.ceph.com/teuthology-2016-10-08_17:55:01-samba-master---basic-smithi/462740/

2016-10-16T15:38:00.015 INFO:teuthology.orchestra.run.smithi057.stderr:Testing \lock6.txt
2016-10-16T15:38:00.017 INFO:teuthology.orchestra.run.smithi057.stderr:CHANGE_LOCKTYPE gave ERRDOS:ERRnoatomiclocks
2016-10-16T15:38:00.017 INFO:teuthology.orchestra.run.smithi057.stderr:CANCEL_LOCK gave NT_STATUS_INVALID_HANDLE
2016-10-16T15:38:00.021 INFO:teuthology.orchestra.run.smithi057.stdout:time: 2016-10-16 15:38:00.020129
2016-10-16T15:38:00.022 INFO:teuthology.orchestra.run.smithi057.stdout:success: LOCK6
2016-10-16T15:38:00.022 INFO:teuthology.orchestra.run.smithi057.stdout:test: LOCK7
2016-10-16T15:38:00.022 INFO:teuthology.orchestra.run.smithi057.stdout:time: 2016-10-16 15:38:00.020159
2016-10-16T15:38:00.068 INFO:teuthology.orchestra.run.smithi057.stdout:time: 2016-10-16 15:38:00.066500
2016-10-16T15:38:00.068 INFO:teuthology.orchestra.run.smithi057.stdout:failure: LOCK7 [
2016-10-16T15:38:00.068 INFO:teuthology.orchestra.run.smithi057.stdout:../source4/torture/basic/locking.c:690: Expression `smbcli_write(cli1->tree, fnum1, 0, buf, 0, sizeof(buf)) == sizeof(buf)' failed: Failed to create file

http://pulpito.ceph.com/teuthology-2016-10-08_17:55:01-samba-master---basic-smithi/462748/

2016-10-16T15:39:10.936 DEBUG:teuthology.orchestra.remote:smithi030:/home/ubuntu/cephtest/workunits.list.client.1 is 3KB
2016-10-16T15:39:10.946 INFO:tasks.workunit:Running workunits matching suites/fsstress.sh on client.1...
2016-10-16T15:39:10.946 INFO:tasks.workunit:Running workunit suites/fsstress.sh...
2016-10-16T15:39:10.946 INFO:teuthology.orchestra.run.smithi030:Running (workunit test suites/fsstress.sh): 'mkdir -p -- /home/ubuntu/cephtest/mnt.1/client.1/tmp && cd -- /home/ubuntu/cephtest/mnt.1/client.1/tmp && CEPH_CLI_TEST_DUP_COMMAND=1 CEPH_REF=a4ce1f56c1e22d4d3c190403339d5082d66fc89c TESTDIR="/home/ubuntu/cephtest" CEPH_ARGS="--cluster ceph" CEPH_ID="1" PATH=$PATH:/usr/sbin adjust-ulimits ceph-coverage /home/ubuntu/cephtest/archive/coverage timeout 3h /home/ubuntu/cephtest/workunit.client.1/suites/fsstress.sh'
2016-10-16T15:39:11.818 INFO:tasks.workunit.client.1.smithi030.stdout:cc  -DNO_XFS -I/home/ubuntu/cephtest/fsstress/ltp-full-20091231/testcases/kernel/fs/fsstress -D_LARGEFILE64_SOURCE -D_GNU_SOURCE -I../../../../include -I../../../../include -L../../../../lib  fsstress.c   -o fsstress
2016-10-16T15:39:12.011 INFO:tasks.workunit.client.1.smithi030.stdout:Starting fsstress /home/ubuntu/cephtest/fsstress/ltp-full-20091231/testcases/kernel/fs/fsstress/fsstress -d fsstress-smithi03017681 -l 1 -n 1000 -p 10 -v
2016-10-16T15:39:12.013 INFO:tasks.workunit.client.1.smithi030.stderr:mkdir: cannot create directory ‘fsstresssmithi030-17681’: Permission denied
2016-10-16T15:39:12.014 INFO:tasks.workunit.client.1.smithi030.stderr:fsstress-smithi03017681: No such file or directory

http://pulpito.ceph.com/teuthology-2016-10-08_17:55:01-samba-master---basic-smithi/462744/

2016-10-16T15:39:45.778 INFO:tasks.workunit.client.1.smithi042.stdout:dbench version 4.00 - Copyright Andrew Tridgell 1999-2004
2016-10-16T15:39:45.778 INFO:tasks.workunit.client.1.smithi042.stdout:
2016-10-16T15:39:45.778 INFO:tasks.workunit.client.1.smithi042.stdout:Running for 600 seconds with load '/usr/share/dbench/client.txt' and minimum warmup 120 secs
2016-10-16T15:39:45.795 INFO:tasks.workunit.client.1.smithi042.stdout:0 of 1 processes prepared for launch   0 sec
2016-10-16T15:39:45.895 INFO:tasks.workunit.client.1.smithi042.stdout:1 of 1 processes prepared for launch   0 sec
2016-10-16T15:39:45.895 INFO:tasks.workunit.client.1.smithi042.stdout:releasing clients
2016-10-16T15:39:45.915 INFO:tasks.workunit.client.1.smithi042.stdout:[3] open ./clients/client0 failed for handle 16385 (No such file or directory)
2016-10-16T15:39:45.915 INFO:tasks.workunit.client.1.smithi042.stdout:(4) ERROR: handle 16385 was not found

I do vaguely wonder if any of these might be related to the same ll_seek permissions issue that hurt the java tests (should now be fixed in master).

History

#1 Updated by John Spray about 6 years ago

Failures are on a4ce1f56c1e22d4d3c190403339d5082d66fc89c, last passes were on cfc0a16e048a5868b137e2b7b89c7ae105218bc9, commits were:

commit 0aab9e27370532e1fe578785401a9617bd52f423
Merge: baa2202 22cf74f
Author: John Spray <jspray@redhat.com>
Date:   Tue Oct 4 14:12:41 2016 +0100

    Merge pull request #11254 from xiexingguo/xxg-wip-fs-0929

    mds/MDCache: kill a comipler warning

    Reviewed-by: Greg Farnum <gfarnum@redhat.com>

commit 110238608a32ba4f47b1dcc9dafa8ee67d4cd066
Merge: 2efe051 42b1572
Author: Gregory Farnum <greg@gregs42.com>
Date:   Mon Oct 3 22:30:55 2016 -0700

    Merge pull request #11218 from ceph/wip-getuid

    Client: pass "UserPerm" struct everywhere for security checks

    Reviewed-by: Jeff Layton <jlayton@redhat.com>

commit 42b15729f63010b47bbaaa975e15487ab3c5db28
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Tue Sep 27 23:45:56 2016 -0700

    client: in UserPerm, correctly use delete[] and don't leak gids on copy

    gids is an array. We also need to clean it up when deep_copy()ing, which
    requires initializing our member fields in the copy-constructor.

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit 22cf74f2b1753f535eb364c95eed5721fcc2636f
Author: xie xingguo <xie.xingguo@zte.com.cn>
Date:   Thu Sep 29 11:14:44 2016 +0800

    mds/MDCache: kill a comipler warning

    /home/jenkins-build/build/workspace/ceph-pull-requests/src/mds/MDCache.cc: In member function ‘void MDCache::request_cleanup(MDRequestRef&)’:
    /home/jenkins-build/build/workspace/ceph-pull-requests/src/mds/MDCache.cc:9090:8: warning: unused variable ‘was_replay’ [-Wunused-variable]
       bool was_replay = mdr->client_request && mdr->client_request->is_replay();

    Signed-off-by: xie xingguo <xie.xingguo@zte.com.cn>

commit a67f61f029e35ed831b8e6dba39394856c87a6e0
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Mon Sep 26 16:45:43 2016 -0700

    mds: sort GID lists in MDSAuthCaps

    Fixes: http://tracker.ceph.com/issues/17368

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit 7d2a8b71528760c0a3c357d09c9eeea682b43e11
Merge: 28981f4 31b9ff0
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Fri Sep 23 18:12:33 2016 -0700

    Merge remote-tracking branch 'origin/master' into wip-getuid

    Conflicts:
        src/client/Client.cc
        src/client/Client.h
        src/client/Makefile.am
        src/client/fuse_ll.cc

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit 28981f4cae91918a58078190a7267b7324cb6729
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Wed Sep 21 16:02:08 2016 -0700

    client: use uid_t/gid_t in _getgrouplist

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit 99bea1ec4c6735ecd857654ddcc48f9d9976b933
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Wed Sep 21 14:42:16 2016 -0700

    mds: do not make use of GIDs which aren't included by the Client in its request

    We were previously iterating through all the GIDs allowed by a particular
    MDSAuthCap::match, but there are plenty of situations where a GID might
    be *allowed* but not actually assigned. Take the set intersection of what's
    allowed and what's specified instead.

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit fbda12b1eefeebae1e1c64b01bc8f222c0d4c13d
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Wed Sep 14 16:19:46 2016 -0700

    mds: pass full gid list to MDSAuthCap checks, when present

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit 24279ef8aaf7ea898df0514891fdb71d78043e6c
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Mon Sep 12 15:42:26 2016 -0700

    client: do a shallow copy for MetaRequest::perms

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit 550a59dd3c67efd36ebd16cdadc966926c74d95d
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Wed Sep 7 19:37:48 2016 -0700

    client: include UserPerm contents in may_* debug output

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit a8f214f7ebc3834e22aab3ce61ac05673471250a
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Thu Sep 1 16:55:00 2016 -0700

    Client: always pass a Fh to _do_filelock

    We weren't passing in the Fh as a signal we were releasing locks (ie, don't
    remove the lock ranges in question rather than adding htem to our accounting).
    But that was a little weird and doesn't work when we're pulling perms out of
    the Fh.

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit 5a1b9f84c06771080fa883747e92328fa7803f41
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Thu Sep 1 16:27:38 2016 -0700

    client: add a static pick_my_perms taking a CephContext

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit 47fc83f7fa4cb365e12592e4c59c0d16146891a2
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Fri Aug 5 18:43:08 2016 -0700

    fuse: optionally (off by default) set the group lists on calls

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit 36a181668b365f3c3159b0bf0bf07ba88d18af22
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Fri Aug 5 18:39:57 2016 -0700

    client: give UserPerm a move constructor

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit d291e664aeb987a0c2f236205a521d7f282c33d1
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Fri Aug 5 17:20:32 2016 -0700

    MClientRequest: include the full gid list of the caller

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit 07d6fc0309a9f653423360c6d8400144d00affdb
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Wed Aug 3 15:51:01 2016 -0700

    client: remove the now-unused UserGroups entirely

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit 94c35ab3707cff779e04a28fbffba2a8c166cd88
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Wed Aug 3 15:48:48 2016 -0700

    client: stop using UserGroups for may_setattr() now that UserPerm does it all

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit 07ed90eca8c79907eaa8974c42b9d6673ff7fea5
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Wed Aug 3 15:48:01 2016 -0700

    client: Actually handle gid lists in UserPerm

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit ead687b924826de1cd18740de928e943b1d74e0f
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Wed Aug 3 15:27:34 2016 -0700

    client: stop using UserGroups for posix ACL checks

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit c04c52036f7757b15ea89f0a6bfe6f24f34cd41d
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Wed Aug 3 15:05:03 2016 -0700

    client: push UserGroups into _posix_acl_permission(), instead of passing it

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit 8295afa3f0dfefa399b263fd4b2acbbf1c03e5d3
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Wed Aug 3 14:57:02 2016 -0700

    client: switch Inode::check_mode() to UserPerm

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit 30c67879ea74ab9ab9f0e9cd1971510a04716559
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Wed Aug 3 14:27:02 2016 -0700

    client: switch inode_permission() to UserPerm-based (over UserGroups)

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit d24966f4f4f761584cda470baf6660a0e9b598b2
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Wed Aug 3 14:54:50 2016 -0700

    UserPerm: add trivial implementation of UserGroup interface equivalents

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit 876c58e9f6e3dcb409daadecbc09a50a9033c7d8
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Wed Aug 3 14:17:26 2016 -0700

    client: remove get_(uid|gid) functions

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit a81d962a0ad908ff98626ffb9607c38053a5ae93
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Wed Aug 3 14:16:10 2016 -0700

    client: remove now-unused uid-based may_* functions

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit 06d177bccfc41a96253b3f65f7974bf3bd5a2779
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Wed Aug 3 13:44:00 2016 -0700

    client: pass UserPerm to mkdirs, rmdir, symlink, mknod

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit d519f82e89de2aafb0cd3f11ab1c939f9adbf3ec
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Wed Aug 3 13:12:44 2016 -0700

    client: remove now-unused owner_(uid|gid) from dir_result_t

commit fa76047910a9e500df63bb6f01c48a7d58f12858
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Wed Aug 3 13:06:05 2016 -0700

    client: replace Inode's "best" logic with a UserPerm over gid/uid pair

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit a13b5b67dc3a05ca113bbead80315c359e41a46c
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Wed Aug 3 13:04:17 2016 -0700

    client: include UserPerm.h in MetaRequest.h

commit 0529a1d42355b035584b33d48c60f92c898a1969
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Wed Aug 3 13:03:49 2016 -0700

    client: move UserPerm into its own header file

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit a1d52fadbb6c70caa6ff0187486b4de2a3af8d55
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Wed Aug 3 00:35:57 2016 -0700

    client: add a UserPerm to MetaRequest

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit 2c8403a7c02e8515c6aace8aee3aad3362a38652
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Wed Aug 3 00:24:43 2016 -0700

    client: remove uid-based _create()

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit 4183205e8f2c23a585eafa3b3a83a6ffbbf4a8e4
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Tue Aug 2 23:37:21 2016 -0700

    client: remove uid-based _geattr() functions

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit d7740fca42e2f20cbc61230b4a19708313bb2ccf
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Tue Aug 2 23:34:58 2016 -0700

    client: call _getattr() with UserPerm in posix checkers

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit c8cd75f499baa2bdf3dbb876e28edab7e16503d9
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Tue Aug 2 23:29:47 2016 -0700

    client: switch _posix_acl_create() to UserPerm

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit d3cad9bdc26c38cbd2ab7af19e7dc0c57fe1954d
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Tue Aug 2 23:17:41 2016 -0700

    client: use Fh::actor_perms for _read() and _write()

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit 78d83d8e757de6363906a73376ed373f894ec3ab
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Tue Aug 2 22:53:05 2016 -0700

    client: remove uid-based path_walk()

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit 540c9a8d9c1d842d125b4c076eb68b6c8bee7b29
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Tue Aug 2 22:49:11 2016 -0700

    client: pass UserPerm to get_caps_issued()

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit 98195878b12e85bcd338b424e8805ad3e89ca1f2
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Tue Aug 2 22:44:17 2016 -0700

    client: pass UserPerm to describe_layout()

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit e9156ad790bed24b8a49cefc140a096e33c43259
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Tue Aug 2 22:37:37 2016 -0700

    client: pass UserPerm to ll_walk()

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit 5c6748d6cfa03e4373bb39ddb8c047fd21ed2c87
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Tue Aug 2 22:32:56 2016 -0700

    client: pass UserPerm to all open() variants

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit a44094721bd83edbbf8fa22ecc93c8c958e82f67
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Tue Aug 2 22:14:14 2016 -0700

    client: pass UserPerm to readlink()

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit db3ec7343ebfdd3268461fd93faf216313afa25a
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Mon Aug 1 20:16:27 2016 -0700

    client: use UserPerm for _posix_acl_chmod

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit 3caa4d233633fb7a67747f2c79c4a0ab89112294
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Mon Aug 1 19:54:42 2016 -0700

    client: pass UserPerm to get_quota_root() and quota helpers

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit 3aeca21f90950196cf959e3e79de6cd6ac630b4a
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Mon Aug 1 19:55:36 2016 -0700

    client: use Fh::actor_perm for _write()

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit 8e1cbfc68ca4da7f9ed81a8f93d829bcd02ec83e
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Mon Aug 1 19:17:59 2016 -0700

    client: fill in _interrupt_filelock() with MetaRequest's uid/gid

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit 4cc7c40b832738589dac39c53747282ee7f4e4c8
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Mon Aug 1 19:15:51 2016 -0700

    client: store "actor" UserPerm in Fh, use for requesting file locks and things

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit b05e06ecc4dca2f7a38a8d18108b4c85c24fe241
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Mon Aug 1 19:08:07 2016 -0700

    client: fill in cap renewals with the "best" uid/gid perms

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit 17d1f7e8cb1ed546a58e9a2f5de0d39ea14df1ad
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Mon Aug 1 18:49:08 2016 -0700

    client: track which request uid/gid granted a cap

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit 898154fd84b417f15dcedd889973554b1bcee3c9
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Mon Aug 1 17:49:13 2016 -0700

    client: pass UserPerm to lookup_name()

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit 4d37088acb58eeebaa89da1b0a484bcd137f870e
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Mon Aug 1 11:12:06 2016 -0700

    client: pass UserPerm to lookup_parent()

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit 193fb0af4ac5844176e28df9e2561141f1e15417
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Fri Jul 29 19:02:56 2016 -0700

    client: pass UserPerm to lookup_ino()

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit 95df48b459ac2fd45a2fe6390065833ec65a18be
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Fri Jul 29 18:59:13 2016 -0700

    client: pass UserPerm to lookup_hash()

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit 56bd07bdc21a0a734cdd5e5553b26bf68046eba4
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Fri Jul 29 18:52:13 2016 -0700

    client: store UserPerms in dir_result_t and use on MDS requests

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit dfbac033ddd8729ea50781c333ff74cf57dfab72
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Fri Jul 29 18:05:33 2016 -0700

    client: pass UserPerm to statfs() variants

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit ba678199de535dbf9555922d38952d5043db1185
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Fri Jul 29 17:59:28 2016 -0700

    client: pass UserPerm to chdir() and getcwd()

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit 0a2c887204959c66982eba556c511910489e4916
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Fri Jul 29 17:11:03 2016 -0700

    client: remove uid/gid-based make_request, push up logic

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit 885f848eb20f711e3329405129b0bb1c95c03acd
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Fri Jul 29 16:37:43 2016 -0700

    client: remove client reference from RequestUserGroups

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit 7767a4e247d0713e9d369682183830b67b46452c
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Fri Jul 29 16:18:35 2016 -0700

    client: remove spurious RequestUserGroups from xattr_permission

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit e2b766bf72e7b7deff35746da1c665151aea5a67
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Fri Jul 29 16:05:01 2016 -0700

    client: switch xattr_permission() implementation to UserPerm

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit e482a509b781f898072801ad1790bd9ea4fe2694
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Fri Jul 29 15:47:32 2016 -0700

    client: switch _create() implementation to UserPerm

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit 78e20286897ba79cc429d77932e0b027e79b3160
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Fri Jul 29 15:44:09 2016 -0700

    client: switch _open() implementation to UserPerm

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit 71878e3ea21b2ef2195babfa8d0fb2d731dce4a0
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Fri Jul 29 15:42:50 2016 -0700

    client: switch _getattr() implementation to UserPerm

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit f7c5706575fd0c7b582748be7bd12a7f64de8fad
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Fri Jul 29 15:30:10 2016 -0700

    client: switch path_walk() implementation to UserPerm

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit 18f4b1640dcaa6935f50c8475404de0a044d0f8b
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Fri Jul 29 15:27:19 2016 -0700

    client: switch _lookup() implementation to UserPerm

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit 4b2771b9c1645bd541853b175d7d00d0cbf89556
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Fri Jul 29 15:21:55 2016 -0700

    client: switch may_*() function implementations to UserPerm

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit 16b3fce662035d636c457f8e484174cbd7a0fcdd
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Thu Jul 28 16:26:06 2016 -0700

    client: switch make_request implementation and verify_reply_trace to UserPerm

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit 6a7a74391fe2375042069927e220fc5754c934f6
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Fri Jul 29 14:16:02 2016 -0700

    client: switch _do_lookup() to UserPerm

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit 5c0627528aa9e2b2c1b961c90f64ef86e85e1d7f
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Fri Jul 29 14:08:52 2016 -0700

    client: add a UserPerm param to mount

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit 73ad8b400328585889fe5095afe944672be1e21f
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Thu Jul 28 16:13:09 2016 -0700

    client: remove unused ll_listxattr_chunks declaration

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit 7a5cdaa1e369c23651ed16b81115b74dd4bd5eb5
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Thu Jul 28 11:51:05 2016 -0700

    client: switch ll_open and ll_create to be UserPerm-based

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit 94bac72f44b700cc612a368f351c24cd52ce3362
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Thu Jul 28 11:42:43 2016 -0700

    client: generate UserPerm _open and _create variants

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit be9e43e2da41e91ffd8577dfd0b890cdb361a08e
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Wed Jul 27 18:17:54 2016 -0700

    client: always pass a UserPerm to seek variants

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit 882468abf2402fe4d8022b3af294fca0b9dba7f2
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Wed Jul 27 17:13:03 2016 -0700

    client: always pass a UserPerm to stat variants

    Also remove the lstatlite() declaration, since it's not defined.

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit 713065716829e49e6afdd3bb7cc462087f5e1b83
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Wed Jul 27 17:06:48 2016 -0700

    client: remove non-UserPerm _setattr implementation

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit 9aae93adf6bdc591118261b3520d84aa79254de7
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Wed Jul 27 16:45:46 2016 -0700

    client: always pass a UserPerm to truncate variants

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit acec3d3ee87dad7fac87133d6568a7064132fcbb
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Wed Jul 27 16:07:30 2016 -0700

    client: always pass a UserPerm to utime variants

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit f648baf96da834a0a7ca05af2cfa10a15c37df72
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Wed Jul 27 16:05:01 2016 -0700

    client: always pass a UserPerm to chown variants

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit ad1bd5749490a306c30abbad9b1b4ca62c59ea80
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Wed Jul 27 15:41:42 2016 -0700

    client: always pass a UserPerm to chmod variants

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit e5da1d0152527b34c104b699c208d6de6c9ae065
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Wed Jul 27 15:34:43 2016 -0700

    client: use get_gid()/get_uid() instead of pick_my_perms() directly

    By the time we're done we don't want to be setting any permissions in the
    Client code directly, and this open-coding will make it more obvious if
    we miss something (when removing the get_uid() and get_gid() functions).

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit d9a7f156ce015f01f3af1d64ba83613e8ceae21c
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Wed Jul 27 15:26:07 2016 -0700

    client: always pass a UserPerm to public setattr variants

    We also recast our private _setattr() stuff to be implemented in terms of
    UserPerm instead of uid/gid, and translate the other direction.

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit d1a77ee653491b4f4252baae0f492aa1d05b0afb
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Wed Jul 27 15:08:36 2016 -0700

    client: always pass a UserPerm to removexattr variants

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit 201c56039c155dafbfbb72d3d755fa9ddec0236a
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Wed Jul 27 15:02:45 2016 -0700

    client: always pass a UserPerm to setxattr variants

    And also Client::_do_setattr()

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit 2312d9a001806c6f1fc1e0819d2681c7c859347c
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Wed Jul 27 14:43:05 2016 -0700

    client: always pass a UserPerm to listxattr variants

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit 16cc0e6814aad28ebcb8a728485ddad115bab46e
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Wed Jul 27 14:31:56 2016 -0700

    client: always pass a UserPerm to getxattr variants

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit 78f7b418abd257b370ff4435ea17292603a47af1
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Wed Jul 27 14:17:53 2016 -0700

    client: always pass UserPerm to rmsnap()

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit 9a06306c34926133c66b1c175697816d5a4ed98c
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Tue Jul 26 19:18:31 2016 -0700

    client: always pass a UserPerm to the ll_* functions

    And also _mknod, _symlink, _rmdir.

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit c0061cfdf7d99dd95ba728ee7694871a8106dd1e
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Tue Jul 26 18:50:18 2016 -0700

    Client: add UserPerm translation functions for handling [x]attr stuff

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit aaf6915484a2e0b6ee514b7c2ab53bccab407f56
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Tue Jul 26 18:24:05 2016 -0700

    client: always pass a UserPerm to ll_lookup

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit affddbca453748445b76eb59640e339fc647a674
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Mon Jul 11 17:31:17 2016 -0700

    client: always pass a UserPerm to mkdir and mksnap functions

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit 7f03b86e168872cc2f7b7be1af08efc521d877b9
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Mon Jul 11 17:10:21 2016 -0700

    client: always pass a UserPerm to rename functions

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit f904c1a972d956b3aa2de08e8862814ee447ed18
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Mon Jul 11 16:06:08 2016 -0700

    client: always pass UserPerm to unlink functions

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit db40270bed999d9b6db906ea21f9864dadc9b4a9
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Mon Jul 11 15:51:53 2016 -0700

    client: add UserPerm-based _lookup() and make_request() functions

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit bc9cac14f9b12d4bdd21c8f0c035ad8f31164ffe
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Tue Jun 28 17:36:35 2016 -0700

    client: always pass UserPerm to [_]link()

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit dbdf402eba50e3195cc30488d5c3f6b4ff78a92b
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Tue Jun 28 16:30:00 2016 -0700

    client: always pass UserPerms to opendir() and variants

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit f40218cc5f25ad7bf3ba1c595bb3b84903d852c3
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Tue Jun 28 16:28:34 2016 -0700

    client: pass UserPerm to getdir()

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit 81665ba808fcef44e0fbf7e0cba55c72772cb1ff
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Thu Jul 7 16:01:17 2016 -0700

    client: add UserPerm-based path_walk()

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit 183544d676cd3e3b8b9b624e5493eaeab6814117
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Thu Jul 7 15:49:10 2016 -0700

    client: add UserPerm-based may_*() and (inode|xattr) _permission checkers

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit 990dd5e95debdbc3ca3c2ca751df05347970c128
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Tue Jun 28 17:02:42 2016 -0700

    client: add pick_my_perms() function for implementers

    We need to get rid of the internal uid/gid selection and switch to
    permission-checking that handles multiple groups -- while also preserving
    the client_mount_(uid|gid) config params. So expose a function which
    can be called externally that replicates our current uid/gid selection,
    but uses our new UserPerm struct.

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

commit 084e7aee13d5a0364ce412517e8bc471f640b92e
Author: Greg Farnum <gfarnum@redhat.com>
Date:   Thu Jul 7 14:09:33 2016 -0700

    client: create new UserPerm struct to use instead of uid/gid pairs

    Signed-off-by: Greg Farnum <gfarnum@redhat.com>

#3 Updated by John Spray about 6 years ago

Yep, still failing on master.

#4 Updated by Zheng Yan about 6 years ago

  • Status changed from New to In Progress
  • Assignee set to Zheng Yan

samba daemon changes its own euid/egid before calling libcephfs functions. But libcephfs setup a default_perm on initializing and uses the default_perm for all operations.

#5 Updated by Zheng Yan about 6 years ago

  • Status changed from In Progress to Fix Under Review

#6 Updated by Greg Farnum about 6 years ago

  • Status changed from Fix Under Review to Resolved

Also available in: Atom PDF