71 #define _ZKFB(n) (1U << (n))
72 #define _ZFB(n) (_ZKFB(n) | 0x40000000)
102 #define RPMZ_FLAGS_FORCE \
103 (RPMZ_FLAGS_OVERWRITE|RPMZ_FLAGS_ALREADY|RPMZ_FLAGS_SYMLINKS|RPMZ_FLAGS_TTY)
106 RPMZ_FLAGS_SUBBLOCK = INT_MIN,
121 #ifdef _RPMZQ_INTERNAL
161 typedef struct rpmzh_s * rpmzh;
178 unsigned long zip_ulen;
179 unsigned long zip_clen;
180 unsigned long zip_crc;
205 typedef struct rpmzi_s * rpmzi;
221 typedef struct rpmzo_s * rpmzo;
238 typedef struct rpmzc_s * rpmzc;
259 typedef struct rpmzw_s * rpmzw;
270 typedef struct rpmzf_s * rpmzf;
287 unsigned int blocksize;
293 struct timeval start;
297 struct rpmzf_s _zinp;
298 struct rpmzf_s _zout;
324 #define IN_BUF_ALLOCATED 32768U
325 size_t _in_buf_allocated;
static const char * suffix[]
rpmzFIFO rpmzqInitFIFO(long val)
void rpmzqAddCJob(rpmzQueue zq, rpmzJob job)
const char const char size_t len
void rpmzqLaunch(rpmzQueue zq, long seq, unsigned int threads)
start another compress/decompress thread if needed
struct rpmzJob_s * rpmzJob
rpmzJob rpmzqDelWJob(rpmzQueue zq, long seq)
rpmzSEQ rpmzqFiniSEQ(rpmzSEQ zs)
rpmzJob rpmzqFreeJob(rpmzJob job)
rpmzSpace rpmzqNewSpace(rpmzPool pool, size_t len)
Get a space from a pool (or malloc if pool == NULL).
struct rpmzQueue_s * rpmzQueue
rpmzPool rpmzqFreePool(rpmzPool pool, int *countp)
rpmzQueue rpmzqNew(rpmzQueue zq, rpmzLog zlog, int limit)
static yarnThread threads
int rpmbzCompressBlock(void *_bz, rpmzJob job)
void rpmzqUseSpace(rpmzSpace space)
Increment the use count to require one more drop before returning this space to the pool...
struct rpmzSEQ_s * rpmzSEQ
rpmzPool rpmzqNewPool(size_t size, int limit)
void rpmzqAddWJob(rpmzQueue zq, rpmzJob job)
struct rpmzLog_s * rpmzLog
trace log pointer
const char const bson const bson int limit
void rpmzqVerifySEQ(rpmzSEQ zs)
rpmzJob rpmzqUseJob(rpmzJob job)
struct rpmzPool_s * rpmzPool
rpmzJob rpmzqDelCJob(rpmzQueue zq)
rpmzJob rpmzqDelFIFO(rpmzFIFO zs)
void rpmzqAddFIFO(rpmzFIFO zs, rpmzJob job)
struct rpmzSpace_s * rpmzSpace
void rpmzqAddSEQ(rpmzSEQ zs, rpmzJob job)
const char const bson int mongo_write_concern int flags
rpmzJob rpmzqNewJob(long seq)
void rpmzqFini(rpmzQueue zq)
command the compress threads to all return, then join them all (call from main thread), free all the thread-related resources
rpmzQueue rpmzqFree(rpmzQueue zq)
struct poptOption rpmzqOptionsPoptTable[]
rpmzJob rpmzqDropJob(rpmzJob job)
const char const bson const bson bson * out
rpmzSpace rpmzqDropSpace(rpmzSpace space)
Drop a space, returning to the pool (or free'ing if no pool) when the use count is zero...
const char const char size_t size
rpmzJob rpmzqDelSEQ(rpmzSEQ zs, long seq)
rpmzFIFO rpmzqFiniFIFO(rpmzFIFO zs)
rpmzSEQ rpmzqInitSEQ(long val)
struct rpmzFIFO_s * rpmzFIFO
void rpmzqVerify(rpmzQueue zq)
verify no more jobs, prepare for next use
void rpmzqInit(rpmzQueue zq)
setup job lists (call from main thread)
void rpmzqVerifyFIFO(rpmzFIFO zs)