squid3/unify-io changes

These changesets represents the changes on the squid3/unify-io development branch of Squid. If there is any questions please contact squid-dev@squid-cache.org.

Browse repository

2003/01/01 11:06:51rbcollins+2 -1missing head patch
2002/12/16 21:49:38rbcollins+22 -67simplify reconfigure
2002/12/16 21:29:23rbcollins+21 -63simplify parsing code, and consolidate
2002/12/16 20:50:44rbcollins+6 -101eliminate IOStrategy, it's too broad for now
2002/12/16 11:46:44rbcollins+2 -5gah, fixup major mem leak
2002/12/16 10:59:00rbcollins+13 -16and a another methodisation
2002/12/15 19:50:38rbcollins+16 -17make doing the callback a method
2002/12/15 19:27:29rbcollins+767 -824move all UFSSwapDir methods to fs/ufs/store_dir_ufs.cc
2002/12/15 19:13:30rbcollins+15 -2always build ufs store, to include common logic
2002/12/15 12:19:50rbcollins+152 -206and more methodisation
2002/12/15 08:45:15rbcollins+18 -1update tests
2002/12/15 08:23:07rbcollins+39 -47make reconfiguring a method
2002/12/15 07:27:02rbcollins+52 -80remove fsdata completely
2002/12/15 06:57:45rbcollins+16 -22move more UFS state members
2002/12/15 06:42:34rbcollins+10 -6move void *fsdata down to UFSSwapDir level
2002/12/15 06:36:37rbcollins+1 -15eliminate use of fsdata in coss
2002/12/15 06:35:11rbcollins+12 -23repeat
2002/12/15 06:28:52rbcollins+10 -15repeat
2002/12/15 06:25:23rbcollins+7 -9repeat
2002/12/15 06:23:17rbcollins+16 -19repeat
2002/12/15 06:21:20rbcollins+15 -16repeat
2002/12/15 06:19:21rbcollins+15 -17repeat
2002/12/15 06:14:33rbcollins+33 -36rinse and repeat
2002/12/15 06:06:54rbcollins+55 -60move fields to CossSwapDir
2002/12/15 02:34:36rbcollins+98 -115start removing fsdata fields
2002/12/14 22:04:13rbcollins+18 -25removed unused field and simplify swapdir structure
2002/12/14 21:46:49rbcollins+5 -32and use the write method
2002/12/14 21:32:10rbcollins+9 -29use nextEntry virtual method
2002/12/14 21:27:48rbcollins+4 -4depend on state being null, not the write method
2002/12/14 21:25:28rbcollins+9 -13state is now strongly typed
2002/12/14 21:14:49rbcollins+49 -26ditto for coss
2002/12/14 21:04:14rbcollins+51 -26make CleanLog a direct child of SwapDir, and implement the commonUFS implementation thereof.
2002/12/14 11:41:08rbcollins+38 -47write.done->method
2002/12/14 11:23:48rbcollins+39 -40log write -> method
2002/12/14 10:48:16rbcollins+56 -28start factoring the rebuild logic
2002/12/14 10:01:10rbcollins+52 -53and more
2002/12/14 09:54:25rbcollins+49 -44and more
2002/12/14 09:40:24rbcollins+48 -41and more
2002/12/14 05:19:59rbcollins+8 -13and more
2002/12/14 05:07:15rbcollins+35 -34and more
2002/12/14 04:55:40rbcollins+18 -18more conversions to methods
2002/12/14 04:39:40rbcollins+72 -78shotgun conversion to methods
2002/12/14 03:13:20rbcollins+27 -38log.close->closeLog()
2002/12/14 02:56:03rbcollins+42 -84openlog -> a method
2002/12/14 02:07:23rbcollins+28 -15extract method
2002/12/14 00:56:37rbcollins+1 -5minor tidyup
2002/12/14 00:54:29rbcollins+41 -68and make open into openStoreIO
2002/12/14 00:40:15rbcollins+39 -27make creating objects a method
2002/12/14 00:02:01rbcollins+31 -87move IOStrategy down to UFSSwapDir level - it's too broad at the moment
2002/12/13 23:23:31rbcollins+29 -39make sync a method
2002/12/13 22:59:36rbcollins+31 -33make callback a method
2002/12/13 22:29:35rbcollins+31 -38and likewise with unref->dereferenced
2002/12/13 22:16:44rbcollins+30 -35make refobj a method (reference)
2002/12/13 22:03:37rbcollins+32 -36make checkobj a method (canStore)
2002/12/13 21:27:01rbcollins+42 -42move ufs's maintainfs home
2002/12/13 21:25:04rbcollins+39 -40move ufs's statfs home
2002/12/13 21:23:11rbcollins+20 -23make maintainfs a method
2002/12/13 21:11:11rbcollins+3 -3fix a name collision
2002/12/13 21:09:17rbcollins+58 -65make statfs a method
2002/12/13 20:43:36rbcollins+49 -53make close a method
2002/12/13 12:17:20rbcollins+48 -49unlink is a method of the swapdir
2002/12/13 11:57:47rbcollins+35 -35move to final home
2002/12/13 11:52:01rbcollins+38 -23extract method on doublecheck, and make a fullPath method
2002/12/13 11:43:33rbcollins+2 -2doh. fix it -right-
2002/12/13 11:35:58rbcollins+32 -30make doublechecking a method
2002/12/13 11:19:04rbcollins+15 -19and move the ufs specific destructor to it's final home
2002/12/13 11:17:46rbcollins+20 -29make freefs a method (destructor in this case)
2002/12/13 10:45:14rbcollins+64 -54move dump to be a method, and handle an assert on header-only swapfiles (caused by crashs earlier :])
2002/12/13 09:32:57rbcollins+38 -41move newfs to a method, and the ufs code to it's final home
2002/12/13 08:50:39rbcollins+47 -47move ufs init routine to it's final home
2002/12/13 08:22:57rbcollins+74 -63make init a method
2002/12/13 03:07:09rbcollins+57 -64normalise aufs write's and merge with parent
2002/12/13 01:22:29rbcollins+5 -10simplify conditional
2002/12/13 01:14:46rbcollins+27 -27move write queue code where it belongs
2002/12/13 00:54:48rbcollins+16 -8introduce canWrite() check
2002/12/12 23:57:04rbcollins+16 -15extract method
2002/12/12 23:42:23rbcollins+38 -32move pending_writes into parent
2002/12/12 22:51:30rbcollins+42 -26move write queue definition into UFSStoreState
2002/12/12 11:39:15rbcollins+45 -51remove FD from ufsstate, and make common write() method
2002/12/12 11:02:32rbcollins+39 -35diskd write separation
2002/12/12 10:37:01rbcollins+25 -3write stubs for DiskFiles
2002/12/12 09:03:02rbcollins+25 -4create writeCompleted stubs
2002/12/12 02:31:20rbcollins+6 -25and eliminate aufs's read_ call
2002/12/12 02:15:23rbcollins+1 -19remove diskd's read_, it's now obsolete
2002/12/12 02:11:31rbcollins+7 -10pull read_ and read_buf up into UFSStoreState
2002/12/12 00:52:36rbcollins+63 -49split diskd read into IO and ufs components
2002/12/11 21:45:22rbcollins+47 -53make write a virtual method
2002/12/11 11:44:18rbcollins+19 -24remove the SD from the parameter list for read_
2002/12/11 11:15:20rbcollins+68 -75make read a method of the io state objects
2002/12/11 01:00:43rbcollins+79 -26ufs common read code created
2002/12/10 23:53:53rbcollins+68 -63move now ufs global operations to ufs_io source file, and create a trampoline for aufsReads
2002/12/10 23:23:31rbcollins+11 -9move ownership of the pending read list to the common ufs state
2002/12/10 23:09:38rbcollins+42 -24move queued_read into UFSStoreState
2002/12/10 22:41:44rbcollins+5 -6make behaviour on reentrant reads identical across diskd ufs and aufs
2002/12/10 22:38:14rbcollins+19 -4make canRead virtual
2002/12/10 11:45:07rbcollins+68 -37factor out fd and io related read stuff
2002/12/10 10:14:37rbcollins+16 -10extract method
2002/12/10 01:20:40rbcollins+11 -3move readability test to IO object
2002/12/09 12:11:11rbcollins+47 -66consolidate reading and writing flags
2002/12/08 03:28:14rbcollins+89 -28more work towards close()
2002/12/07 13:44:52rbcollins+70 -46partial readiness for close
2002/12/07 02:41:38rbcollins+19 -23consolidate ufs closing flag
2002/12/07 01:25:38rbcollins+17 -37consolidate common open and create stubs
2002/12/06 23:43:03rbcollins+58 -104unify create operations
2002/12/06 23:11:29rbcollins+7 -6push create method to base DiskFile class
2002/12/06 23:06:12rbcollins+58 -83add standardised create to aufs
2002/12/06 21:45:59rbcollins+38 -24give ufs the standard create logic
2002/12/06 11:31:17rbcollins+99 -66give diskd a ready to merge create method
2002/12/06 02:55:34rbcollins+5 -41same open for all of aufs, ufs, disk now
2002/12/06 02:47:07rbcollins+127 -12another step
2002/12/05 23:27:33rbcollins+12 -10starting on aufs open - step 2
2002/12/05 23:10:50rbcollins+61 -4starting on aufs open
2002/12/05 22:39:07rbcollins+48 -48pull open into the strategy, and up the hierarchy to UFSStrategy level
2002/12/05 22:04:50rbcollins+11 -10identical storeFooOpen routines for diskd and ufs
2002/12/05 21:40:40rbcollins+36 -7remove knowledge of the file type from fooOpen
2002/12/05 21:12:24rbcollins+22 -23eliminate diskdinfo use in DiskdFile class
2002/12/05 20:48:15rbcollins+16 -9provide generic load estimate for IOStrategy
2002/12/05 20:38:15rbcollins+27 -28move magic2 to IO class
2002/12/05 20:28:16rbcollins+18 -20make shm struct to IO class
2002/12/05 20:16:18rbcollins+29 -21extract shm init logic
2002/12/05 13:26:07rbcollins+17 -18make shm gets a method
2002/12/05 13:11:07rbcollins+30 -25make shm access an object
2002/12/05 12:57:32rbcollins+71 -25consolidate some members
2002/12/05 12:11:45rbcollins+315 -117ugly but functional alignment between diskd and ufs
2002/12/04 21:55:36rbcollins+58 -50deal with fs callers assumptions on return values. move sio initialisation in diskd into the object.
2002/12/04 12:34:57rbcollins+20 -18make refcountable automatically virtual, and move IORequestor down the hierarchy, so to prevent coss being affected
2002/12/04 12:06:48rbcollins+117 -28snapshotting stable ufs object based open
2002/12/04 09:05:45rbcollins+35 -18fixi cbdata issue caused in last commit
2002/12/03 12:25:57rbcollins+97 -79start identiying common code between aufs and diskd
2002/12/03 11:06:59rbcollins+488 -307the single most distruptive change - all the store state objects inherit from StoreIOState, so now we can starting pushi
2002/12/03 02:05:28rbcollins+44 -7allow per dir strategy objects
2002/12/03 00:51:12rbcollins+2 -8use shedLoad()
2002/12/03 00:47:02rbcollins+131 -40make IOStrategies mandatory
2002/12/03 00:08:45rbcollins+46 -9allow each storefs type to alloc it's own SwapDir
2002/12/02 23:33:35rbcollins+56 -9extract swapdir allocation to swapdir.cc
2002/12/02 15:25:38rbcollins+60 -54make storeDirs a SwapDir ** to allow polymorphism
2002/12/02 14:42:14rbcollins+208 -94initial commit - separate out SwapDir type and factor out some trivial aufs code

Release statistics

rbcollins137+6533 -5791
total137+6533 -5791