>>> "Fabio M. Di Nitto" <fabbi...@fabbione.net> schrieb am 02.08.2022 um 14:30 in Nachricht <0b26c097-1e21-3945-24ba-355cd0ccf...@fabbione.net>: > Hello Kazunori-san, > > On 02/08/2022 12.13, 井上和徳 wrote: >> Hi, >> >> Since O_DIRECT is not specified in open() [1], it reads the buffer cache and >> may result in a false negative. I fear that this possibility increases >> in environments with large buffer cache and running disk-reading > applications >> such as database. >> >> So, I think it's better to specify O_RDONLY|O_DIRECT, but what about it? >> (in this case, lseek() processing is unnecessary.) > > I will have to defer to Christine (in CC) to this email on why we didn´t > use O_DIRECT. > > I have a vague recollection that some storage devices didn´t like the > O_DIRECT option causing other issues later, but it´s been a while since > I touched the code.
The thing with O_DIRECT is that a "software block" has to be a multiple of a "hardware block"; i.e: you cannot read a partial block, and the buffer has some alignment requirements. > >> >> # I am ready to create a patch that works with O_DIRECT. Also, I wouldn't > mind >> # a "change to add a new mode of inspection with O_DIRECT >> # (add a option to storage_mon) while keeping the current inspection > process". >> >> [1] > https://github.com/ClusterLabs/resource-agents/blob/main/tools/storage_mon.c# > L47-L90 > > It might be a very reasonable solution, tho let´s wait for an answer > from Chrissie. > > Cheers > Fabio > _______________________________________________ > Manage your subscription: > https://lists.clusterlabs.org/mailman/listinfo/users > > ClusterLabs home: https://www.clusterlabs.org/ _______________________________________________ Manage your subscription: https://lists.clusterlabs.org/mailman/listinfo/users ClusterLabs home: https://www.clusterlabs.org/