Re: src/diskd.c

From: Henrik Nordstrom <hno@dont-contact.us>
Date: Wed, 20 Dec 2000 17:40:07 +0100

Adrian Chadd wrote:
>
> Whilst looking through the squid source and comparing it with
> earlier versions, I've stumbled across src/disk.c . This
> seems to do a whole lot of disk work, which in yesteryear
> implemented asyncio and syncio, but today simply wraps
> around the normal blocking read/write calls.
>
> Now, is there any reason why such a complex beast still needs to exist?
> I can see its worth if the aiops were placed in here, but they're not..

Well.. there still exists some calls to disk.c. How many of these that
are actually required is another business. Probably not many.

And the fact that disk.c no longer makes use of asyncio could be
drawback for aufs Squid's. I have a strong suspicion that there still
exists some log file writes and such things that now are done syncronous
using file_write. However, writes is not such a big problem for the
performance than reads is.

But yes, disk.c can most likely be simplified quite a bit now. But if I
remember correctly there is an interaction between disk.c and the
select/poll loop which might still have an effect (good or bad I don't
know)...

/Henrik

errorpage.o: In function `errorTryLoadText':
/home/henrik/SRC/squid/SF/cbdata/src/errorpage.c:174: undefined
reference to `file_open'
/home/henrik/SRC/squid/SF/cbdata/src/errorpage.c:178: undefined
reference to `file_close'
/home/henrik/SRC/squid/SF/cbdata/src/errorpage.c:188: undefined
reference to `file_close'
logfile.o: In function `logfileOpen':
/home/henrik/SRC/squid/SF/cbdata/src/logfile.c:44: undefined reference
to `file_open'
logfile.o: In function `logfileClose':
/home/henrik/SRC/squid/SF/cbdata/src/logfile.c:76: undefined reference
to `file_close'
logfile.o: In function `logfileRotate':
/home/henrik/SRC/squid/SF/cbdata/src/logfile.c:105: undefined reference
to `file_close'
/home/henrik/SRC/squid/SF/cbdata/src/logfile.c:111: undefined reference
to `file_open'
main.o: In function `mainInitialize':
/home/henrik/SRC/squid/SF/cbdata/src/main.c:482: undefined reference to
`disk_init'
main.o: In function `SquidShutdown':
/home/henrik/SRC/squid/SF/cbdata/src/main.c:971: undefined reference to
`file_close'
/home/henrik/SRC/squid/SF/cbdata/src/main.c:972: undefined reference to
`file_close'
/home/henrik/SRC/squid/SF/cbdata/src/main.c:973: undefined reference to
`file_close'
mime.o: In function `mimeLoadIconFile':
/home/henrik/SRC/squid/SF/cbdata/src/mime.c:405: undefined reference to
`file_open'
/home/henrik/SRC/squid/SF/cbdata/src/mime.c:437: undefined reference to
`file_close'
send-announce.o: In function `send_announce':
/home/henrik/SRC/squid/SF/cbdata/src/send-announce.c:88: undefined
reference to `file_open'
/home/henrik/SRC/squid/SF/cbdata/src/send-announce.c:93: undefined
reference to `file_close'
tools.o: In function `writePidFile':
/home/henrik/SRC/squid/SF/cbdata/src/tools.c:572: undefined reference to
`file_open'
/home/henrik/SRC/squid/SF/cbdata/src/tools.c:582: undefined reference to
`file_close'
unlinkd.o: In function `unlinkdClose':
/home/henrik/SRC/squid/SF/cbdata/src/unlinkd.c:152: undefined reference
to `file_close'
/home/henrik/SRC/squid/SF/cbdata/src/unlinkd.c:154: undefined reference
to `file_close'
fs/aufs.a(store_dir_aufs.o): In function `storeAufsDirOpenSwapLog':
/home/henrik/SRC/squid/SF/cbdata/src/fs/aufs/store_dir_aufs.c:327:
undefined reference to `file_open'
fs/aufs.a(store_dir_aufs.o): In function `storeAufsDirCloseSwapLog':
/home/henrik/SRC/squid/SF/cbdata/src/fs/aufs/store_dir_aufs.c:346:
undefined reference to `file_close'
fs/aufs.a(store_dir_aufs.o): In function
`storeAufsDirRebuildFromDirectory':
/home/henrik/SRC/squid/SF/cbdata/src/fs/aufs/store_dir_aufs.c:426:
undefined reference to `file_close'
/home/henrik/SRC/squid/SF/cbdata/src/fs/aufs/store_dir_aufs.c:431:
undefined reference to `file_close'
fs/aufs.a(store_dir_aufs.o): In function `storeAufsDirGetNextFile':
/home/henrik/SRC/squid/SF/cbdata/src/fs/aufs/store_dir_aufs.c:759:
undefined reference to `file_open'
fs/aufs.a(store_dir_aufs.o): In function `storeAufsDirCloseTmpSwapLog':
/home/henrik/SRC/squid/SF/cbdata/src/fs/aufs/store_dir_aufs.c:867:
undefined reference to `file_close'
/home/henrik/SRC/squid/SF/cbdata/src/fs/aufs/store_dir_aufs.c:877:
undefined reference to `file_open'
fs/aufs.a(store_dir_aufs.o): In function `storeAufsDirOpenTmpSwapLog':
/home/henrik/SRC/squid/SF/cbdata/src/fs/aufs/store_dir_aufs.c:909:
undefined reference to `file_close'
/home/henrik/SRC/squid/SF/cbdata/src/fs/aufs/store_dir_aufs.c:911:
undefined reference to `file_open'
fs/aufs.a(store_dir_aufs.o): In function `storeAufsDirWriteCleanStart':
/home/henrik/SRC/squid/SF/cbdata/src/fs/aufs/store_dir_aufs.c:961:
undefined reference to `file_open'
fs/aufs.a(store_dir_aufs.o): In function `storeAufsDirWriteCleanEntry':
/home/henrik/SRC/squid/SF/cbdata/src/fs/aufs/store_dir_aufs.c:1026:
undefined reference to `file_close'
fs/aufs.a(store_dir_aufs.o): In function `storeAufsDirWriteCleanDone':
/home/henrik/SRC/squid/SF/cbdata/src/fs/aufs/store_dir_aufs.c:1051:
undefined reference to `file_close'
/home/henrik/SRC/squid/SF/cbdata/src/fs/aufs/store_dir_aufs.c:1078:
undefined reference to `file_open'
/home/henrik/SRC/squid/SF/cbdata/src/fs/aufs/store_dir_aufs.c:1078:
undefined reference to `file_close'
/home/henrik/SRC/squid/SF/cbdata/src/fs/aufs/store_dir_aufs.c:1084:
undefined reference to `file_close'
fs/aufs.a(store_dir_aufs.o): In function `storeAufsDirSwapLog':
/home/henrik/SRC/squid/SF/cbdata/src/fs/aufs/store_dir_aufs.c:1112:
undefined reference to `file_write'
fs/aufs.a(store_dir_aufs.o): In function `storeAufsDirFree':
/home/henrik/SRC/squid/SF/cbdata/src/fs/aufs/store_dir_aufs.c:1564:
undefined reference to `file_close'
fs/aufs.a(store_io_aufs.o): In function `storeAufsWrite':
/home/henrik/SRC/squid/SF/cbdata/src/fs/aufs/store_io_aufs.c:230:
undefined reference to `file_write'
fs/coss.a(store_dir_coss.o): In function `storeCossDirOpenSwapLog':
/home/henrik/SRC/squid/SF/cbdata/src/fs/coss/store_dir_coss.c:126:
undefined reference to `file_open'
fs/coss.a(store_dir_coss.o): In function `storeCossDirCloseSwapLog':
/home/henrik/SRC/squid/SF/cbdata/src/fs/coss/store_dir_coss.c:141:
undefined reference to `file_close'
fs/coss.a(store_dir_coss.o): In function `storeCossDirInit':
/home/henrik/SRC/squid/SF/cbdata/src/fs/coss/store_dir_coss.c:153:
undefined reference to `file_open'
fs/coss.a(store_dir_coss.o): In function `storeCossDirCloseTmpSwapLog':
/home/henrik/SRC/squid/SF/cbdata/src/fs/coss/store_dir_coss.c:379:
undefined reference to `file_close'
/home/henrik/SRC/squid/SF/cbdata/src/fs/coss/store_dir_coss.c:389:
undefined reference to `file_open'
fs/coss.a(store_dir_coss.o): In function `storeCossDirOpenTmpSwapLog':
/home/henrik/SRC/squid/SF/cbdata/src/fs/coss/store_dir_coss.c:421:
undefined reference to `file_close'
/home/henrik/SRC/squid/SF/cbdata/src/fs/coss/store_dir_coss.c:423:
undefined reference to `file_open'
fs/coss.a(store_dir_coss.o): In function `storeCossDirWriteCleanStart':
/home/henrik/SRC/squid/SF/cbdata/src/fs/coss/store_dir_coss.c:472:
undefined reference to `file_open'
fs/coss.a(store_dir_coss.o): In function `storeCossDirWriteCleanEntry':
/home/henrik/SRC/squid/SF/cbdata/src/fs/coss/store_dir_coss.c:541:
undefined reference to `file_close'
fs/coss.a(store_dir_coss.o): In function `storeCossDirWriteCleanDone':
/home/henrik/SRC/squid/SF/cbdata/src/fs/coss/store_dir_coss.c:565:
undefined reference to `file_close'
/home/henrik/SRC/squid/SF/cbdata/src/fs/coss/store_dir_coss.c:592:
undefined reference to `file_open'
/home/henrik/SRC/squid/SF/cbdata/src/fs/coss/store_dir_coss.c:592:
undefined reference to `file_close'
/home/henrik/SRC/squid/SF/cbdata/src/fs/coss/store_dir_coss.c:598:
undefined reference to `file_close'
fs/coss.a(store_dir_coss.o): In function `storeCossDirSwapLog':
/home/henrik/SRC/squid/SF/cbdata/src/fs/coss/store_dir_coss.c:626:
undefined reference to `file_write'
fs/coss.a(store_dir_coss.o): In function `storeCossDirShutdown':
/home/henrik/SRC/squid/SF/cbdata/src/fs/coss/store_dir_coss.c:649:
undefined reference to `file_close'
/home/henrik/SRC/squid/SF/cbdata/src/fs/coss/store_dir_coss.c:653:
undefined reference to `file_close'
fs/coss.a(store_io_coss.o): In function `storeCossRead':
/home/henrik/SRC/squid/SF/cbdata/src/fs/coss/store_io_coss.c:276:
undefined reference to `file_read'
fs/coss.a(store_io_coss.o): In function `storeCossWriteMemBuf':
/home/henrik/SRC/squid/SF/cbdata/src/fs/coss/store_io_coss.c:434:
undefined reference to `file_write'
fs/diskd.a(store_dir_diskd.o): In function `storeDiskdDirOpenSwapLog':
/home/henrik/SRC/squid/SF/cbdata/src/fs/diskd/store_dir_diskd.c:338:
undefined reference to `file_open'
fs/diskd.a(store_dir_diskd.o): In function `storeDiskdDirCloseSwapLog':
/home/henrik/SRC/squid/SF/cbdata/src/fs/diskd/store_dir_diskd.c:357:
undefined reference to `file_close'
fs/diskd.a(store_dir_diskd.o): In function
`storeDiskdDirRebuildFromDirectory':
/home/henrik/SRC/squid/SF/cbdata/src/fs/diskd/store_dir_diskd.c:592:
undefined reference to `file_close'
/home/henrik/SRC/squid/SF/cbdata/src/fs/diskd/store_dir_diskd.c:597:
undefined reference to `file_close'
fs/diskd.a(store_dir_diskd.o): In function `storeDiskdDirGetNextFile':
/home/henrik/SRC/squid/SF/cbdata/src/fs/diskd/store_dir_diskd.c:950:
undefined reference to `file_open'
fs/diskd.a(store_dir_diskd.o): In function
`storeDiskdDirCloseTmpSwapLog':
/home/henrik/SRC/squid/SF/cbdata/src/fs/diskd/store_dir_diskd.c:1058:
undefined reference to `file_close'
/home/henrik/SRC/squid/SF/cbdata/src/fs/diskd/store_dir_diskd.c:1068:
undefined reference to `file_open'
fs/diskd.a(store_dir_diskd.o): In function
`storeDiskdDirOpenTmpSwapLog':
/home/henrik/SRC/squid/SF/cbdata/src/fs/diskd/store_dir_diskd.c:1100:
undefined reference to `file_close'
/home/henrik/SRC/squid/SF/cbdata/src/fs/diskd/store_dir_diskd.c:1102:
undefined reference to `file_open'
fs/diskd.a(store_dir_diskd.o): In function
`storeDiskdDirWriteCleanStart':
/home/henrik/SRC/squid/SF/cbdata/src/fs/diskd/store_dir_diskd.c:1152:
undefined reference to `file_open'
/home/henrik/SRC/squid/SF/cbdata/src/fs/diskd/store_dir_diskd.c:1165:
undefined reference to `file_open'
fs/diskd.a(store_dir_diskd.o): In function
`storeDiskdDirWriteCleanEntry':
/home/henrik/SRC/squid/SF/cbdata/src/fs/diskd/store_dir_diskd.c:1220:
undefined reference to `file_close'
fs/diskd.a(store_dir_diskd.o): In function
`storeDiskdDirWriteCleanDone':
/home/henrik/SRC/squid/SF/cbdata/src/fs/diskd/store_dir_diskd.c:1245:
undefined reference to `file_close'
/home/henrik/SRC/squid/SF/cbdata/src/fs/diskd/store_dir_diskd.c:1272:
undefined reference to `file_open'
/home/henrik/SRC/squid/SF/cbdata/src/fs/diskd/store_dir_diskd.c:1272:
undefined reference to `file_close'
/home/henrik/SRC/squid/SF/cbdata/src/fs/diskd/store_dir_diskd.c:1278:
undefined reference to `file_close'
fs/diskd.a(store_dir_diskd.o): In function `storeDiskdDirSwapLog':
/home/henrik/SRC/squid/SF/cbdata/src/fs/diskd/store_dir_diskd.c:1306:
undefined reference to `file_write'
fs/diskd.a(store_dir_diskd.o): In function `storeDiskdDirFree':
/home/henrik/SRC/squid/SF/cbdata/src/fs/diskd/store_dir_diskd.c:1807:
undefined reference to `file_close'
fs/ufs.a(store_dir_ufs.o): In function `storeUfsDirOpenSwapLog':
/home/henrik/SRC/squid/SF/cbdata/src/fs/ufs/store_dir_ufs.c:325:
undefined reference to `file_open'
fs/ufs.a(store_dir_ufs.o): In function `storeUfsDirCloseSwapLog':
/home/henrik/SRC/squid/SF/cbdata/src/fs/ufs/store_dir_ufs.c:344:
undefined reference to `file_close'
fs/ufs.a(store_dir_ufs.o): In function
`storeUfsDirRebuildFromDirectory':
/home/henrik/SRC/squid/SF/cbdata/src/fs/ufs/store_dir_ufs.c:424:
undefined reference to `file_close'
/home/henrik/SRC/squid/SF/cbdata/src/fs/ufs/store_dir_ufs.c:429:
undefined reference to `file_close'
fs/ufs.a(store_dir_ufs.o): In function `storeUfsDirGetNextFile':
/home/henrik/SRC/squid/SF/cbdata/src/fs/ufs/store_dir_ufs.c:757:
undefined reference to `file_open'
fs/ufs.a(store_dir_ufs.o): In function `storeUfsDirCloseTmpSwapLog':
/home/henrik/SRC/squid/SF/cbdata/src/fs/ufs/store_dir_ufs.c:864:
undefined reference to `file_close'
/home/henrik/SRC/squid/SF/cbdata/src/fs/ufs/store_dir_ufs.c:874:
undefined reference to `file_open'
fs/ufs.a(store_dir_ufs.o): In function `storeUfsDirOpenTmpSwapLog':
/home/henrik/SRC/squid/SF/cbdata/src/fs/ufs/store_dir_ufs.c:906:
undefined reference to `file_close'
/home/henrik/SRC/squid/SF/cbdata/src/fs/ufs/store_dir_ufs.c:908:
undefined reference to `file_open'
fs/ufs.a(store_dir_ufs.o): In function `storeUfsDirWriteCleanStart':
/home/henrik/SRC/squid/SF/cbdata/src/fs/ufs/store_dir_ufs.c:958:
undefined reference to `file_open'
fs/ufs.a(store_dir_ufs.o): In function `storeUfsDirWriteCleanEntry':
/home/henrik/SRC/squid/SF/cbdata/src/fs/ufs/store_dir_ufs.c:1023:
undefined reference to `file_close'
fs/ufs.a(store_dir_ufs.o): In function `storeUfsDirWriteCleanDone':
/home/henrik/SRC/squid/SF/cbdata/src/fs/ufs/store_dir_ufs.c:1048:
undefined reference to `file_close'
/home/henrik/SRC/squid/SF/cbdata/src/fs/ufs/store_dir_ufs.c:1075:
undefined reference to `file_open'
/home/henrik/SRC/squid/SF/cbdata/src/fs/ufs/store_dir_ufs.c:1075:
undefined reference to `file_close'
/home/henrik/SRC/squid/SF/cbdata/src/fs/ufs/store_dir_ufs.c:1081:
undefined reference to `file_close'
fs/ufs.a(store_dir_ufs.o): In function `storeUfsDirSwapLog':
/home/henrik/SRC/squid/SF/cbdata/src/fs/ufs/store_dir_ufs.c:1109:
undefined reference to `file_write'
fs/ufs.a(store_dir_ufs.o): In function `storeUfsDirFree':
/home/henrik/SRC/squid/SF/cbdata/src/fs/ufs/store_dir_ufs.c:1549:
undefined reference to `file_close'
fs/ufs.a(store_io_ufs.o): In function `storeUfsOpen':
/home/henrik/SRC/squid/SF/cbdata/src/fs/ufs/store_io_ufs.c:57: undefined
reference to `file_open'
fs/ufs.a(store_io_ufs.o): In function `storeUfsCreate':
/home/henrik/SRC/squid/SF/cbdata/src/fs/ufs/store_io_ufs.c:104:
undefined reference to `file_open'
fs/ufs.a(store_io_ufs.o): In function `storeUfsRead':
/home/henrik/SRC/squid/SF/cbdata/src/fs/ufs/store_io_ufs.c:159:
undefined reference to `file_read'
fs/ufs.a(store_io_ufs.o): In function `storeUfsWrite':
/home/henrik/SRC/squid/SF/cbdata/src/fs/ufs/store_io_ufs.c:173:
undefined reference to `file_write'
fs/ufs.a(store_io_ufs.o): In function `storeUfsIOCallback':
/home/henrik/SRC/squid/SF/cbdata/src/fs/ufs/store_io_ufs.c:245:
undefined reference to `file_close'
Received on Wed Dec 20 2000 - 09:40:10 MST

This archive was generated by hypermail pre-2.1.9 : Tue Dec 09 2003 - 16:13:06 MST