int new_size = nevent << 2;
while (fd > new_size)
new_size <<= 2;
- ldout(cct, 10) << __func__ << " event count exceed " << nevent << ", expand to " << new_size << dendl;
+ ldout(cct, 20) << __func__ << " event count exceed " << nevent << ", expand to " << new_size << dendl;
r = driver->resize_events(new_size);
if (r < 0) {
lderr(cct) << __func__ << " event count is exceed." << dendl;
if (mask & EVENT_WRITABLE) {
event->write_cb = ctxt;
}
- ldout(cct, 10) << __func__ << " create event end fd=" << fd << " mask=" << mask
+ ldout(cct, 20) << __func__ << " create event end fd=" << fd << " mask=" << mask
<< " original mask is " << event->mask << dendl;
return 0;
}
return ;
}
EventCenter::FileEvent *event = _get_file_event(fd);
- ldout(cct, 20) << __func__ << " delete event started fd=" << fd << " mask=" << mask
+ ldout(cct, 30) << __func__ << " delete event started fd=" << fd << " mask=" << mask
<< " original mask is " << event->mask << dendl;
if (!event->mask)
return ;
}
event->mask = event->mask & (~mask);
- ldout(cct, 10) << __func__ << " delete event end fd=" << fd << " mask=" << mask
+ ldout(cct, 30) << __func__ << " delete event end fd=" << fd << " mask=" << mask
<< " original mask is " << event->mask << dendl;
}
assert(in_thread());
uint64_t id = time_event_next_id++;
- ldout(cct, 10) << __func__ << " id=" << id << " trigger after " << microseconds << "us"<< dendl;
+ ldout(cct, 30) << __func__ << " id=" << id << " trigger after " << microseconds << "us"<< dendl;
EventCenter::TimeEvent event;
clock_type::time_point expire = clock_type::now() + std::chrono::microseconds(microseconds);
event.id = id;
void EventCenter::delete_time_event(uint64_t id)
{
assert(in_thread());
- ldout(cct, 10) << __func__ << " id=" << id << dendl;
+ ldout(cct, 30) << __func__ << " id=" << id << dendl;
if (id >= time_event_next_id || id == 0)
return ;
if (!pollers.empty() || !driver->need_wakeup())
return ;
- ldout(cct, 2) << __func__ << dendl;
+ ldout(cct, 20) << __func__ << dendl;
char buf = 'c';
// wake up "event_wait"
int n = write(notify_send_fd, &buf, sizeof(buf));
{
int processed = 0;
clock_type::time_point now = clock_type::now();
- ldout(cct, 10) << __func__ << " cur time is " << now << dendl;
+ ldout(cct, 30) << __func__ << " cur time is " << now << dendl;
while (!time_events.empty()) {
auto it = time_events.begin();
uint64_t id = e.id;
time_events.erase(it);
event_map.erase(id);
- ldout(cct, 10) << __func__ << " process time event: id=" << id << dendl;
+ ldout(cct, 30) << __func__ << " process time event: id=" << id << dendl;
processed++;
cb->do_request(id);
} else {
shortest = now + std::chrono::microseconds(timeout_microseconds);
if (it != time_events.end() && shortest >= it->first) {
- ldout(cct, 10) << __func__ << " shortest is " << shortest << " it->first is " << it->first << dendl;
+ ldout(cct, 30) << __func__ << " shortest is " << shortest << " it->first is " << it->first << dendl;
shortest = it->first;
trigger_time = true;
if (shortest > now) {
tv.tv_usec = timeout_microseconds % 1000000;
}
- ldout(cct, 10) << __func__ << " wait second " << tv.tv_sec << " usec " << tv.tv_usec << dendl;
+ ldout(cct, 30) << __func__ << " wait second " << tv.tv_sec << " usec " << tv.tv_usec << dendl;
vector<FiredFileEvent> fired_events;
numevents = driver->event_wait(fired_events, &tv);
for (int j = 0; j < numevents; j++) {
}
}
- ldout(cct, 20) << __func__ << " event_wq process is " << fired_events[j].fd << " mask is " << fired_events[j].mask << dendl;
+ ldout(cct, 30) << __func__ << " event_wq process is " << fired_events[j].fd << " mask is " << fired_events[j].mask << dendl;
}
if (trigger_time)
external_lock.unlock();
while (!cur_process.empty()) {
EventCallbackRef e = cur_process.front();
- ldout(cct, 20) << __func__ << " do " << e << dendl;
+ ldout(cct, 30) << __func__ << " do " << e << dendl;
e->do_request(0);
cur_process.pop_front();
numevents++;
if (!in_thread() && wake)
wakeup();
- ldout(cct, 20) << __func__ << " " << e << " pending " << num << dendl;
+ ldout(cct, 30) << __func__ << " " << e << " pending " << num << dendl;
}
struct kevent ke[2];
int i;
- ldout(cct,10) << __func__ << " on kqfd = " << kqfd << dendl;
+ ldout(cct,30) << __func__ << " on kqfd = " << kqfd << dendl;
for(i=0;i<size;i++) {
int num = 0;
if (sav_events[i].mask == 0 )
continue;
- ldout(cct,10) << __func__ << " restore kqfd = " << kqfd
+ ldout(cct,30) << __func__ << " restore kqfd = " << kqfd
<< " fd = " << i << " mask " << sav_events[i].mask << dendl;
if (sav_events[i].mask & EVENT_READABLE)
EV_SET(&ke[num++], i, EVFILT_READ, EV_ADD, 0, 0, NULL);
int oldkqfd = kqfd;
if (!pthread_equal(mythread, pthread_self())) {
- ldout(cct,10) << funcname << " We changed thread from " << mythread
+ ldout(cct,20) << funcname << " We changed thread from " << mythread
<< " to " << pthread_self() << dendl;
mythread = pthread_self();
kqfd = -1;
}
if (kqfd == -1) {
kqfd = kqueue();
- ldout(cct,10) << funcname << " kqueue: new kqfd = " << kqfd
+ ldout(cct,30) << funcname << " kqueue: new kqfd = " << kqfd
<< " (was: " << oldkqfd << ")"
<< dendl;
if (kqfd < 0) {
struct kevent ke[2];
int num = 0;
- ldout(cct,20) << __func__ << " add event kqfd = " << kqfd << " fd = " << fd
+ ldout(cct,30) << __func__ << " add event kqfd = " << kqfd << " fd = " << fd
<< " cur_mask = " << cur_mask << " add_mask = " << add_mask
<< dendl;
int num = 0;
int mask = cur_mask & del_mask;
- ldout(cct,20) << __func__ << " delete event kqfd = " << kqfd
+ ldout(cct,30) << __func__ << " delete event kqfd = " << kqfd
<< " fd = " << fd << " cur_mask = " << cur_mask
<< " del_mask = " << del_mask << dendl;
int KqueueDriver::resize_events(int newsize)
{
- ldout(cct,10) << __func__ << " kqfd = " << kqfd << "newsize = " << newsize
+ ldout(cct,30) << __func__ << " kqfd = " << kqfd << "newsize = " << newsize
<< dendl;
if(newsize > sav_max) {
sav_events = (struct SaveEvent*)realloc( sav_events,
<< dendl;
retval = kevent(kqfd, NULL, 0, res_events, size, &timeout);
} else {
- ldout(cct,20) << __func__ << " event_wait: " << " NULL" << dendl;
+ ldout(cct,30) << __func__ << " event_wait: " << " NULL" << dendl;
retval = kevent(kqfd, NULL, 0, res_events, size, KEVENT_NOWAIT);
}
Worker* NetworkStack::get_worker()
{
- ldout(cct, 10) << __func__ << dendl;
+ ldout(cct, 30) << __func__ << dendl;
// start with some reasonably large number
unsigned min_load = std::numeric_limits<int>::max();
void NetworkStack::drain()
{
- ldout(cct, 10) << __func__ << " started." << dendl;
+ ldout(cct, 30) << __func__ << " started." << dendl;
pthread_t cur = pthread_self();
pool_spin.lock();
C_drain drain(num_workers);
}
pool_spin.unlock();
drain.wait();
- ldout(cct, 10) << __func__ << " end." << dendl;
+ ldout(cct, 30) << __func__ << " end." << dendl;
}