Skip to content

Commit ea6040f

Browse files
committed
Switching to MemoryMap from PTL
1 parent 218782d commit ea6040f

File tree

2 files changed

+3
-59
lines changed

2 files changed

+3
-59
lines changed

dependencies.json

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -49,11 +49,11 @@
4949
"md5": "4757c54b97d015c66b6431ba75de90a3"
5050
},
5151
"ptl": {
52-
"version": "v1.6",
52+
"version": "v1.7",
5353
"url": "https://github.com/gershnik/ptl/tarball/${version}",
5454
"homepage": "https://github.com/gershnik/ptl",
55-
"sha256": "4ba354ef8615b758dbdd0faf7638a9fb4607ee55c0028a5a6ae87b3bdf005f3a",
56-
"md5": "6bc4c78819bed298786efdd0ee4e1585"
55+
"sha256": "e3efb37f71846ba7d10165bef7f62a581dd3e7c8f4ac185bb86d4069bc4ec9ed",
56+
"md5": "f4c503429bd1fa9c8db8823a64590a4b"
5757
},
5858
"spdlog": {
5959
"version": "v1.15.3",

src/sys_util.h

Lines changed: 0 additions & 56 deletions
Original file line numberDiff line numberDiff line change
@@ -204,61 +204,5 @@ class LineReader {
204204

205205
void shell(const ptl::StringRefArray & args, bool suppressStdErr, std::function<void (const ptl::FileDescriptor & fd)> reader);
206206

207-
namespace ptl {
208-
class MemoryMap {
209-
public:
210-
MemoryMap() noexcept = default;
211-
212-
MemoryMap(void * addr, size_t length,
213-
int prot, int flags,
214-
ptl::FileDescriptorLike auto && desc,
215-
off_t offset,
216-
PTL_ERROR_REF_ARG(err)) requires(PTL_ERROR_REQ(err)) :
217-
m_ptr(::mmap(addr, length, prot, flags, c_fd(std::forward<decltype(desc)>(desc)), offset))
218-
{
219-
220-
if (m_ptr == MAP_FAILED) {
221-
handleError(PTL_ERROR_REF(err), errno, "mmap({}, {}, {}, {}, {}, {}) failed",
222-
addr, length, prot, flags, c_fd(std::forward<decltype(desc)>(desc)), offset);
223-
} else {
224-
m_size = length;
225-
clearError(PTL_ERROR_REF(err));
226-
}
227-
}
228-
~MemoryMap() {
229-
if (m_ptr != MAP_FAILED)
230-
munmap(m_ptr, m_size);
231-
}
232-
MemoryMap(const MemoryMap &) = delete;
233-
234-
MemoryMap(MemoryMap && src) :
235-
m_ptr(std::exchange(src.m_ptr, MAP_FAILED)),
236-
m_size(std::exchange(src.m_size, 0))
237-
{}
238-
239-
MemoryMap & operator=(MemoryMap src) noexcept {
240-
swap(src, *this);
241-
return *this;
242-
}
243-
244-
void close() noexcept {
245-
*this = MemoryMap();
246-
}
247-
248-
friend void swap(MemoryMap & lhs, MemoryMap & rhs) noexcept {
249-
std::swap(lhs.m_ptr, rhs.m_ptr);
250-
std::swap(lhs.m_size, rhs.m_size);
251-
}
252-
253-
auto data() const -> void *
254-
{ return m_ptr; }
255-
auto size() const -> size_t
256-
{ return m_size; }
257-
private:
258-
void * m_ptr = MAP_FAILED;
259-
size_t m_size = 0;
260-
};
261-
262-
}
263207

264208
#endif

0 commit comments

Comments
 (0)