summaryrefslogtreecommitdiffstats
path: root/docs/_static/opnfv-logo.png
blob: 1519503eba764f7a00877b9b8bdbbd37fd3707c6 (plain)
ofshex dumpascii
0000 89 50 4e 47 0d 0a 1a 0a 00 00 00 0d 49 48 44 52 00 00 00 d5 00 00 00 32 08 06 00 00 00 cb 01 9e .PNG........IHDR.......2........
0020 b9 00 00 00 19 74 45 58 74 53 6f 66 74 77 61 72 65 00 41 64 6f 62 65 20 49 6d 61 67 65 52 65 61 .....tEXtSoftware.Adobe.ImageRea
0040 64 79 71 c9 65 3c 00 00 0a af 49 44 41 54 78 da ec 9d 3f 8c e3 c6 15 87 c7 8b 6d 9d f0 e0 c2 69 dyq.e<....IDATx...?.......m....i
0060 0e e1 75 69 ec d3 a6 f0 c1 b8 62 29 20 31 5c 24 58 29 fd e1 a4 22 07 a4 30 ac 45 00 23 01 0c ac ..ui......b).1\$X)..."..0.E.#...
0080 04 04 48 60 20 90 d6 2e 0c 9c 8b e5 c2 5d 8a ac 84 a4 08 1c 03 a2 8a 43 60 17 59 5e d2 a4 3b 22 ..H`.........].........C`.Y^..;"
00a0 6e 92 22 30 13 97 69 f2 9e f2 b8 1e f1 c8 99 37 fc ab 5d cd 03 88 d5 4a 14 87 33 9c 6f de ef bd n."0..i........
/*
 * Copyright (C) 2008 Oracle.  All rights reserved.
 *
 * This program is free software; you can redistribute it and/or
 * modify it under the terms of the GNU General Public
 * License v2 as published by the Free Software Foundation.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 * General Public License for more details.
 *
 * You should have received a copy of the GNU General Public
 * License along with this program; if not, write to the
 * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
 * Boston, MA 021110-1307, USA.
 */

#ifndef __BTRFS_LOCKING_
#define __BTRFS_LOCKING_

#define BTRFS_WRITE_LOCK 1
#define BTRFS_READ_LOCK 2
#define BTRFS_WRITE_LOCK_BLOCKING 3
#define BTRFS_READ_LOCK_BLOCKING 4

void btrfs_tree_lock(struct extent_buffer *eb);
void btrfs_tree_unlock(struct extent_buffer *eb);

void btrfs_tree_read_lock(struct extent_buffer *eb);
void btrfs_tree_read_unlock(struct extent_buffer *eb);
void btrfs_tree_read_unlock_blocking(struct extent_buffer *eb);
void btrfs_set_lock_blocking_rw(struct extent_buffer *eb, int rw);
void btrfs_clear_lock_blocking_rw(struct extent_buffer *eb, int rw);
void btrfs_assert_tree_locked(struct extent_buffer *eb);
int btrfs_try_tree_read_lock(struct extent_buffer *eb);
int btrfs_try_tree_write_lock(struct extent_buffer *eb);
int btrfs_tree_read_lock_atomic(struct extent_buffer *eb);


static inline void btrfs_tree_unlock_rw(struct extent_buffer *eb, int rw)
{
	if (rw == BTRFS_WRITE_LOCK || rw == BTRFS_WRITE_LOCK_BLOCKING)
		btrfs_tree_unlock(eb);
	else if (rw == BTRFS_READ_LOCK_BLOCKING)
		btrfs_tree_read_unlock_blocking(eb);
	else if (rw == BTRFS_READ_LOCK)
		btrfs_tree_read_unlock(eb);
	else
		BUG();
}

static inline void btrfs_set_lock_blocking(struct extent_buffer *eb)
{
	btrfs_set_lock_blocking_rw(eb, BTRFS_WRITE_LOCK);
}

static inline void btrfs_clear_lock_blocking(struct extent_buffer *eb)
{
	btrfs_clear_lock_blocking_rw(eb, BTRFS_WRITE_LOCK_BLOCKING);
}
#endif
9 97 20 aa bb ee 8b 0a a0 9a 1b 41 85 99 3d 8a a9 1e 8a cd 35 2a f0 ...7.N6..i..........A..=.....5*. 0880 64 fc 24 39 01 5e ca 55 68 cf d9 47 f7 ee 72 1a e3 58 e4 3f 80 88 da d6 07 b0 8e 01 2c 47 d1 10 d.$9.^.Uh..G..r..X.?........,G.. 08a0 37 e9 f7 ac f0 62 4d ae db 5d 10 15 da 0c ea 5e f7 d3 cc 65 65 32 fb 2e 95 8d 44 05 80 e3 0b fd 7....bM..].....^...ee2....D..... 08c0 84 6c 1e 50 3e 00 c5 6a 18 4c 48 80 b7 c2 7d b3 d6 82 bb fa 1f c0 1a 02 58 e7 e2 f9 c7 e9 b9 4b .l.P>..j.LH...}.........X......K 08e0 fc 5e 17 7b ba c3 40 a1 fd bb ee 02 50 3e be 7e ff 35 ec 33 bd ba a1 2c b2 44 59 9c 11 40 9e 02 .^.{..@.....P>.~.5.3...,.DY..@.. 0900 50 be c9 41 30 8d 4e 32 30 bd 50 fd c6 f1 29 8d be ae 10 00 86 de 29 86 f7 ea 90 45 2e 77 47 c5 P..A0.N20.P...).......)....E.wG. 0920 82 91 d6 b6 db 56 25 a0 5a d4 06 15 c0 83 10 65 fe 02 e3 1f be f8 27 7a 93 f0 cd db 2f 2b 83 ca .....V%.Z......e......'z..../+.. 0940 17 df 79 84 1d 38 c6 f8 4a d0 73 5b 00 98 a7 49 64 20 60 61 89 51 46 97 88 c1 95 65 95 e5 4b 9e ..y..8..J.s[...Id.`a.QF....e..K. 0960 94 b3 d2 6d 64 fb f0 56 ca ec 69 89 3e 54 9b a7 ca 82 a9 47 27 eb 92 7c 1c 2a 80 4a 96 f8 72 e0 ...md..V..i.>T.....G'..|.*.J..r. 0980 f5 e9 57 ef 3d 1e 93 e7 0a 6a 6c 4c 0e 8c 55 2f 0b 1d d8 3e bc 5d c6 bc bb 22 13 46 93 ec e3 5e ..W.=....jlL..U/...>.]...".F...^ 09a0 05 40 a1 74 bb 90 e4 93 2e c3 92 dc d6 bf 7e 96 0a c0 ba 6c 42 4f 8b 66 1f 76 8c ec ed 42 5b 6b .@.t..........~....lBO.f.v...B[k 09c0 45 06 bb 95 c9 ce 7b 25 81 f2 b2 46 77 78 5f 35 12 a4 17 db e8 00 58 4d 4c e6 9e 36 78 e1 ec 2a E.....{%...Fwx_5......XML..6x..* 09e0 4f db 6b 8b 02 df 99 37 06 95 22 4e 71 34 32 2b 6d 23 8a b3 ea f4 56 7e 43 92 ec 3a 3e 7a b1 4b O.k....7.."Nq42+m#....V~C..:>z.K 0a00 12 10 fb 40 6c 78 3d a3 46 a0 02 6f a4 fa d9 cb 22 d2 a7 89 8c da 50 d4 bb 76 43 23 bf b3 65 ad ...@lx=.F..o....".....P..vC#..e. 0a20 92 84 45 6d 72 b1 8c a7 ca 93 78 d1 9b b7 5f 8e 0a e8 d3 da 7f e6 86 46 9c 6e 4d 60 25 8f 5e d8 ..Emr.....x..._........F.nM`%.^. 0a40 85 6a b6 df 4c 62 a4 45 93 50 e5 99 6e 11 c3 56 a5 11 75 fa 83 8a a5 60 68 81 ba 91 9e 2a 2e 72 .j..Lb.E.P..n..V..u....`h....*.r 0a60 c3 72 19 a8 b2 bc 11 ce 51 8d 55 5f fa ea bd c7 f8 bd 59 ce 48 df 14 58 11 dd e9 9c b7 ca ae 09 .r......Q.U_......Y.H..X........ 0a80 4c 43 38 d6 81 05 ea 5a c5 55 dc e5 f4 0a dd b5 53 78 9e 0a 25 1e c4 55 08 88 2b 9d 00 37 9e 98 LC8....Z.U......Sx..%..U..+..7.. 0aa0 90 7c f4 ca 56 a0 82 e4 85 2f fd ae ab 67 a0 b3 4d d2 e6 13 c6 f1 ea b2 88 51 be 69 0c 7c ae 91 .|..V..../...g..M........Q.i.|.. 0ac0 50 91 61 f9 41 0b 6c 4d 18 32 b0 d0 79 bd 50 e6 ac 68 d2 77 bd d2 2c 40 66 7c 02 2f be f3 08 bd P.a.A.lM.2..y.P..h.w..,@f|./.... 0ae0 1a ae a4 e3 83 07 6b ed e7 61 ac 59 b3 66 cd 9a 35 6b d6 76 c7 fe 27 c0 00 57 b3 2c c0 78 39 78 ......k..a.Y.f..5k.v..'..W.,.x9x 0b00 f2 00 00 00 00 49 45 4e 44 ae 42 60 82 .....IEND.B`.