On Thu, Apr 01, 2021 at 05:09:32PM +0800, Xie Yongji wrote: > Use receive_fd() to receive file from another process instead of > combination of get_unused_fd_flags() and fd_install(). This simplifies > the logic and also makes sure we don't miss any security stuff. But no logic is simplified here, and nothing is "missed", so I do not understand this change at all. > > Signed-off-by: Xie Yongji <xieyongji@xxxxxxxxxxxxx> > --- > drivers/android/binder.c | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/drivers/android/binder.c b/drivers/android/binder.c > index c119736ca56a..080bcab7d632 100644 > --- a/drivers/android/binder.c > +++ b/drivers/android/binder.c > @@ -3728,7 +3728,7 @@ static int binder_apply_fd_fixups(struct binder_proc *proc, > int ret = 0; > > list_for_each_entry(fixup, &t->fd_fixups, fixup_entry) { > - int fd = get_unused_fd_flags(O_CLOEXEC); > + int fd = receive_fd(fixup->file, O_CLOEXEC); Why 2 spaces? > > if (fd < 0) { > binder_debug(BINDER_DEBUG_TRANSACTION, > @@ -3741,7 +3741,7 @@ static int binder_apply_fd_fixups(struct binder_proc *proc, > "fd fixup txn %d fd %d\n", > t->debug_id, fd); > trace_binder_transaction_fd_recv(t, fd, fixup->offset); > - fd_install(fd, fixup->file); > + fput(fixup->file); Are you sure this is the same??? I d onot understand the need for this change at all, what is wrong with the existing code here? thanks, greg k-h