FreeBSDのgmirrorでのエラー - out of memory in startの怪

我が家のサーバはgeomでミラーリングをしているのだけれど、時々「adx: FAILURE - out of memory in start」なエラーメッセージが出てうざい。
結論としては「やっぱり瞬間的にメモリが足りないぽいよね」っていう話なのだけれど、普段は全然メモり使ってないから、何で瞬間的にメモリが足らなくなるのか分からない。

少しだけソース追っかけてみた

とりあえず、/usr/src/sys/dev/ata/ata-disk.cの233行目より。

    if (!(request = ata_alloc_request())) {                               
        device_printf(dev, "FAILURE - out of memory in start\n");         
        biofinish(bp, NULL, ENOMEM);
        return;
    } 

ata_alloc_request()って何じゃらほい?って調べてみると、ata-all.hに。

#define ata_alloc_request() uma_zalloc(ata_request_zone, M_NOWAIT | M_ZERO)

そんなこんなでFreeBSDオンラインマニュアル JPを。
「ブートプロセスのより早い段階で利用可能です」とあるので、geomに使用されたっぽいメモリ確保用の関数。やっぱりメモリが時々足らなくなってるのか。みょーん。うーん、cronさんとかでスクリプト処理してたりするのが辛いのかしら。もし、何か情報をお持ちの方いらっしゃったらお願いします。