Lines Matching +full:auto +full:- +full:poll
8 * http://www.apache.org/licenses/LICENSE-2.0
20 #include <poll.h>
22 #include <systemd/sd-bus.h>
23 #include <systemd/sd-journal.h>
26 #include <phosphor-logging/lg2.hpp>
49 auto value = line.substr(keyPattern.size()); in getOSReleaseValue()
51 return value.substr(pos, value.find_last_of('"') - pos); in getOSReleaseValue()
61 auto fd = -1; in journalSync()
62 auto rc = -1; in journalSync()
63 auto wd = -1; in journalSync()
64 auto bus = sdbusplus::bus::new_default(); in journalSync()
66 auto start = std::chrono::duration_cast<std::chrono::microseconds>( in journalSync()
78 // Iteration #3: Poll to wait until inotify reports an event which blocks in journalSync()
80 constexpr auto maxRetry = 3; in journalSync()
84 constexpr auto syncedPath = "/run/systemd/journal/synced"; in journalSync()
103 auto timestamp = std::stoll(timestampStr); in journalSync()
115 constexpr auto JOURNAL_UNIT = "systemd-journald.service"; in journalSync()
116 auto signal = SIGRTMIN + 1; in journalSync()
118 auto method = bus.new_method_call(SYSTEMD_BUSNAME, SYSTEMD_PATH, in journalSync()
144 constexpr auto JOURNAL_RUN_PATH = "/run/systemd/journal"; in journalSync()
163 constexpr auto pollTimeout = 5; // 5 seconds in journalSync()
164 rc = poll(&fds, 1, pollTimeout * 1000); in journalSync()
175 lg2::info("Poll timeout ({TIMEOUT}), no new journal synced data", in journalSync()
183 constexpr auto maxBytes = 64; in journalSync()
189 if (fd != -1) in journalSync()
191 if (wd != -1) in journalSync()
203 auto parse(const std::vector<std::string>& data) in parse()
204 -> std::map<std::string, std::string> in parse()
208 constexpr auto separator = '='; in parse()
209 for (const auto& entryItem : data) in parse()
211 auto pos = entryItem.find(separator); in parse()
214 auto key = entryItem.substr(0, entryItem.find(separator)); in parse()
215 auto value = entryItem.substr(entryItem.find(separator) + 1); in parse()
223 auto combine(const std::map<std::string, std::string>& data) in combine()
224 -> std::vector<std::string> in combine()
228 for (const auto& [key, value] : data) in combine()