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 по дате отправления: