Hi all, After merging the notifications tree, today's linux-next build (x86_64 allmodconfig) failed like this: kernel/watch_queue.c:67:13: error: 'generic_pipe_buf_confirm' undeclared here (not in a function); did you mean 'generic_pipe_buf_release'? 67 | .confirm = generic_pipe_buf_confirm, | ^~~~~~~~~~~~~~~~~~~~~~~~ | generic_pipe_buf_release kernel/watch_queue.c:69:3: error: 'const struct pipe_buf_operations' has no member named 'steal' 69 | .steal = watch_queue_pipe_buf_steal, | ^~~~~ kernel/watch_queue.c:69:12: error: initialization of 'bool (*)(struct pipe_inode_info *, struct pipe_buffer *)' {aka '_Bool (*)(struct pipe_inode_info *, struct pipe_buffer *)'} from incompatible pointer type 'int (*)(struct pipe_inode_info *, struct pipe_buffer *)' [-Werror=incompatible-pointer-types] 69 | .steal = watch_queue_pipe_buf_steal, | ^~~~~~~~~~~~~~~~~~~~~~~~~~ kernel/watch_queue.c:69:12: note: (near initialization for 'watch_queue_pipe_buf_ops.try_steal') Caused by commit c73be61cede5 ("pipe: Add general notification queue support") from the notifications tree interacting with commits 76887c256744 ("fs: make the pipe_buf_operations ->steal operation optional") b8d9e7f2411b ("fs: make the pipe_buf_operations ->confirm operation optional") from the vfs tree. I have applied the following merge fix patch. From: Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx> Date: Mon, 25 May 2020 19:53:40 +1000 Subject: [PATCH] pipe: update for pipe_buf_operations changes Signed-off-by: Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx> --- kernel/watch_queue.c | 8 -------- 1 file changed, 8 deletions(-) diff --git a/kernel/watch_queue.c b/kernel/watch_queue.c index 9a9699c06709..d7a369eab613 100644 --- a/kernel/watch_queue.c +++ b/kernel/watch_queue.c @@ -56,17 +56,9 @@ static void watch_queue_pipe_buf_release(struct pipe_inode_info *pipe, set_bit(bit, wqueue->notes_bitmap); } -static int watch_queue_pipe_buf_steal(struct pipe_inode_info *pipe, - struct pipe_buffer *buf) -{ - return -1; /* No. */ -} - /* New data written to a pipe may be appended to a buffer with this type. */ static const struct pipe_buf_operations watch_queue_pipe_buf_ops = { - .confirm = generic_pipe_buf_confirm, .release = watch_queue_pipe_buf_release, - .steal = watch_queue_pipe_buf_steal, .get = generic_pipe_buf_get, }; -- 2.26.2 -- Cheers, Stephen Rothwell
Attachment:
pgpOVoqtwxnkj.pgp
Description: OpenPGP digital signature