mirror of
https://github.com/ceph/ceph
synced 2024-12-24 20:33:27 +00:00
64ded02c99
Removes a condition in Throttle::_reset_max by which the waiting queue is only Signal()ed if the new maximum is lower than the current maximum. There is no evidence of a use case where such a restriction would be useful. In addition waking up a thread when the maximum increases gives it a chance to immediately continue the suspended process instead of waiting for the next put(). Create a new test file covering 100% of src/Throttle.{cc,h} lines of code. The following methods are tested: * Throttle::Throttle with and without a maximum * Throttle::~Throttle when each pending Cond is deleted * Throttle::take * Throttle::get when updating the maximum ( lower or higher ), when going to sleep waiting for the count to lower under the maximum, when going to sleep because another thread is already asleep waiting * Throttle::get_or_fail when there is no maximum, when requesting a count that is larger than the maximum, either when the current value is under the maximum or above the maximum. * Throttle::wait when used to reset the maximum and wake up another thread asleep waiting All asserts checking the arguments sanity are exercised ( negative argument for Throttle::take etc. ). Adds the LGPLv2+ licensing terms to COPYING along with the others. Adds a Contributors section to the AUTHORS file. Notes: Testing asserts outputs verbose error messages that should be silenced but it does not seem possible. Signed-off-by: Loic Dachary <loic@dachary.org>
104 lines
3.9 KiB
Plaintext
104 lines
3.9 KiB
Plaintext
Files: *
|
|
Copyright: (c) 2004-2010 by Sage Weil <sage@newdream.net>
|
|
License: LGPL2.1 (see COPYING-LGPL2.1)
|
|
|
|
Files: doc/*
|
|
Copyright: (c) 2010-2012 New Dream Network and contributors
|
|
License: Creative Commons Attribution-ShareAlike (CC BY-SA)
|
|
|
|
Files: src/client/hadoop/ceph
|
|
Copyright: Copyright (C) New Dream Network and contributors
|
|
License: Apache License v2
|
|
|
|
Files: src/rbd.cc
|
|
Copyright:
|
|
Copyright (C) 2004-2006 Sage Weil <sage@newdream.net>
|
|
License: GPL2
|
|
|
|
Files: src/common/fiemap.cc
|
|
Copyright:
|
|
Copyright (C) 2010 Canonical
|
|
License: GPL2
|
|
|
|
Files: src/mount/canonicalize.c
|
|
Copyright: Copyright (C) 1993 Rick Sladkey <jrs@world.std.com>
|
|
License: LGPL2 or later
|
|
|
|
Files: src/os/btrfs_ioctl.h
|
|
Copyright: Copyright (C) 2007 Oracle. All rights reserved.
|
|
License: GPL2
|
|
|
|
Files: src/include/ceph_hash.cc
|
|
Copyright: None
|
|
License: Public domain
|
|
|
|
Files: m4/acx_pthread.m4
|
|
Copyright: Steven G. Johnson <stevenj@alum.mit.edu>
|
|
License: GPLWithACException
|
|
|
|
Files: src/common/sctp_crc32.c:
|
|
Copyright:
|
|
Copyright (c) 2001-2007, by Cisco Systems, Inc. All rights reserved.
|
|
Copyright (c) 2004-2006 Intel Corporation - All Rights Reserved
|
|
License:
|
|
Redistribution and use in source and binary forms, with or without
|
|
modification, are permitted provided that the following conditions are met:
|
|
|
|
a) Redistributions of source code must retain the above copyright notice,
|
|
this list of conditions and the following disclaimer.
|
|
|
|
b) Redistributions in binary form must reproduce the above copyright
|
|
notice, this list of conditions and the following disclaimer in
|
|
the documentation and/or other materials provided with the distribution.
|
|
|
|
c) Neither the name of Cisco Systems, Inc. nor the names of its
|
|
contributors may be used to endorse or promote products derived
|
|
from this software without specific prior written permission.
|
|
|
|
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
|
"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
|
|
THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
|
ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
|
|
LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
|
|
CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
|
|
SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
|
|
INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
|
|
CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
|
|
ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
|
|
THE POSSIBILITY OF SUCH DAMAGE.
|
|
|
|
Files: src/json_spirit
|
|
Copyright:
|
|
Copyright John W. Wilkinson 2007 - 2011
|
|
License:
|
|
The MIT License
|
|
|
|
Copyright (c) 2007 - 2010 John W. Wilkinson
|
|
|
|
Permission is hereby granted, free of charge, to any person
|
|
obtaining a copy of this software and associated documentation
|
|
files (the "Software"), to deal in the Software without
|
|
restriction, including without limitation the rights to use,
|
|
copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
copies of the Software, and to permit persons to whom the
|
|
Software is furnished to do so, subject to the following
|
|
conditions:
|
|
|
|
The above copyright notice and this permission notice shall be
|
|
included in all copies or substantial portions of the Software.
|
|
|
|
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
|
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
|
|
OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
|
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
|
|
HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
|
|
WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
|
FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
|
|
OTHER DEALINGS IN THE SOFTWARE.
|
|
|
|
|
|
|
|
Files: test/common/Throttle.cc
|
|
Copyright: Copyright (C) 2013 Cloudwatt <libre.licensing@cloudwatt.com>
|
|
License: LGPL2 or later
|