Please don't reply to lustre-devel. Instead, comment in Bugzilla by using the following link: https://bugzilla.lustre.org/show_bug.cgi?id=11176
I noticed during code review for another bug that the obdfilter code is allocating too much memory for the preallocated IO buffers. We currently preallocate an IO buffer per OST thread in filter_iobuf_pool_init(), and in filter_iobuf_get->filter_alloc_iobuf(). The problem is that these iobuf pools are PER OBDFILTER INSTANCE and with many OST IO threads this can add up. Instead, the iobuf pool can be global to the obdfilter (instead of per-instance) because it isn't possible for an OST RPC thread to be active with requests to two obdfilter instances at the same time. Note that I misspoke on the conference call previously - the 1MB IO buffer is in fact allocated in the OST and is not part of the above problem. Also, the obdfilter iobuf pools ARE accounted for in the lustre memused total, so they are likely not the culprit here. _______________________________________________ Lustre-devel mailing list [email protected] https://mail.clusterfs.com/mailman/listinfo/lustre-devel
