Re: epoll_wait returning EFAULT on Linux 3.2.78
От | Greg Stark |
---|---|
Тема | Re: epoll_wait returning EFAULT on Linux 3.2.78 |
Дата | |
Msg-id | CAM-w4HMNG--h739AO61LjWY07qMenJJ-JCmUNmhNs4xBGcNpBg@mail.gmail.com обсуждение исходный текст |
Ответ на | Re: epoll_wait returning EFAULT on Linux 3.2.78 (Tom Lane <tgl@sss.pgh.pa.us>) |
Ответы |
Re: epoll_wait returning EFAULT on Linux 3.2.78
|
Список | pgsql-hackers |
On Thu, Jun 2, 2016 at 3:50 PM, Tom Lane <tgl@sss.pgh.pa.us> wrote: > The man page for epoll_wait suggests that that implies a bad pointer > value for the events array. You're showing > epoll_ret_events = 0x9c0ad4 > which is not obviously bad, but it's also only 4-byte aligned. > I notice that CreateWaitEventSet() is being remarkably cavalier > about alignment requirements; maybe it ought to make some effort > to ensure that epoll_ret_events is maxaligned. That makes a certain amount of sense as This is Debian Sparc64 which as I understand it has the kernel compiled in 64-bit mode but not most of userland. I bet if I compile Postgres in 64-bit mode it'll turn up as an alignment issue in userland before it even reaches the kernel. Or maybe not, maybe it's just that __put_user is stricter about alignment than really necessary. -- greg
В списке pgsql-hackers по дате отправления: