瀏覽代碼

->si_band gets POLL... bitmap stored into a user-visible long field

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Al Viro 8 年之前
父節點
當前提交
5dc533c66b
共有 1 個文件被更改,包括 2 次插入2 次删除
  1. 2 2
      fs/fcntl.c

+ 2 - 2
fs/fcntl.c

@@ -690,7 +690,7 @@ COMPAT_SYSCALL_DEFINE3(fcntl, unsigned int, fd, unsigned int, cmd,
 
 /* Table to convert sigio signal codes into poll band bitmaps */
 
-static const long band_table[NSIGPOLL] = {
+static const __poll_t band_table[NSIGPOLL] = {
 	POLLIN | POLLRDNORM,			/* POLL_IN */
 	POLLOUT | POLLWRNORM | POLLWRBAND,	/* POLL_OUT */
 	POLLIN | POLLRDNORM | POLLMSG,		/* POLL_MSG */
@@ -758,7 +758,7 @@ static void send_sigio_to_task(struct task_struct *p,
 			if (reason - POLL_IN >= NSIGPOLL)
 				si.si_band  = ~0L;
 			else
-				si.si_band = band_table[reason - POLL_IN];
+				si.si_band = (__force long)band_table[reason - POLL_IN];
 			si.si_fd    = fd;
 			if (!do_send_sig_info(signum, &si, p, group))
 				break;